Heim > Web-Frontend > js-Tutorial > Warum gibt NaN === NaN in JavaScript „False' zurück?

Warum gibt NaN === NaN in JavaScript „False' zurück?

Patricia Arquette
Freigeben: 2025-01-25 16:37:09
Original
332 Leute haben es durchsucht

Why Does NaN === NaN Return False in JavaScript?

JavaScripts eigenartiges Verhalten, bei dem NaN === NaN auf false häufig rätselhafte Entwickler bewertet. Dieser Artikel verdeutlicht, warum dies der Fall ist und bietet korrekte Methoden zur NAN -Erkennung.

Nan

verstehen

nan, kurz für "Not-a-Number", bedeutet das Ergebnis ungültiger oder undefinierter mathematischer Operationen. Beispiele sind:

<code class="language-javascript">console.log(0 / 0);       // NaN
console.log(Math.sqrt(-1)); // NaN</code>
Nach dem Login kopieren

Warum die Ungleichheit?

Der IEEE 754-Standard für den schwebenden Punkt arithmetischen Arithmetik schreibt vor, dass Nan nichts gleich ist, einschließlich sich selbst. Dieses Design verhindert eine fehlerhafte Behandlung ungültiger Ergebnisse, als wären sie gültige numerische Werte. Im Wesentlichen fügt Nan eine Fehlerbedingung zu und ist von Natur aus unvergleichlich.

Zuverlässige NAN -Überprüfungen

direkter Vergleich fällt im Umgang mit NAN fehl. Verwenden Sie stattdessen diese Funktionen:

  • isNaN(): Diese globale Funktion prüft, ob ein Wert NAN ist oder in Nan gezwungen werden kann:
<code class="language-javascript">console.log(isNaN("abc"));    // true</code>
Nach dem Login kopieren
  • Number.isNaN(): Diese Methode bietet eine genauere Überprüfung auf NAN, wobei der Typ -Zwang vermieden wird:
<code class="language-javascript">console.log(Number.isNaN(NaN)); // true</code>
Nach dem Login kopieren

In Zusammenfassung

Die NaN === NaN -Vergleiche ergibt false, weil Nan einen Fehlerzustand darstellt, nicht einen numerischen Wert. Um NAN genau zu erkennen, verwenden Sie isNaN() oder Number.isNaN() für einen robusten und zuverlässigen Code.

Quelle

Das obige ist der detaillierte Inhalt vonWarum gibt NaN === NaN in JavaScript „False' zurück?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage