有没有更短的方法:
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));