如何在向块添加迭代时进入块



>想象:

const arr = ['a','b','c'];
let num;
const incr = arr.map((el, i) => { 
 num += el; 
}
// num is undefined in incr

如何在函数内部获取num incr以便它可以在每个循环中自行递增?

尝试将num放入incr不会导致适当的增量,因为它将在每次循环中被覆盖。

我应该改用var吗?

您没有初始化num,因此其值为 undefined

const arr = ['a','b','c'];
let num = '';
arr.forEach((el, i) => { 
 num += el; 
});

这会让你'abc' num.

但是,积累值的成语最好通过.reduce

const arr = ['a','b','c'];
const num = arr.reduce((acc, i) => acc + i);

更好的是,你在这里所做的,即加入数组以形成一个字符串,由.join提供:

const arr = ['a','b','c'];
const num = arr.join('');

最新更新