如何正确传递整个数组(而不是其项目)作为参数? (JavaScript)的

时间:2016-10-26 00:06:02

标签: javascript

我有一组div存储在一个数组中,然后我需要通过该操作对之外的所有迭代值执行操作。我有一个小提琴here,我认为这恰好解释了我的情况。

这是我用来选择除了之外的所有函数(在这种情况下)n

const getRestOfArray = (array, n) => {
    let arrayCopy = array.slice();
    let index = arrayCopy.indexOf(n);
    if (index > -1) {
        arrayCopy.splice(index, 1);
        return arrayCopy;
    }
};

我在这里做了一些根本错误的事吗?感谢。

2 个答案:

答案 0 :(得分:4)

.indexOf()没有必要。 2不是包含字母或DOM元素的数组的元素。您可以使用.splice()作为第一个参数n作为第二个参数调用1来返回预期结果。

const getRestOfArray = (array, n) => {
  let arrayCopy = array.slice();
  arrayCopy.splice(n, 1);
  return arrayCopy;
};

https://jsfiddle.net/a03kjwfy/1/

答案 1 :(得分:1)

如果索引不在数组中,则返回数组副本,如此

const getRestOfArray = (array, n) => {
    let arrayCopy = array.slice();
    let index = arrayCopy.indexOf(n);
    if (index > -1) {
        arrayCopy.splice(index, 1);
    }
    return arrayCopy;
};