以更多功能方式执行以下操作的最佳方法是什么(使用ES6/ES7)
let cols = [];
for (let i =0; i <= 7; i++) {
cols.push(i * i);
}
return cols;
Run Code Online (Sandbox Code Playgroud)
我试过,
return [ ...7 ].map(i => {
return i * i;
});
Run Code Online (Sandbox Code Playgroud)
但那转化为
[].concat(7).map(function (n) {
return n * n;
});
Run Code Online (Sandbox Code Playgroud)
这不是我的预期.
@pavlo.的确,这是一个错误.我正在使用JSX,例如,我想要7个div,(未经测试)
let cols = [];
for (let i =0; i <= 7; i++) {
cols.push(<div id={i}> ... </div>)
}
return cols;
Run Code Online (Sandbox Code Playgroud)
所以这个想法确实是为了减少临时变量和程序感觉的数量.
javascript functional-programming ecmascript-harmony ecmascript-6