Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/443.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 按其位置删除数组元素_Javascript_Reactjs - Fatal编程技术网

Javascript 按其位置删除数组元素

Javascript 按其位置删除数组元素,javascript,reactjs,Javascript,Reactjs,如果知道索引,如何删除数组项 deleteItem = (index) => { setItems(prevState => prevState.filter((item) => item.index !== index)); } item.index不存在。谢谢大家! 还有。。这条路比你的车快吗 deleteItem = (index) => { setItems((prevState) => prevState.splice(index - 1

如果知道索引,如何删除数组项

deleteItem = (index) => {
    setItems(prevState => prevState.filter((item) => item.index !== index));
}
item.index不存在。谢谢大家!

还有。。这条路比你的车快吗

deleteItem = (index) => {
    setItems((prevState) => prevState.splice(index - 1, 1));
}

filter
函数可以采用第二个参数,即元素索引

deleteItem = (index) => {
    setItems(prevState => prevState.filter((item, i) => (i !== index)));
}

过滤器接受额外参数,因此将过滤器回调更改为
.filter((item,idx)=>idx!==index)
这里介绍了几乎所有可能的方法:这是首选方法还是prevState.splice(index-1,1)?如果仅依赖于索引,则是更好。检查这个