問題:
在Google Chrome 中,當使用console.log() 記錄嵌套數組或對象,隨後對數組或對象值的修改會導致控制台輸出顯示更新後的值,而不是記錄時的值。
解決方案:
此行為是由 Google Chrome 的 console.log() 功能中的錯誤引起的。
說明:
Webkit Chrome 使用的底層渲染引擎存在一個已知錯誤,即控制台中記錄的物件和陣列的擴充並不總是能準確表示記錄時物件的狀態。
影響:
這種不一致可能會導致混亂和調試困難,尤其是在依賴控制台檢查中間值時。
重現問題:
要重現問題,請依照下列步驟操作:
將以下腳本加入到網頁:
<code class="js">var greetings=['hi','bye']; console.log(greetings); setTimeout(function(){ greetings.push('goodbye'); },3000);</code>
開啟新視窗中的頁面:
錯誤狀態:
該錯誤已在 Webkit 中修復,但尚未引入 Google Chrome。
以上是console.log() 是否始終顯示 Google Chrome 中陣列和物件的初始值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!