您好,登錄后才能下訂單哦!
這篇文章主要介紹了JavaScript如何生成一次性密碼,具有一定借鑒價(jià)值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。
一次性密碼(OTP)是在計(jì)算機(jī)或數(shù)字設(shè)備中只對(duì)一個(gè)登錄會(huì)話或事務(wù)有效的密碼?,F(xiàn)在,網(wǎng)上銀行、網(wǎng)上交易等幾乎所有的服務(wù)都使用了OTP。它們通常是4位或6位數(shù)字或6位字母數(shù)字的組合。random隨機(jī)函數(shù)用于生成數(shù)學(xué)庫(kù)中預(yù)定義的隨機(jī)OTP。本文就將給大家介紹如何使用JavaScript生成OTP。(推薦:《javascript教程》)
函數(shù):
random():
這個(gè)函數(shù)返回0到1之間的任意隨機(jī)數(shù)。
floor():
它將任何浮點(diǎn)數(shù)的floor返回為整數(shù)值。
使用上面的函數(shù)選擇字符串?dāng)?shù)組的隨機(jī)索引,其中包含OTP的一個(gè)特定數(shù)字的所有可能的候選項(xiàng)。
示例1:生成4位數(shù)字OTP:
<script> function generateOTP() { // 聲明一個(gè)存儲(chǔ)所有數(shù)字的digits變量 var digits = '0123456789'; let OTP = ''; for (let i = 0; i < 4; i++ ) { OTP += digits[Math.floor(Math.random() * 10)]; } return OTP; } document.write("4位OTP: ") document.write( generateOTP() ); </script>
輸出:
4位OTP: 2229
示例2:生成6位數(shù)字OTP:
<script> function generateOTP() { var digits = '0123456789'; let OTP = ''; for (let i = 0; i < 6; i++ ) { OTP += digits[Math.floor(Math.random() * 10)]; } return OTP; } document.write("6位OTP: ") document.write( generateOTP() ); </script>
輸出:
6位OTP: 216664
示例3:生成長(zhǎng)度為6的字母數(shù)字OTP:
<script> function generateOTP() { //聲明一個(gè)存儲(chǔ)所有字符串的string變量 var string = '0123456789abcdefghijklmnopqrs tuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; let OTP = ''; //求字符串的長(zhǎng)度 var len = string.length; for (let i = 0; i < 6; i++ ) { OTP += string[Math.floor(Math.random() * len)]; } return OTP; } document.write("長(zhǎng)度為6的OTP: ") document.write( generateOTP() ); </script>
輸出:
長(zhǎng)度為6的OTP: rab0Tj
感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享JavaScript如何生成一次性密碼內(nèi)容對(duì)大家有幫助,同時(shí)也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問題就找億速云,詳細(xì)的解決方法等著你來學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。