Fehlerbehandlung für „Konsole“ nicht definiert im Internet Explorer
Bei Verwendung von Firebug werden Anweisungen wie console.log("...") Es kann zu Fehlern kommen, die besagen, dass „Konsole“ nicht definiert ist, insbesondere in Internet Explorer 8 und früheren Versionen. Um dieses Problem zu beheben, wurde versucht, einen Workaround zu implementieren, indem am Anfang der Seite ein Skriptblock hinzugefügt wurde mit:
<script type="text/javascript"> if (!console) console = {log: function() {}}; </script>
Die Fehler blieben jedoch bestehen. Eine effektivere Lösung wird empfohlen:
if (!window.console) console = ...
Dieser Ansatz nutzt die Tatsache, dass auf eine undefinierte Variable nicht direkt zugegriffen werden kann. Umgekehrt existieren alle globalen Variablen als Attribute des globalen Kontexts, im Fall von Browsern Fenster. Daher erzeugt der Zugriff auf ein undefiniertes Attribut wie window.console keinen Fehler.
Eine alternative Methode, um die Verwendung der globalen Variablen „window“ zu vermeiden, ist die Verwendung des Operators „typeof“:
if (typeof console === 'undefined') console = ...
Dieser Ansatz stellt sicher, dass die Konsole undefiniert ist, bevor ihr ein Wert zugewiesen wird, wodurch der Fehler effektiv unterdrückt wird.
Das obige ist der detaillierte Inhalt vonWie vermeide ich den Fehler „Konsole ist undefiniert' im Internet Explorer?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!