我有一个数组,其中一些项将被删除;但某些循环仍在运行,因此我想简单地跳过删除对象的位置。
我知道for(i in array)语法应该可以做到这一点,因为它遍历索引,但是如何删除我的项目呢?因为当我执行array[4] = null时,我的循环就不再管它,并继续尝试使用第4个值。
我还尝试过检查!null,但没有成功...
谢谢。
我知道for(i in array)语法应该可以做到这一点,因为它遍历索引,但是如何删除我的项目呢?因为当我执行array[4] = null时,我的循环就不再管它,并继续尝试使用第4个值。
我还尝试过检查!null,但没有成功...
谢谢。
for in
循环用于枚举对象属性。在迭代数组时,应使用标准的for
循环。更多信息请参见https://dev59.com/qm435IYBdhLWcg3wtCWQ。 - Mattfor(i in array) { if(!isNaN(+i)) ... }
。(贴士:你可能不需要迭代稀疏数组。这只适用于指数巨大、例如5
和10000000
是唯一填充索引的情况。) - apsillers