作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
使用常规的 for 循环,我可以做类似的事情:
for (let i = 0; i < objects.length; i++) {
delete objects[i];
}
常规的 for-of 循环是不可能的
for (let o of objects) {
delete o;
}
那会产生这样的错误
SyntaxError: Deleting local variable in strict mode.
这是预期的,o
是一个副本。那么,有没有办法将o
初始化为引用呢?例如,这是在 C++11 中的实现方式:
for (auto &o : objects) {
// o is a reference to an object from objects
}
最佳答案
你可以用 Array.prototype.forEach
来做到这一点方法,它将数组项连同项的索引提供给迭代器函数。
var arr = [1, 2, 3];
arr.forEach(function(item, index) {
delete arr[index];
});
console.log(arr);
关于for-of 循环中的 Javascript 引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52163894/
我是一名优秀的程序员,十分优秀!