Метод _.differenceBy() используется для удаления значений из исходного массива путем перебора каждого элемента в массиве с помощью функции Iteratee. Это почти то же самое, что и функция _.difference ().
Синтаксис:
lodash.differenceBy(array, [values], [iteratee=_.identity])
Параметры: Эта функция принимает три параметра, как указано выше и описано ниже
- array (массив): Это массив, из которого должны быть удалены значения.
- values (ценности): Это массив значений, который должен быть удален из исходного массива.
- Iteratee (повторение): Это функция, которая выполняет итерацию по каждому элементу.
Примечание: Если функция-получатель не задана, то функция _.differenceBy() действует как функция _.difference ().
Возвращаемое Значение: Эта функция возвращает массив.
Пример 1:
// Requiring the lodash library
const _ = require("lodash");
// Ooriginal array
let array1 = [1, 2, 3, 4.2]
// Array to be subtracted
let val = [2, 3, 3, 5]
// New Array after _.differenceBy()
// method where Math.double is the
// comparable function
let newArray = _.differenceBy(
array1, val, Math.double);
// Printing the original array
console.log("Before : ", array1);
// Printing the output
console.log("After : ", newArray);
Выход:
Пример 2:
// Requiring the lodash library
const _ = require("lodash");
// Original array
let array1 = [1, 2, 3, 4.2]
// Value array to be subtracted
let val = [2, 3, 4, 5]
// new Array after _.differenceBy()
// method where Math.double is the
// comparable function
let newArray1 = _.differenceBy(
array1, val, Math.floor);
// New Array after _.differenceBy function
// where no comparable function is given
let newArray2 = _.differenceBy(array1, val);
// Printing the original array
console.log("Before : ", array1);
// Nrinting the output
console.log("When compare funct is given: ",
newArray1);
// Printing the output
console.log("When compare funct is not given: ",
newArray2);