JavaScript 7 — Eşitlik İşleçleri (== - ===)

Apr 01 2023
Eşitlik işleçleri arasındaki farklar JavaScript'teki == ve === eşitlik işleçleri arasındaki temel farklar aşağıdaki gibidir: Değerleri karşılaştırma: Eşitlik için iki değeri karşılaştırmak üzere, ya == ya da === işlecini kullanabilirsiniz. tip zorlama yapmak isteyip istemediğiniz. İkinci satırda, null === undefined, false değerini döndürür çünkü === operatörü katı bir karşılaştırma gerçekleştirir; bu, işlenenlerin karşılaştırılmadan önce ortak bir türe dönüştürülmediği anlamına gelir.

Eşitlik işleçleri arasındaki farklar

Eşitlik işleçleri ==ile ===JavaScript arasındaki temel farklar aşağıdaki gibidir:

  • ==zorlama türünü gerçekleştirir , yani karşılaştırmadan önce işlenenleri ortak bir türe dönüştürmeye çalışır, oysa zorlama türünü=== gerçekleştirmez .
  • ==zorlama ile değer eşitliğini kontrol ederken, ===hem değer hem de tür eşitliğini kontrol eder.

Değerleri karşılaştırma : Eşitlik için iki değeri karşılaştırmak için, tür zorlaması yapmak isteyip istemediğinize bağlı olarak ==veya operatörünü kullanabilirsiniz .===

const num1 = 10;
const num2 = '10';
console.log(num1 == num2); // Output: true (value equality with coercion)
console.log(num1 === num2); // Output: false (type inequality)

const day = 'Monday';
switch(day) {
  case 'Monday':
    console.log('Today is Monday');
    break;
  case 'Tuesday':
    console.log('Today is Tuesday');
    break;
  default:
    console.log('Today is not Monday or Tuesday');
    break;
}

let x = null;
let y;

console.log(x == null); // Output: true
console.log(y == undefined); // Output: true
console.log(x === null); // Output: true
console.log(y === undefined); // Output: true

console.log(null == undefined); // true
console.log(null === undefined); // false

İkinci satırda, işleç sıkı bir karşılaştırma yaptığı için , işlenenlerin karşılaştırılmadan önce ortak bir türe dönüştürülmediği anlamına null === undefinedgelir . Farklı türleri olduğu için eşit kabul edilmezler.false===nullundefined

Bir değerin var olup olmadığını kontrol etme : Bir değerin var olup olmadığını kontrol ederken, onu kullanmak ve yanlış olup olmadığını görmek veya ==onunla karşılaştırmak isteyebilirsiniz .nullundefined

const myValue = '';
if (myValue == null) {
  console.log('The value is null or undefined');
}

const obj1 = { name: 'John' };
const obj2 = { name: 'John' };
const obj3 = obj1;
console.log(obj1 == obj2); // Output: false
console.log(obj1 === obj2); // Output: false
console.log(obj1 === obj3); // Output: true