将数组传递给函数.slice和.prush在一起



有没有更短的方法:

let arrSlicePush = arr.slice();
arrSlicePush.push(num);
let x = func(arrSlicePush);

提前谢谢。

简单操作:

func([...arr, num]);

值得注意的是,Array.push无论如何都会返回数组的长度,因此第一个示例无关紧要。

您将调用Array.prototype.concat而不是Array.prototype.push

此外,由于concat已经合并了两个数组并返回了一个新数组,因此您甚至不需要对原始数组进行切片。

const arr = [ 0, 1, 2, 3, 4 ];
const num = 5;
const func = (arr) => arr.map(e => String.fromCharCode(e + 65));
const x = func(arr.concat(num));
console.log(x);


注释

[ ...arr, val ]arr.concat(val)的句法糖

这是有效的:

func(animals.slice().concat(num));

最新更新