Nejednakost po vrednosti i tipu u JavaScript-u
Pored operatora != postoji i
operator !== koji uzima u obzir tip prilikom
poređenja. Hajde da pogledamo razlike između
njih na primerima.
Neka se pomoću operatora != porede
dva broja 3. Ovaj operator upoređuje
vrednosti na to da li su NE jednake. Pošto
su naše vrednosti baš jednake, onda
će uslov biti netačan:
if (3 != 3) {
console.log('+++');
} else {
console.log('---'); // ovo će se izvršiti
}
Neka sada jedna od naših vrednosti bude
u navodnicima. U ovom slučaju operator !=
će ih i dalje smatrati jednakim (pošto se podudara
vrednost, a tip nije bitan za ovaj operator)
i opet će uslov biti netačan:
if ('3' != 3) {
console.log('+++');
} else {
console.log('---'); // ovo će se izvršiti
}
Hajde sada da uporedimo dva broja 3
pomoću operatora !==. On će takođe
smatrati da su oni jednaki:
if (3 !== 3) {
console.log('+++');
} else {
console.log('---'); // ovo će se izvršiti
}
A ako sada jednu od trojki stavimo u navodnike,
operator !== će smatrati naše trojke
nejednakim, jer, iako se njihove vrednosti podudaraju,
one imaju različit tip:
if ('3' !== 3) {
console.log('+++'); // ovo će se izvršiti
} else {
console.log('---');
}
Bez pokretanja koda, odredite šta će biti ispisano u konzolu:
let test1 = '3';
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
Bez pokretanja koda, odredite šta će biti ispisano u konzolu:
let test1 = '3';
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
Bez pokretanja koda, odredite šta će biti ispisano u konzolu:
let test1 = 3;
let test2 = '3';
if (test1 != test2) {
console.log('+++');
} else {
console.log('---');
}
Bez pokretanja koda, odredite šta će biti ispisano u konzolu:
let test1 = 3;
let test2 = '3';
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}
Bez pokretanja koda, odredite šta će biti ispisano u konzolu:
let test1 = 3;
let test2 = 2;
if (test1 !== test2) {
console.log('+++');
} else {
console.log('---');
}