一次性密碼(OTP)是在電腦或數位裝置中只對一個登入工作階段或交易有效的密碼。現在,網路銀行、網路交易等幾乎所有的服務都使用了OTP。它們通常是4位或6位數字或6位字母數字的組合。 random隨機函數用於產生數學庫中預先定義的隨機OTP。本文將要為大家介紹如何使用JavaScript產生OTP。 (推薦:《javascript教學》)
函數:
random():
這個函數回傳0到1之間的任意隨機數。
floor():
它將任何浮點數的floor傳回整數值。
使用上面的函數選擇字串陣列的隨機索引,其中包含OTP的一個特定數字的所有可能的候選項。
範例1:產生4位元數字OTP:
<script> function generateOTP() { // 声明一个存储所有数字的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位元數字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:產生長度為6的字母數字OTP:
<script> function generateOTP() { //声明一个存储所有字符串的string变量 var string = '0123456789abcdefghijklmnopqrs tuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; let OTP = ''; //求字符串的长度 var len = string.length; for (let i = 0; i < 6; i++ ) { OTP += string[Math.floor(Math.random() * len)]; } return OTP; } document.write("长度为6的OTP: ") document.write( generateOTP() ); </script>
#輸出:
长度为6的OTP: rab0Tj
這篇文章就是關於JavaScript產生一次性密碼(OTP)的具體介紹,希望對需要的朋友有幫助!
以上是JavaScript產生一次性密碼(OTP)的詳細內容。更多資訊請關注PHP中文網其他相關文章!