Érték és típus szerinti egyenlőség a JavaScriptben

Tegyük fel, hogy úgy szeretne összehasonlítani, hogy a idézőjelben lévő szám ne legyen egyenlő ugyanazzal a számmal idézőjelek nélkül. Más szavakkal, úgy szeretne összehasonlítani, hogy az összehasonlítás ne csak az érték, hanem az adattípus szerint is történjen.

Ehhez a == operátor helyett a === operátort kell használni. A következő példában a '3' sztring és a 3 szám összehasonlításakor a feltétel hamis lesz, mivel a változók, bár értékük megegyezik, de típusuk nem egyenlő:

javascriptif ('3' === 3) {
  console.log('+++');
} else {
  console.log('---'); // ez fog lefutni
}

Viszont két '3' sztring összehasonlításakor a feltétel igaz lesz:

javascriptif ('3' === '3') {
  console.log('+++'); // ez fog lefutni
} else {
  console.log('---');
}

Ugyanígy számok összehasonlításakor:

javascriptif (3 === 3) {
  console.log('+++'); // ez fog lefutni
} else {
  console.log('---');
}

A == és a === operátorok közötti különbség pontosan akkor jelentkezik, amikor az értékek megegyeznek, de az adattípus más. Minden egyéb esetben ez a két operátor ugyanúgy működik. Például különböző számok összehasonlításakor természetesen a '---' jelenik meg:

javascriptif (2 === 3) {
  console.log('+++');
} else {
  console.log('---'); // ez fog lefutni
}
Задание 1

Kód futtatása nélkül határozza meg, mi jelenik meg a konzolon:

javascriptlet test1 = '3';
let test2 = '3';
    
if (test1 == test2) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 2

Kód futtatása nélkül határozza meg, mi jelenik meg a konzolon:

javascriptlet test1 = '3';
let test2 = '3';
    
if (test1 === test2) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 3

Kód futtatása nélkül határozza meg, mi jelenik meg a konzolon:

javascriptlet test1 = 3;
let test2 = '3';
    
if (test1 == test2) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 4

Kód futtatása nélkül határozza meg, mi jelenik meg a konzolon:

javascriptlet test1 = 3;
let test2 = '3';
    
if (test1 === test2) {
  console.log('+++');
} else {
  console.log('---');
}
Задание 5

Kód futtatása nélkül határozza meg, mi jelenik meg a konzolon:

javascriptlet test1 = 3;
let test2 = 3;
    
if (test1 === test2) {
  console.log('+++');
} else {
  console.log('---');
}