JavaScript / jQuery password generator

This month, October, is a National Cyber Security Awareness Month. The aim is to increase cyber and internet security awareness among surfers. Google and others are joining the move. So I thought I would write a post regarding internet security to add my 2 cents. In this post you will find JavaScript function that generates random passwords of any length as well as jQuery version.

JavaScript Password Generator

function password(length, special) {
 
var iteration = 0;
 
var password = "";
 
var randomNumber;
 
if(special == undefined){
     
var special = false;
 
}
 
while(iteration < length){
    randomNumber
= (Math.floor((Math.random() * 100)) % 94) + 33;
   
if(!special){
     
if ((randomNumber >=33) && (randomNumber <=47)) { continue; }
     
if ((randomNumber >=58) && (randomNumber <=64)) { continue; }
     
if ((randomNumber >=91) && (randomNumber <=96)) { continue; }
     
if ((randomNumber >=123) && (randomNumber <=126)) { continue; }
   
}
    iteration
++;
    password
+= String.fromCharCode(randomNumber);
 
}
 
return password;
}

This function takes two parameters: integer value for password length and optional boolean value true if you want to include special characters in your generated passwords.

Examples of generated passwords

password(8);
// Outputs: Yrc7TxX3

password
(12, true);
//Outputs: C}4_ege!P&#M

jQuery password generator

$.extend({ 
  password
: function (length, special) {
   
var iteration = 0;
   
var password = "";
   
var randomNumber;
   
if(special == undefined){
       
var special = false;
   
}
   
while(iteration < length){
        randomNumber
= (Math.floor((Math.random() * 100)) % 94) + 33;
       
if(!special){
           
if ((randomNumber >=33) && (randomNumber <=47)) { continue; }
           
if ((randomNumber >=58) && (randomNumber <=64)) { continue; }
           
if ((randomNumber >=91) && (randomNumber <=96)) { continue; }
           
if ((randomNumber >=123) && (randomNumber <=126)) { continue; }
       
}
        iteration
++;
        password
+= String.fromCharCode(randomNumber);
   
}
   
return password;
 
}
});

// How to use
$
.password(8);
$
.password(12, true);