Untitled

mail@pastecode.io avatar
unknown
plain_text
a year ago
1.2 kB
3
Indexable
Never
/*
  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"));