remove objects from array by object property

前端 未结 13 2929
抹茶落季
抹茶落季 2020-11-22 17:40
var listToDelete = [\'abc\', \'efg\'];

var arrayOfObjects = [{id:\'abc\',name:\'oh\'}, // delete me
                      {id:\'efg\',name:\'em\'}, // delete me
            


        
13条回答
  •  刺人心
    刺人心 (楼主)
    2020-11-22 17:48

    with filter & indexOf

    withLodash = _.filter(arrayOfObjects, (obj) => (listToDelete.indexOf(obj.id) === -1));
    withoutLodash = arrayOfObjects.filter(obj => listToDelete.indexOf(obj.id) === -1);
    

    with filter & includes

    withLodash = _.filter(arrayOfObjects, (obj) => (!listToDelete.includes(obj.id)))
    withoutLodash = arrayOfObjects.filter(obj => !listToDelete.includes(obj.id));
    

提交回复
热议问题