generate a secure password in javascript

后端 未结 6 2211
暗喜
暗喜 2021-02-02 02:25

What\'s the quickest way to generate a secure password in javascript?

I want it to contain at least 1 special character, and 2 mixed case. Must be at least 6 characters

6条回答
  •  無奈伤痛
    2021-02-02 03:01

     You could do some thing like below to generate password with following Requirements
        * At least One Special Character
        * At Least on Digit
        * At least on Upper Case
        * At least One Lower Case
    
    
    
    function generatePassword(passwordLength) {
          var numberChars = "0123456789";
          var upperChars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
          var lowerChars = "abcdefghijklmnopqrstuvwxyz";
          var specialChars = "#?!@$%^&*-";
          var allChars = numberChars + upperChars + lowerChars + specialChars;
          var randPasswordArray = Array(passwordLength);
          randPasswordArray[0] = numberChars;
          randPasswordArray[1] = upperChars;
          randPasswordArray[2] = lowerChars;
          randPasswordArray[3] = specialChars;
          randPasswordArray = randPasswordArray.fill(allChars, 4);
          return shuffleArray(randPasswordArray.map(function(x) { return x[Math.floor(Math.random() * x.length)] })).join('');
        }
        
        function shuffleArray(array) {
          for (var i = array.length - 1; i > 0; i--) {
            var j = Math.floor(Math.random() * (i + 1));
            var temp = array[i];
            array[i] = array[j];
            array[j] = temp;
          }
          return array;
        }
        
        //Change length accordingly
        alert(generatePassword(12));
    

提交回复
热议问题