如何正确地将整个数组(而不是其项)作为参数传递?(Javascript)
我有一组div,存储在一个数组中,然后需要遍历这些div并对除当前迭代值之外的所有对象执行操作。我有一把小提琴,我想它能很好地解释我的处境 下面是我用来选择除(本例中)如何正确地将整个数组(而不是其项)作为参数传递?(Javascript),javascript,Javascript,我有一组div,存储在一个数组中,然后需要遍历这些div并对除当前迭代值之外的所有对象执行操作。我有一把小提琴,我想它能很好地解释我的处境 下面是我用来选择除(本例中)n值以外的所有内容的函数 const getRestOfArray = (array, n) => { let arrayCopy = array.slice(); let index = arrayCopy.indexOf(n); if (index > -1) { array
n
值以外的所有内容的函数
const getRestOfArray = (array, n) => {
let arrayCopy = array.slice();
let index = arrayCopy.indexOf(n);
if (index > -1) {
arrayCopy.splice(index, 1);
return arrayCopy;
}
};
我在这里犯了什么根本性的错误吗?谢谢。如果索引不在数组中,只需返回数组副本,如下所示
const getRestOfArray = (array, n) => {
let arrayCopy = array.slice();
let index = arrayCopy.indexOf(n);
if (index > -1) {
arrayCopy.splice(index, 1);
}
return arrayCopy;
};
.indexOf()
不是必需的2
不是包含字母的数组或DOM
元素的元素。您可以调用.splice()
,第一个参数为n
,第二个参数为1
,以返回预期结果
const getRestOfArray = (array, n) => {
let arrayCopy = array.slice();
arrayCopy.splice(n, 1);
return arrayCopy;
};
有什么问题吗?如果找到n,则函数返回新数组,如果未找到,则返回未定义数组-这是您所期望的吗?我已在fiddle中对期望的结果进行了注释。我需要它不要为一个div数组返回undefined。然后返回一些东西-取决于您返回的内容,因为我甚至没有讨论您的问题,因为您的问题应该在上面定义和描述。所以,不是一些外部站点如果找不到传入的值,那么所需的返回值是什么?无论所需的返回值是什么,只要在
if
语句不匹配时返回该值即可。我不明白你在寻求什么帮助。唯一有.indexOf(2)
的时间是在你的数字数组中。@Shanling你也可以使用.slice()
,.concat()
const getRestOfArray=(array,n)=>array.slice(0,n)。concat(array.slice(n+1,array.length))
perfect,效果很好。非常感谢。我知道我做错了什么。。我想我误解了indexOf()的工作原理。再次感谢:-)