Sobes.tech
Junior

Mis vahe on == ja === JavaScriptis?

sobes.tech AI

Vastus AI-lt

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');   // adevărat ('5' șirul este convertit în numărul 5)
console.log(true == 1);    // adevărat (numărul 1 este convertit în true)
console.log(null == undefined); // adevărat (regulă specială)

// Exemple ===
console.log(5 === '5');  // fals (tipul number nu este egal cu tipul string)
console.log(true === 1);   // fals (tipul boolean nu este egal cu tipul number)
console.log(null === undefined); // fals (tipul null nu este egal cu tipul undefined)

Utilizarea lui === este preferabilă în majoritatea cazurilor, deoarece este mai previzibilă și evită comportamentele neclare legate de conversia tipurilor.