簡體   English   中英

為什么要重組我的陣列?

[英]Why is my array restructured?

我有點吃驚了。 我有一個全局變量(我希望能避免它,但我不知道如何),該變量有時會損壞。 我遍歷了我的代碼,除了我希望在哪里和如何使用變量之外,沒有其他地方可以操縱變量。 更奇怪的是,當我在腳本中放置以下行時(該位置似乎無關緊要), console.log(_var); debugger; console.log(_var); debugger; 然后我自己在控制台中輸入_var之后,第一個_var顯示正確的結構,但是第二個_var卻沒有顯示...

這是原始對象的外觀(應該是這樣):

[1: Array[2], 4: Array[2], 5: Array[2], 7: Array[2], 8: Array[2], 9: Array[2], 10: Array[2], 11: Array[2], 12: Array[2], 13: Array[2], 14: Array[2]]

這是斷點之后的對象外觀:

[undefined × 1, Array[2], undefined × 2, Array[2], Array[2], undefined × 1, Array[2], Array[2], Array[2], Array[2], Array[2], Array[2], Array[2], Array[2]]

我似乎無法弄清楚為什么會這樣,但是當我在稍后基於用戶操作調用的函數中遍歷此對象時,這給了我很多問題。

非常感謝你的幫助。

沒問題 您只是看到兩種顯示同一數組的不同方式。 console.log正在使用元素的索引標記元素,並省略了未分配的數組索引,而僅在控制台中輸入_var未分配的索引顯示為undefined × howevermany

對於認為這看起來不像Javascript數組的任何人,很容易在Chrome控制台中重現此行為:

會話示例

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM