0Pricing
JavaScript Academy · Lektion

Lose und strikte Gleichheit

Verstehen Sie Vergleiche mit == und ===.

Lose und strikte Gleichheit ist eine kostenlose JavaScript Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des JavaScript Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der JavaScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Zwei Gleichheitsoperatoren

JavaScript verfügt über zwei Gleichheitsoperatoren. Strikte Gleichheit (Dreifachgleichheit) vergleicht ohne Konvertierung. Lose Gleichheit (Doppelgleichheit) konvertiert die Typen vor dem Vergleich.

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

Strikte Gleichheit

Strikte Gleichheit liefert nur dann true, wenn sowohl der Typ als auch der Wert übereinstimmen. Es findet keine Typumwandlung statt.

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

Lose Gleichheit führt Typumwandlung durch

Lose Gleichheit versucht, Operanden vor dem Vergleich in einen gemeinsamen Typ umzuwandeln, was zu überraschenden true-Ergebnissen führen kann.

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

Number und String

Beim Vergleich einer Zahl und einer Zeichenkette mit loser Gleichheit wird die Zeichenkette zuerst in eine Zahl umgewandelt.

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

Boolean-Typumwandlung

Bei loser Gleichheit wird ein Boolean in eine Zahl umgewandelt. Daher wird true vor dem Vergleich zu 1 und false zu 0.

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

null und undefined

Lose Gleichheit behandelt null und undefined als gleich, aber nicht als gleich zu etwas anderem wie 0.

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

Die NaN-Ausnahme

NaN ist unter keinem der beiden Operatoren gleich irgendeinem Wert, auch nicht sich selbst. Verwenden Sie Number.isNaN, um darauf zu prüfen.

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

Objektreferenzen

Objekte werden anhand ihrer Referenz und nicht anhand ihres Inhalts verglichen. Zwei verschiedene Objekte mit identischen Eigenschaften sind niemals gleich.

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

Überraschende Ergebnisse der losen Gleichheit

Lose Gleichheit kann kontraintuitive Ergebnisse liefern. Eine leere Zeichenkette ist gleich 0, und ein leeres Array ist nach der Typumwandlung gleich false.

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

Strikte Gleichheit bevorzugen

Die meisten Styleguides empfehlen, standardmäßig strikte Gleichheit zu verwenden, um schwer erkennbare Fehler durch Typumwandlung zu vermeiden. Verwenden Sie lose Gleichheit nur aus einem bewussten Grund.

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

Auf null oder undefined prüfen

Eine anerkannte Verwendung loser Gleichheit ist die gemeinsame Prüfung auf null oder undefined, da das Muster mit Doppelgleichheit und null beide Fälle abdeckt.

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

Schnelltest

Testen Sie Ihr Wissen über Gleichheit.

Zusammenfassung

Zusammenfassung: Dreifachgleichheit vermeidet Typumwandlung; Doppelgleichheit führt sie durch.

  • Strikte Gleichheit prüft Typ und Wert
  • Lose Gleichheit wandelt zuerst in einen gemeinsamen Typ um
  • null ist nur bei loser Gleichheit gleich undefined
  • Bevorzugen Sie standardmäßig strikte Gleichheit
console.log(1 === 1)
console.log(1 == "1")

Häufig gestellte Fragen

Ist die Lektion „Lose und strikte Gleichheit“ kostenlos?

Ja — der vollständige Text von „Lose und strikte Gleichheit“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des JavaScript Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der JavaScript Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Lose und strikte Gleichheit“?

Verstehen Sie Vergleiche mit == und ===. Du übst JavaScript Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um JavaScript Academy zu starten?

Keine Vorkenntnisse erforderlich. JavaScript Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.

Wie lange dauert die Lektion „Lose und strikte Gleichheit“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser JavaScript Academy-Lektion Code schreiben und ausführen?

Ja. Jede JavaScript Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Truthy- und Falsy-Werte
  2. Lose und strikte Gleichheit
  3. Implizite Typumwandlung bei Operationen
  4. Techniken zur expliziten Umwandlung
← Zurück zu JavaScript Academy