通过Atom的源代码,我发现了for..of
语句的使用:
for (const {name, duration, x} of results) {
dataByBenchmarkName[name] = dataByBenchmarkName[name] || {points: []}
dataByBenchmarkName[name].points.push({x, y: duration})
}
我正在尝试在终端中复制此迭代,但块永远不会执行(好像我错过了一个括号)。我试过迭代对象(浅,深)和数组。当我拿出大括号时,语句按照记录的方式工作。谁能给我一个带括号的工作实例来学习?简单的事情:
var test = ...;
for(var {x,y,z} of test) {
console.log(x);
};
由于
答案 0 :(得分:6)
大括号仅适用于destructuring assignment。 这对我有用:
var test = [{x:1,y:2,z:4}, {x:5, y:6,z:7}];
for(var {x,y,z} of test)
console.log(x,y,z);
输出:
1 2 4
5 6 7
答案 1 :(得分:2)
这有效
var test = [{x:1,y:3,z:2},{x:5,y:6,z:3}]
for(var {x,y,z} of test) {
console.log(x);
}