/*
tolong validasikan password dengan ketentuan sebagai berikut:
1. panjang password setidaknya 6 karakter,
2. setidaknya 1 digit
3. setidaknya 1 Huruf Besar
4. setidaknya 1 huruf kecil
5. setidaknya 1 sepecial karakter(!@#$%^&*()_-+);
Permasalahan :
seseorang menginputkan password ke form password dengan password random tanpa mengetahui bahwa kata sandi kuat atau bukan.
Tugas :
mencari kekurangan yang diinputkan oleh seseorang agar passwornya kuat (strong). mengembalikan jumlah kekurangan agar password strog
*/
function validationPassword (pass:string) : number {
let result : number = 0;
// check aturan pertama
if (pass.length <= 5) {
result += 6 - pass.length
}
// check aturan kedua
if (!pass.match(/\d{1,}/g)) {
result += 1;
}
// check aturan ketiga
if (!pass.match(/[A-Z]{1,}/g)) {
result += 1;
}
// check aturan keempat
if (!pass.match(/[a-z]{1,}/g)) {
result += 1;
}
// check aturan kelima
if (!pass.match(/\W+/g)) {
result += 1;
}
return result;
}
console.log(validationPassword("!aB"));
console.log(validationPassword("aB2"));
console.log(validationPassword("#@%#SADAsdfsdUi"));
console.log(validationPassword("#@%#SADAsdfsdUi34"));