
Password Generator Project using JavaScript
In this project, weβll create a Password Generator using JavaScript Classes and Objects. This program will generate a random password that contains at least one lowercase letter, one uppercase letter, and one special character β fulfilling the basic conditions of a secure password.
βοΈ Project Objective
The main goal of this project is to create a password generator that:
Code:-
class Password {
constructor() {
console.log("Welcome to Password Generator");
}
generatePassword(len) {
if (len < 3) {
return "Password must be at least 3 characters long!";
}
let lowercase = "abcdefghijklmnopqrstuvwxyz";
let uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let numbers = "0123456789";
let special = "!@#$%^&*()";
// Ensure at least one of each required type (lower, upper, special)
let pass = "";
pass += lowercase[Math.floor(Math.random() * lowercase.length)];
pass += uppercase[Math.floor(Math.random() * uppercase.length)];
pass += special[Math.floor(Math.random() * special.length)];
// Fill remaining with all characters
let allChars = lowercase + uppercase + numbers + special;
for (let i = pass.length; i < len; i++) {
pass += allChars[Math.floor(Math.random() * allChars.length)];
}
// Shuffle to avoid predictable order
pass = pass.split("").sort(() => Math.random() - 0.5).join("");
return pass;
}
}
// Example
let p = new Password();
console.log(p.generatePassword(8)); // Example: "aF@9kd2G"Explanation:-
class Password {
constructor() {
console.log("Welcome to Password Generator");
}if (len < 3) {
return "Password must be at least 3 characters long!";
}let lowercase = "abcdefghijklmnopqrstuvwxyz";
let uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
let numbers = "0123456789";
let special = "!@#$%^&*()";pass += lowercase[Math.floor(Math.random() * lowercase.length)];
pass += uppercase[Math.floor(Math.random() * uppercase.length)];
pass += special[Math.floor(Math.random() * special.length)];pass += lowercase[Math.floor(Math.random() * lowercase.length)];
pass += uppercase[Math.floor(Math.random() * uppercase.length)];
pass += special[Math.floor(Math.random() * special.length)];let allChars = lowercase + uppercase + numbers + special;let allChars = lowercase + uppercase + numbers + special;pass = pass.split("").sort(() => Math.random() - 0.5).join("");return pass;Conclusion:-
This project demonstrates how to use JavaScript Classes and Objects to solve a real-world problem β generating strong passwords. Itβs a great exercise in both OOP concepts and string manipulation.
You can enhance it further by: