Functiile sunt niste blocuri de cod foarte utile in orice limbaj de programare. Ele au un scop bine definit si se pot refolosi de mai multe ori cu alte date de intrare (alti parametrii).

Sintaxa unei functii in JS este urmatoarea:

function NUME_FUNCTIE(parametru1, parametru2…){
      CORP FUNCTIE
}

NUME_FUNCTIE(val1, val2…)

  • function – este un cuvant cheie in JS (nu se poate modifica)
  • NUME_FUNCTIE – este numele pe care il dam functiei (cat mai explicit)
  • (parametru1, parametru2…) – contine parametrii sau variabilele care sunt folosite doar in interiorul functiei
  • {CORP FUNCTIE} – codul care se executa cand functia este apelata
  • NUME_FUNCTIE(val1, val2…) – apelarea functie (folosirea ei) prin scrierea numelui functiei si adaugarea unor valori

Functia de transformare a gradelor Fahrenheit in Celsius

function toCelsius(g){
alert((5/9) * (g-32));
}

var valoare = prompt(“Adauga valoare in grade F:”)

toCelsius(valoare);

Functia de verificare a parolei

var parola = prompt(“Verifica o parola”);

function testPassword(pass) {
var score = 0;
var message = “”;

//verificam numar caractere
if(pass.length < 6){ score = score + 10; } else if(pass.length > 6 && pass.length < 8){
score = score + 20
}
else{
score = score + 30;
}

//verificam daca exista caractere speciale
if (! /[ !@#$%^&*()_+\-=\[\]{};’:”\\|,.<>\/S?]/.test(pass)) {
score = score + 10;
}
else{
score = score + 20;
}

//verificam daca exista litere mari
if(/[A-Z]/.test(pass)){
score = score + 30;
}
else{
score = score + 10;
}

//pregatim mesajul
switch(score){
case 10: message = “Parola slaba”; break;
case 20: message = “Parola slaba”; break;
case 30: message = “Parola slaba”; break;
case 40: message = “Parola medie”; break;
case 50: message = “Parola medie”; break;
case 60: message = “Parola medie”; break;
case 70: message = “Parola medie”; break;
case 80: message = “Parola sigura”; break;
case 90: message = “Parola sigura”; break;
case 100: message = “Parola sigura”; break;
}
alert(message);
}

testPassword(parola);

Leave a Reply

Your email address will not be published. Required fields are marked *