我需要删除arguments
对象中的第一项,以便我的let args
变量等于以下所有参数。
我该怎么办?
function destroyer(arr) {
let myArr = arguments[0];
let args = arguments;
}
destroyer([1, 2, 3, 1, 2, 3], 2, 3);
答案 0 :(得分:2)
使用slice
检索第一个参数之后的参数,并在函数参数中使用rest参数代替单个arr
(如果可以的话)-许多短毛绒建议不要使用arguments
,并且在这里不需要使用该关键字:
function destroyer(...args) {
const otherArgs = args.slice(1);
console.log('length: ' + otherArgs.length, 'items: ' + otherArgs);
}
destroyer([1, 2, 3, 1, 2, 3], 2, 3);
如果您还想引用第一个参数,请在将第一个arr
收集到变量后,在 之后使用rest参数:
function destroyer(arr, ...otherArgs) {
console.log('arr: ' + arr);
console.log('length: ' + otherArgs.length, 'items: ' + otherArgs);
}
destroyer([1, 2, 3, 1, 2, 3], 2, 3);
答案 1 :(得分:0)
最简单的方法:
function destroyer(...arr) {
arr.shift();
console.log( arr ); // 2,3
}
destroyer([1, 2, 3, 1, 2, 3], 2, 3);