我遇到了一点麻烦.我有一个全局变量(我希望我能避免它,但我不知道如何)在某些时候会腐蚀.我查看了我的代码,除了我想要的地方和方式之外,其他地方都没有被操纵.为了让事情变得更奇怪,当我在我的脚本中放置以下行(地方似乎无关紧要)console.log(_var); debugger;
然后_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]]
Run Code Online (Sandbox Code Playgroud)
以下是断点后对象的样子:
[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]]
Run Code Online (Sandbox Code Playgroud)
我似乎无法弄清楚为什么会发生这种情况,但是当我在稍后根据用户操作调用的函数中遍历此对象时,这给了我一些问题.
非常感谢你的帮助.
这里没问题.您只是看到两种不同的显示相同阵列的方式.console.log
标记元素及其索引并省略未分配的数组索引,而只需键入_var
控制台即可显示未分配的索引undefined × howevermany
.
对于认为这看起来不像Javascript数组的人来说,在Chrome控制台中重现这种行为很简单:
归档时间: |
|
查看次数: |
57 次 |
最近记录: |