Sobes.tech
Junior

Каква е разликата между == и === в JavaScript?

sobes.tech AI

Отговор от AI

Операторът == (меки равенства) извършва преобразуване на типовете на операндите преди сравняването.

Операторът === (строги равенства) не извършва преобразуване на типовете. Той сравнява и стойностите и типовете на операндите.

// Примери ==
console.log(5 == '5');   // вярно (низът '5' се преобразува в число 5)
console.log(true == 1);    // вярно (числото 1 се преобразува в true)
console.log(null == undefined); // вярно (специално правило)

// Примери ===
console.log(5 === '5');  // невярно (типът number не е равен на типа string)
console.log(true === 1);   // невярно (типът boolean не е равен на типа number)
console.log(null === undefined); // невярно (типът null не е равен на типа undefined)

Използването на === е за предпочитане в повечето случаи, тъй като е по-предсказуемо и избягва неясно поведение, свързано с преобразуването на типове.