Ongelijkheid in waarde en type in JavaScript

Naast de operator != is er ook de operator !==, die rekening houdt met het type bij vergelijking. Laten we de verschillen tussen hen bekijken aan de hand van voorbeelden.

Stel dat met de operator != twee getallen 3 worden vergeleken. Deze operator vergelijkt de waarden op het feit dat ze NIET gelijk zijn. Omdat onze waarden juist wel gelijk zijn, zal de voorwaarde onwaar zijn:

javascriptif (3 != 3) {
  console.log('+++');
} else {
  console.log('---'); // dit wordt uitgevoerd
}

Stel dat nu een van onze waarden tussen aanhalingstekens staat. In dit geval zal de operator != ze nog steeds als gelijk beschouwen (omdat de waarde overeenkomt, en het type niet belangrijk is voor deze operator) en weer zal de voorwaarde onwaar zijn:

javascriptif ('3' != 3) {
  console.log('+++');
} else {
  console.log('---'); // dit wordt uitgevoerd
}

Laten we nu twee getallen 3 vergelijken met de operator !==. Hij zal ze ook als gelijk beschouwen:

javascriptif (3 !== 3) {
  console.log('+++');
} else {
  console.log('---'); // dit wordt uitgevoerd
}

Maar als we nu een van de drieën tussen aanhalingstekens zetten, dan zal de operator !== onze drieën als ongelijk beschouwen, omdat, hoewel hun waarden overeenkomen, ze een verschillend type hebben:

javascriptif ('3' !== 3) {
  console.log('+++'); // dit wordt uitgevoerd
} else {
  console.log('---');
}
Задание 1

Zonder de code uit te voeren, bepaal wat er in de console wordt uitgevoerd:

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

Zonder de code uit te voeren, bepaal wat er in de console wordt uitgevoerd:

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

Zonder de code uit te voeren, bepaal wat er in de console wordt uitgevoerd:

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

Zonder de code uit te voeren, bepaal wat er in de console wordt uitgevoerd:

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

Zonder de code uit te voeren, bepaal wat er in de console wordt uitgevoerd:

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