如何循环遍历 reactjs 上的对象数组,然后根据条件删除对象

我正在使用reactjs下面的数据,我想遍历数组然后if key === "oneline" or key === "twoline"删除整个对象。

在这个例子中,在移除两个对象(转换)之后,根据上面的描述,它只会返回数组中0和内部的对象。3

const data = [
   {0: {key: "zeroline", door: "zero"}},
   {1: {key: "oneline", door: "one"}},
   {2: {key: "twoline", door: "two"}},
   {3: {key: "threeline", door: "three"}},
]

任何帮助都会非常有帮助。


大话西游666
浏览 230回答 3
3回答

慕勒3428872

使用数组过滤方法。filter() 方法创建一个数组,其中填充了所有通过测试的数组元素。数组过滤器的语法:array.filter(function(currentValue, index, arr), thisValue)const data = [  { 0: { key: "zeroline", door: "zero" } },  { 1: { key: "oneline", door: "one" } },  { 2: { key: "twoline", door: "two" } },  { 3: { key: "threeline", door: "three" } },];let ret = data.filter((x, i) => x[i].key !== "oneline" && x[i].key !== "twoline");console.log(ret);

慕的地6264312

一种方法是:const result = Object.keys(data).reduce((filtered,key,index) => {   //Getting specific object of array   //Example for first: data[0]["0"] === {key: "zeroline",door "zero"}   const object = data[index][key];      //Check if object key is zeroline or twoline   if(object.key === "zeroline" || object.key === "twoline"){     //If it is we push object to array     filtered.push(object)    }   return filtered},[])

慕尼黑的夜晚无繁华

你可以用过滤掉它Array#filter。const keywords = ['twoline', 'oneline'], data = [{0: {key: "zeroline", door: "zero"}},{1: {key: "oneline", door: "one"}},{2: {key: "twoline", door: "two"}},{3: {key: "threeline", door: "three"}}];const res = data.filter((v, i) => keywords.indexOf(v[i].key) === -1);console.log(res);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript