如何修改Array.map的最后一次迭代



目前,我有以下地图

Array.map(i => `${i},`)

它返回

element1,element2,element3,

但我需要它来返回

element1,element2,element3

避免使用最后一个逗号。

我如何才能以功能性的方式做到这一点?

使用join():

const test = [ 'element1', 'element2', 'element3' ];
const asString = test.join();
console.log(asString);

注意join()的默认分隔符是逗号(,(
您可以指定其他分隔符作为第一个分隔符,例如:join('-')

解决这个特定问题的更好方法可能是使用join而不是map

然而,要使用map解决此问题,请查看传递给回调的其他参数:

map((element, index, array) => { ... } )

您可以使用index === array.length - 1确定您是否在最后一个元素上

我如何以功能性的方式做到这一点?

console.log(
['a', 'b', 'c', 'd'].reduce((x, y) => `${x},${y}`)
)

您也可以像这样使用.toString().join()

const arr = [ 'element1', 'element2', 'element3' ];
console.log(arr.toString());
console.log(arr.join()); // The same as console.log(arr.join(','));

CCD_ 10方法返回一个包含所有数组值的字符串,用逗号分隔。

join()方法将数组作为字符串返回。元素将由指定的分隔符分隔默认分隔符是逗号(,(

相关内容

最新更新