问题标签 [for-of-loop]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ecmascript-6 - for...of 如何在其他语言中使用,使其与 ECMAScript-6 相关?
我注意到for...of循环被添加到 ECMAScript-6 提案中,但直到现在才听说过它们。他们的典型用例是什么?
javascript - 在 for-of 循环中访问 ES6 数组元素索引
我们可以使用 for-of 循环访问数组元素:
如何修改此代码以访问当前索引?我想使用 for-of 语法来实现这一点,既不是 forEach 也不是 for-in。
javascript - How can a Javascript object become iterable with for...of statement?
I would like to set the options[Symbol.iterator]
property in order to iterate on the simple objects I create with the for...of
statement :
But this code gives me the following error:
How I can set the right iterator function on a simple object as above?
Solved
And I can use the for...of
statement on my object now iterable :
javascript - 用于... of 的 Javascript 在 Safari 中不起作用
目前,我正在尝试构建一个简单的侧导航,只要单击“toggleSidenav”按钮之一(有多个),它就会出现/消失。
在使用 Firefox 和 Chrome 进行测试时,它似乎工作正常,但今天当我尝试使用 Safari(桌面和移动版本)打开我的页面时,按钮没有做任何事情。
问题似乎是我使用的 for-of-loop 但检查for...of 的引用,Safari 应该支持它。
我的代码:
无论如何,我可能需要使用另一种方法,因为 for...of 仅受 IE/Edge 12+ 支持,但我仍然想知道为什么这不起作用。
javascript - 如何在javascript中以相反的顺序迭代Set或Map?
按常规顺序考虑这个简单的例子:
从Set.prototype.values()或Set.prototype.entries()给出的迭代器也是从头到尾的。
以相反顺序迭代 Set(或 Map)的解决方案是什么?
firefox - Mozilla 可能的 let vs var 错误
请考虑以下 JavaScript 代码:
当我在 Google Chrome V55.0 中运行此代码时,它会生成预期的输出
在浏览器控制台中。但是,如果我在 Firefox V50.1.0 中运行相同的代码,我会得到以下控制台输出:
此处的链接(大约在“Block Scope with Let”处下降了三分之一)表明 Chrome 控制台输出是正确的,但我想在两个浏览器中使用相同的代码。如果我在某个地方犯了错误,有人可以指出吗?
ecmascript-6 - 如何仅为 ForOfStatement 关闭 ESLint 的无限制语法规则?
我正在为我的 ES6 程序使用 ESLint,并使用 AirBNB 规则集。出于充分和充分的理由,我for...of
在我的代码中使用了该结构,但 ESLint 反对它,并发出no-restricted-syntax
错误。
http://eslint.org/docs/rules/no-restricted-syntax上的文档解释了我如何在我的.eslint
文件中指定它反对的语法树节点集:例如,如果我不喜欢的只是with
语句, 我可以用:
“无限制语法”:[“警告”,“WithStatement”]
但我不想指定一整套未经批准的结构,我只想说我认为这样的结构是可以的。概念上类似于
ESlint.rules['no-restricted-syntax'].removeEntry('ForOfStatement');
有没有办法在 ESLint 文件中做到这一点?或者,如果失败了,至少有办法让它告诉我它的当前no-restricted-syntax
配置是什么,所以我可以手动从中删除 ForOfStatement 吗?
javascript - 停止生成器时,Break 在 for-of 循环中如何工作?
所以有一些方法可以在循环中停止生成器for of
,但是如何break
向生成器发送信号(与 in 相比return
)for-of
?
请考虑代码。
例如,前面的代码只是将一个值从 1 增加到 10 ,并在两者之间进行暂停和恢复。
它通过使用循环10次for of
:
顺便it.return()
说一句,实现的 clear(it
是主 Object 并获得了控制权,但是break
?);
javascript - 由于 babel for-of 转换插件,符号在 IE 9-11 中未定义
我的代码中有几个for ... of
循环,在 babel 转换它之后,我进入Symbol is undefined
了 IE 浏览器。我试图挖掘它,发现babel-plugin-transform-es2015-for-of
转换为
失败了。我也试过babel-plugin-transform-es2015-typeof-symbol
这似乎是我需要的,但我不确定,我还是这个领域的新手。到目前为止还没有运气。
我也知道babel-polyfill
(检查这个问题)但它很大,我想我会把它作为最后的手段。