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 տիպին)

===-ի օգտագործումը գերադասելի է մեծ մասում դեպքերի, քանի որ այն ավելի կանխատեսելի է և խուսափում է տիպերի փոխարկման հետ կապված անորոշ վարքագծից։