Inegalitate prin valoare și tip în JavaScript

Pe lângă operatorul != există și operatorul !==, care ține cont de tip la comparare. Să analizăm diferențele dintre ei cu exemple.

Să presupunem că cu operatorul != se compară două numere 3. Acest operator compară valorile pentru a verifica dacă NU sunt egale. Deoarece valorile noastre sunt egale, condiția va fi falsă:

javascriptif (3 != 3) {
  console.log('+++');
} else {
  console.log('---'); // se va executa acesta
}

Să presupunem acum că una dintre valorile noastre este între ghilimele. În acest caz, operatorul != le va considera tot egale (deoarece valorile coincid, iar tipul nu este important pentru acest operator) și din nou condiția va fi falsă:

javascriptif ('3' != 3) {
  console.log('+++');
} else {
  console.log('---'); // se va executa acesta
}

Să comparăm acum cele două numere 3 cu operatorul !==. Acesta le va considera tot egale:

javascriptif (3 !== 3) {
  console.log('+++');
} else {
  console.log('---'); // se va executa acesta
}

Dar dacă acum punem una dintre treimi între ghilimele, atunci operatorul !== le va considera pe cele două treimi inegale, deoarece, deși valorile lor coincid, tipurile lor sunt diferite:

javascriptif ('3' !== 3) {
  console.log('+++'); // se va executa acesta
} else {
  console.log('---');
}
Задание 1

Fără a rula codul, determinați ce se va afișa în consolă:

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

Fără a rula codul, determinați ce se va afișa în consolă:

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

Fără a rula codul, determinați ce se va afișa în consolă:

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

Fără a rula codul, determinați ce se va afișa în consolă:

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

Fără a rula codul, determinați ce se va afișa în consolă:

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