Gelykheid volgens waarde en tipe in JavaScript
Gestel jy wil vergelyk sodat 'n getal in aanhalingstekens nie gelyk is aan dieselfde getal sonder aanhalingstekens nie. Met ander woorde, jy wil vergelyk sodat die vergelyking nie net volgens waarde is nie, maar ook volgens datatipe.
Vir hierdie doel, in plaas van die == operateur,
moet die === operateur gebruik word.
In die volgende voorbeeld, wanneer die string '3' en
die getal 3 vergelyk word, sal die voorwaarde vals wees,
aangesien die veranderlikes, al is hulle gelyk in waarde,
nie gelyk is in tipe nie:
if ('3' === 3) {
console.log('+++');
} else {
console.log('---'); // dit sal uitgevoer word
}
Maar wanneer twee strings '3'
vergelyk word, sal die voorwaarde waar wees:
if ('3' === '3') {
console.log('+++'); // dit sal uitgevoer word
} else {
console.log('---');
}
Net so, en wanneer getalle vergelyk word:
if (3 === 3) {
console.log('+++'); // dit sal uitgevoer word
} else {
console.log('---');
}
Die verskil tussen die == operateur en die
=== operateur kom juis na vore wanneer die
waardes dieselfde is, maar die datatipes verskil.
In alle ander gevalle werk hierdie operateurs
dieselfde. Byvoorbeeld, wanneer verskillende
getalle vergelyk word, sal '---' natuurlik uitgevoer word:
if (2 === 3) {
console.log('+++');
} else {
console.log('---'); // dit sal uitgevoer word
}
Sonder om die kode uit te voer, bepaal wat in die konsole uitgevoer sal word:
let test1 = '3';
let test2 = '3';
if (test1 == test2) {
console.log('+++');
} else {
console.log('---');
}
Sonder om die kode uit te voer, bepaal wat in die konsole uitgevoer sal word:
let test1 = '3';
let test2 = '3';
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}
Sonder om die kode uit te voer, bepaal wat in die konsole uitgevoer sal word:
let test1 = 3;
let test2 = '3';
if (test1 == test2) {
console.log('+++');
} else {
console.log('---');
}
Sonder om die kode uit te voer, bepaal wat in die konsole uitgevoer sal word:
let test1 = 3;
let test2 = '3';
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}
Sonder om die kode uit te voer, bepaal wat in die konsole uitgevoer sal word:
let test1 = 3;
let test2 = 3;
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}