JavaScript ist unzuverlässig undefiniert

JavaScript ist unzuverlässig undefiniert

undefined Wenn wir in JavaScript feststellen möchten, ob ein Wert undefiniert ist, schreiben wir normalerweise:

wenn(a === undefiniert){ //code}

Allerdings ist undefined in JavaScript nicht zuverlässig. Versuchen wir, eine Funktion wie diese zu schreiben:

Funktion test(a) {
  var undefiniert = 1;
  console.log(undefiniert); // => 1
  wenn(a === undefiniert) {
    // ...
  }
}

Wie Sie sehen, lässt sich „undefined“ leicht in „1“ ändern, was unser nachfolgendes Verständnis von „undefined“ mehrdeutig macht. Daher ist es in JavaScript riskant, undefined direkt als „undefined“ zu interpretieren, da der Bezeichner manipuliert werden könnte.

Vor ES5 konnte das globale undefined auch geändert werden. In ES5 ist dieser Bezeichner als schreibgeschützter Bezeichner konzipiert. Wenn Ihr aktueller Browser nicht zu alt ist, können Sie zum Testen die folgende Anweisung in die Konsole eingeben:

undefiniert = 1;
console.log(undefiniert); // => undefiniert

Jetzt können wir deutlich sehen, dass der Bezeichner „undefined“ nicht wirklich „undefined“ widerspiegelt, also müssen wir diese Semantik auf andere Weise erhalten. Glücklicherweise bietet JavaScript auch den Void-Operator, der den angegebenen Ausdruck auswertet und das vertrauenswürdige „undefined“ zurückgibt:

void-Ausdruck

Die häufigste Verwendung besteht darin, „undefiniert“ durch die folgende Operation zu erhalten. Die Operationskosten sind am geringsten, wenn der Ausdruck 0 ist:

ungültig 0;
// oder
ungültig(0);

Alle Stellen, an denen undefined benötigt wird, werden durch void 0 ersetzt.

Natürlich gibt es auch eine andere Möglichkeit, undefined zu erhalten: Wer den jQuery-Quellcode gelesen hat, sollte die darin sofort ausgeführte Funktion kennen:

(Funktion(Fenster,undefiniert) {
    // ...
})(Fenster)

In dieser Funktion haben wir den zweiten Parameter nicht übergeben (der Parametername ist undefiniert), daher wird der Wert des zweiten Parameters als „undefiniert“ betrachtet. Daher werden auf diese Weise alle undefinierten Werte im Rahmen dieser Funktion als undefiniert angesehen.

Oben sind die Details zu JavaScripts unzuverlässiger undefinierter Bedeutung aufgeführt. Weitere Informationen zu JavaScripts unzuverlässiger undefinierter Bedeutung finden Sie in den anderen verwandten Artikeln auf 123WORDPRESS.COM!

Das könnte Sie auch interessieren:
  • 7 Tipps zum Umgang mit undefinierten JavaScript-Werten
  • JavaScript – Undefinierte und Null-Differenz-Beispielanalyse
  • Analyse der Verwendung von Null und Undefiniert in JavaScript
  • Die Essenz von undefined in Javascript
  • Lösung für das Problem, dass der Rückgabewert der Funktion showModalDialog im JS Chrome-Browser nicht definiert ist
  • Eine kurze Analyse von undefined und null im Javascript-Typsystem
  • JavaScript-Typsystem - ein umfassendes Verständnis von undefiniert und null
  • Javascript-Grundlagen_Einfacher Vergleich von undefinierten und Nullwerten
  • JavaScript muss wissen (Teil 2) null und undefined
  • Unterscheiden zwischen undefinierten und Nulltypen in JavaScript

<<:  Ein Beispiel für die Installation von MySQL unter Linux und die Konfiguration des externen Netzwerkzugriffs

>>:  5 einfache Möglichkeiten, Speicherplatz auf Ubuntu freizugeben

Artikel empfehlen

Installieren Sie mysql5.7 unter Ubuntu 18.04

Ubuntu 18.04 installiert MySQL 5.7 zu Ihrer Infor...

So ändern Sie die inländische Quelle von Ubuntu 20.04 apt

UPD 2020.2.26 Derzeit ist Ubuntu 20.04 LTS noch n...

Mehrere gängige Methoden für CSS-Layouts mit gleicher Höhe

Gleichhohes Layout Bezieht sich auf das Layout vo...

Mehrere Möglichkeiten zum Ausblenden von HTML-Elementen

1. CSS verwenden Code kopieren Der Code lautet wie...

Reflexion und Proxy in Front-End-JavaScript

Inhaltsverzeichnis 1. Was ist Reflexion? 2. Refle...

Beispiel zur Erläuterung der Größe einer MySQL-Statistiktabelle

Das Zählen der Größe jeder Tabelle in jeder Daten...

Preistabelle mit CSS3 implementiert

Ergebnis: Implementierungscode html <div id=&q...