lodash - удаляет массив объектов по его значению - PullRequest
0 голосов
/ 26 апреля 2019

Использование lodah - как удалить объект по его значению?

вот моя попытка:

var array = ['Education', 'Medicine'];

values = [
    {
      "Category":"Medicine"
    },

    {
      "Category":"Medicine"
    },
    {
      "Category":"Development"
    },
    {
      "Category":"Education"
    }
  ]

  const x = _.without(values, array);

console.log (х); Ожидаемое значение:

values = [{
  "Category":"Development"
},]

Ответы [ 2 ]

1 голос
/ 26 апреля 2019

На самом деле, я не думаю, что лучше использовать lodash.Вы можете использовать es6 для ее решения.

result = values.filter(x => array.includes(x.Category));
1 голос
/ 26 апреля 2019

Вы можете использовать _.differenceWith() для удаления элементов с Category, который существует в массиве.

const array = ['Education', 'Medicine'];

const values = [{"Category":"Medicine"},{"Category":"Medicine"},{"Category":"Development"},{"Category":"Education"}];

const result = _.differenceWith(values, array, (o, category) => o.Category === category);

console.log(result);
<script src="https://cdnjs.cloudflare.com/ajax/libs/lodash.js/4.17.11/lodash.min.js"></script>
...