443得票12回答
在for-of循环中如何访问ES6数组元素的索引?

我们可以使用 for-of 循环访问数组元素: for (const j of [1, 2, 3, 4, 5]) { console.log(j); } 如何修改此代码以访问当前索引?我想使用for-of语法实现,而不是forEach或for-in。

72得票4回答
用for...of循环,我应该使用const还是let?

使用 for of 循环时,这两种写法都是允许的并起作用: const numbers = [1,2,3]; // works for(let number of numbers) { console.log(number); } // also works for(const nu...

62得票3回答
我该如何关闭ESLint的no-restricted-syntax规则,只针对ForOfStatement?

我正在使用ESLint检查我的ES6代码,并且使用AirBNB规则集。由于一些充分的理由,我在我的代码中使用了for...of语句,但是ESLint却反对它,发出no-restricted-syntax错误。 在 http://eslint.org/docs/rules/no-restric...

36得票1回答
在JavaScript的for...in和for...of循环中,我能使用continue和break吗?

我能在for...in和for...of类型的循环中使用break和continue吗?还是它们只能在常规的for循环中使用。 例如:myObject = { propA: 'foo', propB: 'bar' }; for (let propName in myObject...

27得票4回答
如何在JavaScript中按相反顺序迭代Set或Map?

我正在寻找一种方式来反向遍历 Set 或 Map。 考虑以下正序的简单示例:var mySet = new Set([1,2,3,4,5]); for(let myNum of mySet) { console.log(myNum); // output: 1, 2, 3, 4, 5 i...

21得票5回答
"HTMLCollectionOf<HTMLCanvasElement>" 类型必须具有"[Symbol.iterator]()"方法,该方法返回一个迭代器。

我正在构建一个数组,使用以下代码:const myCanvas = document.getElementsByTagName('canvas')。它实际上是工作的。它会返回给我类似这样的东西:images: [ 0: canvas, 1: canvas, 2: canvas ] ...

20得票3回答
一个Javascript对象如何变成可迭代的,以便在for...of语句中使用?

我想设置 options[Symbol.iterator] 属性,以便在使用 for...of 语句迭代我创建的简单对象: 我希望能够通过设置 options[Symbol.iterator] 属性来让我创建的简单对象能够被 for...of 语句迭代:options = { male:...

19得票2回答
"'x'不是一个函数或其返回值不可迭代"错误的含义

我无意中目睹了这导致V8(Chrome、Node.js等)出错的原因:for (let val of Symbol()) { /*...*/ } 类型错误:Symbol不是函数或其返回值不可迭代 似乎任何其他不可迭代的值(包括函数)都会导致另一个错误:for (let val of fun...

11得票2回答
使用for..in还是for..of来遍历对象的键?

我的集成开发环境不喜欢我使用for..in循环来迭代对象的键。我会收到一个警告:   可能会迭代意外的(自定义/继承的)成员,可能缺少hasOwnProperty检查 所以我明白它的意思了,那么在这种情况下,使用像for (const key of Object.keys(obj))这...

11得票3回答
使用 for...of 循环删除数组项

我正在尝试编辑一个数组并删除不符合特定条件的元素。如果我使用reverse for循环结合.splice(index, n),代码就可以正常工作。我卡在用ES6的for...of循环实现同样的功能上。let array=[1,2,3]; //reverse for loop for(var i...