Ulikhet i verdi og type i JavaScript
I tillegg til operatoren != finnes det også
operatoren !==, som tar hensyn til type ved
sammenligning. La oss se på forskjellene mellom
dem med eksempler.
La to tall 3 sammenlignes med operatoren
!=. Denne operatoren sammenligner
verdiene for å se om de IKKE er like. Siden
våre verdier faktisk er like, vil
betingelsen være usann:
if (3 != 3) {
console.log('+++');
} else {
console.log('---'); // dette vil kjøre
}
La nå en av verdiene våre være
i anførselstegn. I dette tilfellet vil operatoren !=
likevel anse dem som like (siden verdien samsvarer,
og typen ikke er viktig for denne operatoren)
og betingelsen vil igjen være usann:
if ('3' != 3) {
console.log('+++');
} else {
console.log('---'); // dette vil kjøre
}
La oss nå sammenligne to tall 3
med operatoren !==. Den vil
også anse dem som like:
if (3 !== 3) {
console.log('+++');
} else {
console.log('---'); // dette vil kjøre
}
Men hvis vi nå tar en av treerne i anførselstegn,
vil operatoren !== anse våre treere som
ulike, fordi selv om verdiene deres samsvarer,
har de ulik type:
if ('3' !== 3) {
console.log('+++'); // dette vil kjøre
} else {
console.log('---');
}
Uten å kjøre koden, bestem hva som vil skrives ut i konsollen:
let test1 = '3';
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, bestem hva som vil skrives ut i konsollen:
let test1 = '3';
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, bestem hva som vil skrives ut i konsollen:
let test1 = 3;
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, bestem hva som vil skrives ut i konsollen:
let test1 = 3;
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
Uten å kjøre koden, bestem hva som vil skrives ut i konsollen:
let test1 = 3;
let test2 = 2;
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}