就像在数组解构中一样,我们可以这样做:
let [, b] = [1, 2, 3, 4, 5]
那么为什么不使用foo(, b)
呢?
发布于 2018-10-04 08:02:25
您可以显式地将undefined
作为第一个参数传递,以实现相同的目的:
function foo(item1, item2) {
console.log(item1, item2);
}
foo(undefined, 'b')
此外,如果函数接受数组或对象,则只需传递仅包含您希望其包含的属性的数组或对象:
function foo(arr) {
console.log(arr[0], arr[1]);
}
foo([, 'b']);
function foo({ a, b }) {
console.log(a, b);
}
foo({ b: 'b' });
发布于 2018-10-04 08:04:34
您可以像这样使用arguments
对象:
function foo() {
for (var i = 0; i < arguments.length; i++) {
console.log(arguments[i] + " ");
}
}
foo("a", );
这样,您就可以使用任意数量的参数,并且不需要在函数中定义每个参数,除非需要。
https://stackoverflow.com/questions/52637149
复制相似问题