0Pricing
JavaScript Academy · Ders

Gevşek ve Katı Eşitlik

== ve === karşılaştırmaları arasındaki farkları anlayın.

Gevşek ve Katı Eşitlik, CoddyKit'te ücretsiz bir JavaScript Academy dersidir. Bu, 4 dersinin 2. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, JavaScript Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. JavaScript Academy kursu toplamda 4 dersten oluşur.

İki Eşitlik İşleci

JavaScript'te iki eşitlik işleci vardır. Katı eşitlik (üç eşittir işareti), dönüştürme yapmadan karşılaştırır. Gevşek eşitlik (iki eşittir işareti), karşılaştırmadan önce türleri dönüştürür.

console.log(1 === 1)
console.log(1 == "1")

Katı Eşitlik

Katı eşitlik, yalnızca hem tür hem de değer eşleştiğinde doğru sonucunu döndürür. Tür zorlaması gerçekleşmez.

console.log(5 === 5)
console.log(5 === "5")
console.log(true === 1)

Gevşek Eşitlik Dönüştürme Yapar

Gevşek eşitlik, karşılaştırmadan önce işlenenleri ortak bir türe dönüştürmeye çalışır; bu da şaşırtıcı doğru sonuçlar üretebilir.

console.log(5 == "5")
console.log(true == 1)
console.log(0 == false)

Sayı ve Dize

Bir sayı ile bir dize gevşek eşitlikle karşılaştırıldığında, dize önce sayıya dönüştürülür.

console.log("10" == 10)
console.log("10" === 10)

Mantıksal Değer Dönüşümü

Gevşek eşitlikte mantıksal değer sayıya dönüştürülür; bu nedenle karşılaştırmadan önce doğru 1'e, yanlış ise 0'a dönüşür.

console.log(true == 1)
console.log(false == 0)
console.log(true == 2)

Boş ve Tanımsız Değerler

Gevşek eşitlik, boş ve tanımsız değerleri birbirine eşit kabul eder; ancak bunları sıfır gibi başka hiçbir şeye eşit kabul etmez.

console.log(null == undefined)
console.log(null === undefined)
console.log(null == 0)

NaN İstisnası

NaN, kendisi de dahil olmak üzere hiçbir şeye eşit değildir; bu durum her iki işleç için de geçerlidir. Bunu sınamak için Number.isNaN kullanın.

console.log(NaN === NaN)
console.log(NaN == NaN)
console.log(Number.isNaN(NaN))

Nesne Başvuruları

Nesneler içeriklerine göre değil, başvurularına göre karşılaştırılır. Özellikleri aynı olan iki farklı nesne hiçbir zaman eşit değildir.

const a = { x: 1 }
const b = { x: 1 }
console.log(a === b)
console.log(a === a)

Şaşırtıcı Gevşek Eşitlik Sonuçları

Gevşek eşitlik sezgiye aykırı sonuçlar üretebilir. Boş bir dize sıfıra, boş bir dizi ise dönüştürme sonrasında yanlışa eşit olur.

console.log("" == 0)
console.log([] == false)
console.log("0" == false)

Katı Eşitliği Tercih Edin

Çoğu biçim kılavuzu, gizli tür dönüştürme hatalarını önlemek için varsayılan olarak katı eşitlik kullanılmasını önerir. Gevşek eşitliği yalnızca bilinçli bir nedeniniz olduğunda kullanın.

const value = "42"
if (value === "42") {
  console.log("matched as string")
}

Boş veya Tanımsız Değeri Denetleme

Gevşek eşitliğin kabul edilen kullanımlarından biri, boş veya tanımsız değeri birlikte denetlemektir; çünkü iki eşittirli boş değer kalıbı her ikisini de kapsar.

function check(v) {
  if (v == null) {
    return "missing"
  }
  return "present"
}
console.log(check(undefined))
console.log(check(0))

Hızlı Kontrol

Eşitlikle ilgili bilginizi sınayın.

Özet

Özet: Üç eşittir işareti tür zorlamasını önler; iki eşittir işareti ise uygular.

  • Katı eşitlik türü ve değeri denetler
  • Gevşek eşitlik önce ortak bir türe dönüştürür
  • Boş değer yalnızca gevşek biçimde tanımsız değere eşittir
  • Varsayılan olarak katı eşitliği tercih edin
console.log(1 === 1)
console.log(1 == "1")

Sıkça Sorulan Sorular

“Gevşek ve Katı Eşitlik” dersi ücretsiz mi?

Evet — “Gevşek ve Katı Eşitlik” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve JavaScript Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. JavaScript Academy kursu toplamda 4 dersten oluşur.

“Gevşek ve Katı Eşitlik” dersinde ne öğreneceğim?

== ve === karşılaştırmaları arasındaki farkları anlayın. JavaScript Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

JavaScript Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te JavaScript Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 2. dersidir.

“Gevşek ve Katı Eşitlik” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu JavaScript Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her JavaScript Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Doğru ve Yanlış Kabul Edilen Değerler
  2. Gevşek ve Katı Eşitlik
  3. İşlemlerde Örtük Tür Dönüşümü
  4. Açık Tür Dönüştürme Teknikleri
← JavaScript Academy Sayfasına Dön