Érték és típus szerinti egyenlőtlenség a JavaScriptben
A != operátor mellett létezik még a
!== operátor is, amely figyelembe veszi a típust az
összehasonlításnál. Nézzük meg a köztük lévő különbségeket
példákon keresztül.
Tegyük fel, hogy a != operátorral két
3 számot hasonlítunk össze.
Ez az operátor azt vizsgálja, hogy az értékek NEM egyenlőek-e.
Mivel az értékeink éppen egyenlőek, ezért a
feltétel hamis lesz:
if (3 != 3) {
console.log('+++');
} else {
console.log('---'); // ez fog lefutni
}
Tegyük fel, hogy most az egyik értékünk
idézőjelben van. Ebben az esetben a != operátor
attól még egyenlőnek fogja tekinteni őket (mivel az érték
megegyezik, a típus pedig nem fontos ennél az operátornál)
és ismét a feltétel hamis lesz:
if ('3' != 3) {
console.log('+++');
} else {
console.log('---'); // ez fog lefutni
}
Hasonlítsunk most össze két 3 számot
a !== operátorral. Ez is
egyenlőnek fogja tekinteni őket:
if (3 !== 3) {
console.log('+++');
} else {
console.log('---'); // ez fog lefutni
}
Viszont ha most az egyik hármast idézőjelbe tesszük,
akkor a !== operátor a hármasainkat
egyenlőtlennek fogja tekinteni, mivel bár az értékük megegyezik,
de a típusuk különböző:
if ('3' !== 3) {
console.log('+++'); // ez fog lefutni
} else {
console.log('---');
}
Kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:
let test1 = '3';
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
Kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:
let test1 = '3';
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
Kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:
let test1 = 3;
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
Kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:
let test1 = 3;
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
Kód futtatása nélkül határozd meg, mi jelenik meg a konzolon:
let test1 = 3;
let test2 = 2;
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}