javascript参数传递

时间:2017-04-05 17:24:43

标签: function javascript-events parameter-passing

这是我给出的代码。我环顾四周,我不太明白。

这是我的问题函数驱逐舰接受一个参数一个数组,但当它被调用时,3个参数被发送一个数组和2个整数。

如果没有传递函数,我如何访问函数中的两个整数参数? javascript中有什么东西允许这个吗?

{{1}}

1 个答案:

答案 0 :(得分:1)

您可以在函数中使用arguments变量来获取传递参数的列表。

// ES5
function destroyer(arr) {
    var pieces = Array.prototype.splice.call(arguments, 1);
    var i = 0;

    while (arr[i]) {
        -1 === pieces.indexOf(arr[i]) ? i++ : arr.splice(i, 1);
    }

    return arr;
}

// ES6
function destroyer2(arr, ...pieces) {
    var i = 0;

    while (arr[i]) {
        -1 === pieces.indexOf(arr[i]) ? i++ : arr.splice(i, 1);
    }

    return arr;
}

console.log(JSON.stringify(destroyer([1, 2, 3, 1, 2, 3], 3, 1)));
console.log(JSON.stringify(destroyer2([1, 2, 3, 1, 2, 3], 2, 3)));