第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

密碼生成器問題

密碼生成器問題

富國滬深 2022-10-21 10:22:19
我的作業(yè)代碼應(yīng)該提示用戶輸入密碼長度和字符類型。出現(xiàn)提示時,我希望用戶最多可以輸入 3 個答案(即“大寫、小寫、特殊”),但是當(dāng)我運行它時,它只接受一個答案。這是我的代碼,請幫助:var length = Number(prompt("Enter a password length between 8 and 128")),  charType = prompt("Enter up to 3 character types: special, numeric, uppercase, lowercase."),  password = generatePassword();document.getElementById("display").value = password;document.getElementById('copy-btn').addEventListener('click', copyPassword);function generatePassword() {  var charSets = {    lowercase: 'abcdefghijklmnopqrstuvwxyz',    uppercase: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',    numeric: '0123456789',    special: ' !"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'  };  var charSet = charSets[charType.toLowerCase()] || charSets.lowercase;  var retVal = "";  for (var i = 0; i < length; i++) {    retVal += charSet.charAt(Math.floor(Math.random() * charSet.length));  }  return retVal;}function copyPassword() {  document.getElementById("display").select();  document.execCommand("Copy");  alert("Password copied to clipboard!");}
查看完整描述

1 回答

?
慕妹3242003

TA貢獻1824條經(jīng)驗 獲得超6個贊

您可以將輸入拆分為逗號和多個空格或僅多個空格(使用Phil建議的正則表達(dá)式)并遍歷每個部分,將所有指定的字符集連接在一起。

var length = Number(prompt("Enter a password length between 8 and 128")),

  charType = prompt("Enter up to 3 character types: special, numeric, uppercase, lowercase."),


  password = generatePassword();

document.getElementById("display").value = password;

document.getElementById('copy-btn').addEventListener('click', copyPassword);


function generatePassword() {

  var charSets = {

    lowercase: 'abcdefghijklmnopqrstuvwxyz',

    uppercase: 'ABCDEFGHIJKLMNOPQRSTUVWXYZ',

    numeric: '0123456789',

    special: ' !"#$%&\'()*+,-./:;<=>?@[\\]^_`{|}~'

  };

  var charSet = charType? 

    charType.split(/,\s*|\s+/).reduce((acc,curr)=>acc + charSets[curr.trim().toLowerCase()],"") 

    : charSets.lowercase;

  var retVal = "";

  for (var i = 0; i < length; i++) {

    retVal += charSet.charAt(Math.floor(Math.random() * charSet.length));

  }

  return retVal;

}


function copyPassword() {

  document.getElementById("display").select();

  document.execCommand("Copy");

  alert("Password copied to clipboard!");

}

<textarea id="display"></textarea>

<button id="copy-btn">Copy<button>


查看完整回答
反對 回復(fù) 2022-10-21
  • 1 回答
  • 0 關(guān)注
  • 105 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號