删除对象,使其不会在 for 循环中迭代 [重复]

Posted

技术标签:

【中文标题】删除对象,使其不会在 for 循环中迭代 [重复]【英文标题】:Remove object so it doesn't iterate in a for loop [duplicate] 【发布时间】:2013-08-13 07:53:44 【问题描述】:

我的数据基本设置如下:

myObj = ;
myObj[3] = ;
myObj[3].stuff = 'hello';
myObj[4] = ;
myObj[4].stuff = 'hello';

现在我想从 myObj 中删除 [4]。目前我将其设置为 false 但这仍然存在于 myObj 中。喜欢这个Object 4: false

这里的问题是如果我想循环 myObj 它仍然会循环我不希望它做的 4。

如何正确设置我的数据,以便我可以删除给定对象,从而不会在 for 循环中进行迭代。

我的循环示例是:

var i = 0;
for(var j in myObj)
  i++;

console.log(i); // = 2

有没有办法去掉[4]所以总数只有1?

【问题讨论】:

还有这个:: ***.com/questions/6295087/remove-item-from-object @alfasin 这不是关于数组,但 sudhir 是对的,我的错 :( 【参考方案1】:

使用删除操作符:

delete myObj[4];

【讨论】:

啊,谢谢!这就是我要找的! 是的,我会的。有 3 分钟的等待,直到我可以勾选它:)

以上是关于删除对象,使其不会在 for 循环中迭代 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

循环 256*256*256 颜色,这样颜色会逐渐变化,并且类似的阴影不会在以后的循环迭代中重复?

for循环的本质

如何在 JavaScript 中迭代数组并删除元素 [重复]

迭代Java时从数组中删除对象

迭代器和for循环工作机制

用 for i in 来迭代遍历去除列表中的重复的数据