Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.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_Arrays_Object_Ecmascript 6 - Fatal编程技术网

Javascript 当另一个数组中的某个对象具有某些属性值时,如何从该数组中删除该对象?

Javascript 当另一个数组中的某个对象具有某些属性值时,如何从该数组中删除该对象?,javascript,arrays,object,ecmascript-6,Javascript,Arrays,Object,Ecmascript 6,我需要一个函数来删除数组中的整个对象: let selectedItem = { LinkID: 1 }; let sindecs = [ { estado: { id: 2, siga: "AL", nome: "Alagoas" }, link: [ { LinkID: 1, Link: "link1", Active: false }, { LinkID: 2, Link: "link 2", Active: false } ],

我需要一个函数来删除数组中的整个对象:

let selectedItem = { LinkID: 1 };

let sindecs = [
  {
    estado: { id: 2, siga: "AL", nome: "Alagoas" },
    link: [
      { LinkID: 1, Link: "link1", Active: false },
      { LinkID: 2, Link: "link 2", Active: false }
    ],
    SindecID: 3
  },
  {
    estado: { id: 19, siga: "RJ", nome: "Rio de Janeiro" },
    link: [{ LinkID: 3, Link: "rio", Active: false }],
    SindecID: 4
  }
];
函数removeLinkObj(sindecs,selectedItem){

}

移除InkObj(sindecs,selectedItem)

结果应该是:

let sindecs = [
  {
    estado: { id: 2, siga: "AL", nome: "Alagoas" },
    link: [
    //REMOVED LINE
      { LinkID: 2, Link: "link 2", Active: false }
    ],
    SindecID: 3
  },
  {
    estado: { id: 19, siga: "RJ", nome: "Rio de Janeiro" },
    link: [{ LinkID: 3, Link: "rio", Active: false }],
    SindecID: 4
  }
];

谢谢你,兄弟!我测试了您的代码,我将LinkId更改为LinkId,然后它工作得非常好!非常感谢你!伟大的快乐编码。
let sindecs = [
  {
    estado: { id: 2, siga: "AL", nome: "Alagoas" },
    link: [
    //REMOVED LINE
      { LinkID: 2, Link: "link 2", Active: false }
    ],
    SindecID: 3
  },
  {
    estado: { id: 19, siga: "RJ", nome: "Rio de Janeiro" },
    link: [{ LinkID: 3, Link: "rio", Active: false }],
    SindecID: 4
  }
];
function removeLinkObj(sindecs, selectedItem){

   return sindecs.map((row) => {

        row.link = row.link.filter(item => item.LinkID !== selectedItem.LinkID);
        return row;


   });

}