Sobes.tech
Junior

Aký je rozdiel medzi == a === v JavaScript?

sobes.tech AI

Odpoveď od AI

Operátor == (labá rovnosť) vykonáva konverziu typov operandov pred porovnaním.

Operátor === (prísna rovnosť) nevykonáva konverziu typov. Porovnáva a hodnoty a typy operandov.

// Príklady ==
console.log(5 == '5');   // true (reťazec '5' sa konvertuje na číslo 5)
console.log(true == 1);    // true (číslo 1 sa konvertuje na true)
console.log(null == undefined); // true (špeciálne pravidlo)

// Príklady ===
console.log(5 === '5');  // false (typ number nie je rovnaký ako typ string)
console.log(true === 1);   // false (typ boolean nie je rovnaký ako typ number)
console.log(null === undefined); // false (typ null nie je rovnaký ako typ undefined)

Použitie === je v väčšine prípadov odporúčané, pretože je predvídateľnejšie a vyhýba sa nejasnému správaniu spojenému s konverziou typov.