Likhet i verdi og type i JavaScript
La oss si at du ønsker å sammenligne på en slik måte at et tall i anførselstegn ikke skal være likt det samme tallet uten anførselstegn. Med andre ord, du ønsker å sammenligne slik at sammenligningen ikke bare er basert på verdi, men også på datatype.
For å gjøre dette, i stedet for operatoren ==, bør
du bruke operatoren ===. I det følgende
eksempelet vil betingelsen være usann når du sammenligner strengen '3' og
tallet 3,
siden variablene, selv om de er like i verdi,
ikke er like i type:
if ('3' === 3) {
console.log('+++');
} else {
console.log('---'); // dette vil kjøre
}
Men ved sammenligning av to strenger '3'
vill betingelsen være sann:
if ('3' === '3') {
console.log('+++'); // dette vil kjøre
} else {
console.log('---');
}
Samme gjelder ved sammenligning av tall:
if (3 === 3) {
console.log('+++'); // dette vil kjøre
} else {
console.log('---');
}
Forskjellen mellom operatoren == og operatoren
=== vises nøyaktig når
verdiene er de samme, men datatypen er forskjellig.
I alle andre tilfeller fungerer disse operatorene
på samme måte. For eksempel, ved sammenligning av forskjellige
tall, vil det selvfølgelig bli vist '---':
if (2 === 3) {
console.log('+++');
} else {
console.log('---'); // dette vil kjøre
}
Uten å kjøre koden, avgjør hva som vil bli vist i konsollen:
let test1 = '3';
let test2 = '3';
if (test1 == test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, avgjør hva som vil bli vist i konsollen:
let test1 = '3';
let test2 = '3';
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, avgjør hva som vil bli vist i konsollen:
let test1 = 3;
let test2 = '3';
if (test1 == test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, avgjør hva som vil bli vist i konsollen:
let test1 = 3;
let test2 = '3';
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, avgjør hva som vil bli vist i konsollen:
let test1 = 3;
let test2 = 3;
if (test1 === test2) {
console.log('+++');
} else {
console.log('---');
}