2

有没有办法获取arguments对象的子集?例如,只选择第一个参数之后的参数(“尾巴”)?

在 Python 中可以这样完成:

def tail(*xs):     # * means a tuple of parameters of variable size   
    return xs[1:]  # return from index 1, to the end of the list

tail(1, 2, 3, 4)   # returns (2, 3, 4)

有没有办法在 JavaScript 中做类似的事情?

4

1 回答 1

1

通常,该arguments变量使用Array.prototype.slice.call(arguments). 由于您已经在调用该slice方法,因此您可以简单地将缺少的参数添加到该函数以切断伪数组的末尾:

function tail() {
    return Array.prototype.slice.call(arguments, 1);
}

tail(1, 2, 3, 4); // returns [2, 3, 4]
于 2013-10-16T15:42:20.503 回答