Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/reactjs/21.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_Redux - Fatal编程技术网

Javascript 按索引筛选数组

Javascript 按索引筛选数组,javascript,reactjs,redux,Javascript,Reactjs,Redux,我正在尝试使用索引从数组中删除对象: case DELETE_DRINK: return { drinks: state.drinks.filter((drink, i) => drink[i] != payload) } 但是,数组保持不变,有什么想法吗 这是我的阵列: 假设您在里面有饮料,而不是数组,您可以使用元素本身进行检查。的回调的第一个参数是 数组中正在处理的当前元素 您还可以使用splice按

我正在尝试使用索引从数组中删除对象:

  case DELETE_DRINK:
            return {
                drinks: state.drinks.filter((drink, i) => drink[i] != payload)
            }
但是,数组保持不变,有什么想法吗

这是我的阵列:


假设您在里面有饮料,而不是数组,您可以使用元素本身进行检查。的回调的第一个参数是

数组中正在处理的当前元素


您还可以使用
splice
按索引删除项目:

array.splice(index, 1);  // splices the item at index
编辑:以下方法不会改变原始
数组

var missing = array.slice().splice(index, 1);  // first clones the array, and then splices off the item at index

有工作的例子!你做得太复杂了

什么是“饮料”?
state.drinks.filter((饮料,i)=>drink[i]!=payload)
为什么尝试访问
drink[i]
drink已经是您想要感谢的元素,因此我可以将对象从其位置移除。不过,请注意不要改变状态
state.drinks.filter((drink, i, drinks) => drinks[i] != payload)
case actionTypes.DELETE_NOTE:
  return state.filter(note => note.id !== action.payload.id);
 case actionTypes.ANOTHER_WAY_TO_DELETE:
  return state.map(lane => {
    if (arrayFIRST.id === action.payload.id) { // id from second array
      // THEN DO YOUR STAFF
    }
state.drinks.filter((drink, i, drinks) => drinks[i] != payload)