Problem:
In Google Chrome, wenn a Wenn ein verschachteltes Array oder Objekt mit console.log() protokolliert wird, führt die anschließende Änderung der Array- oder Objektwerte dazu, dass in der Konsolenausgabe die aktualisierten Werte und nicht die Werte zum Zeitpunkt der Protokollierung angezeigt werden.
Lösung:
Dieses Verhalten wird durch einen Fehler in der console.log()-Funktionalität von Google Chrome verursacht.
Erklärung:
Webkit , die von Chrome verwendete zugrunde liegende Rendering-Engine, weist einen bekannten Fehler auf, bei dem die Erweiterung protokollierter Objekte und Arrays in der Konsole nicht immer eine genaue Darstellung des Objektstatus zum Zeitpunkt der Protokollierung liefert.
Auswirkung:
Diese Inkonsistenz kann zu Verwirrung und Debugging-Schwierigkeiten führen, insbesondere wenn man sich bei der Überprüfung von Zwischenwerten auf die Konsole verlässt.
Reproduzieren des Problems:
Um das Problem zu reproduzieren, führen Sie die folgenden Schritte aus:
Fügen Sie das folgende Skript zu einer Webseite hinzu:
<code class="js">var greetings=['hi','bye']; console.log(greetings); setTimeout(function(){ greetings.push('goodbye'); },3000);</code>
Öffnen die Seite in einem neuen Fenster:
Fehlerstatus:
Der Fehler wurde in Webkit behoben, aber noch nicht in Google Chrome übernommen.
Das obige ist der detaillierte Inhalt vonZeigt console.log() immer die Anfangswerte von Arrays und Objekten in Google Chrome an?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!