循环的Javascript(ECMAScript 6)

Dan*_*hin 2 javascript ecmascript-6

所以新的ECMAScript 6引入了for .. of循环语法.

不幸的是,没有很多文件可以解释这是什么.与它如何与使用Array.prototype.forEachfor .. in循环不同.

这只是另一种必要的执行方式Array.prototype.forEach吗?

我已经在这里阅读过Mozilla的文档.但这个想法对我来说太模糊了.

有人关心向这个半智人解释一下吗?

Tao*_*oPR 7

快速提示

for..of 采取这个元素.

var a = ['a','b','c'];

for (let elem of a){
    console.log(elem);
}
// output: 
// 'a'
// 'b'
// 'c'
Run Code Online (Sandbox Code Playgroud)

for..in 拿索引.

var a = ['a','b','c'];

for (let i in a){
    console.log(i);
}
// output:
// 0
// 1
// 2
Run Code Online (Sandbox Code Playgroud)

.forEach 采用元素和索引(可选).

var a = ['a','b','c'];

a.forEach(function(elem,i){
    console.log(i + ': ' + elem);
});
// output:
// 0: 'a'
// 1: 'b'
// 2: 'c'
Run Code Online (Sandbox Code Playgroud)