Junior
Care este diferența dintre == și === în JavaScript?
sobes.tech AI
Răspuns de la AI
Operatorul == (egalitate laxă) efectuează conversia tipurilor operandilor înainte de comparație.
Operatorul === (egalitate strictă) nu efectuează conversia tipurilor. Compară atât valorile cât și tipurile operandilor.
// Exemple ==
console.log(5 == '5'); // true (șirul '5' este convertit în numărul 5)
console.log(true == 1); // true (numărul 1 este convertit în true)
console.log(null == undefined); // true (regulă specială)
// Exemple ===
console.log(5 === '5'); // false (tipul number nu este egal cu tipul string)
console.log(true === 1); // false (tipul boolean nu este egal cu tipul number)
console.log(null === undefined); // false (tipul null nu este egal cu tipul undefined)
Utilizarea === este preferabilă în majoritatea cazurilor, deoarece este mai previzibilă și evită comportamentele neclare legate de conversia tipurilor.