📜  Collect.js pull() 方法(1)

📅  最后修改于: 2023-12-03 15:30:03.336000             🧑  作者: Mango

Collect.js pull() 方法

pull() 方法是 Collect.js 库中的一个方法,用于从数组中获取符合条件的元素并同时将它们删除。该方法类似于 filter() 方法,但 pull() 方法是改变原数组的,而不是返回一个新数组。

语法
pull(array, [values])
  • array:要修改的数组。
  • values:需要删除的值。可以是单个值或由多个值组成的数组。
返回值

pull() 方法将会修改原数组并返回被删除的元素所组成的新数组。

示例

以下是一个使用 pull() 方法的示例:

const { pull } = require('collect.js');

const arr = [1, 2, 3, 4, 5];
const result = pull(arr, 2, 4);

console.log(result); // [2, 4]
console.log(arr); // [1, 3, 5]

在上面的示例中,我们从 arr 数组中删除了 2 和 4,并将被删除的值组成了新数组 result。原数组 arr 也被修改了。

以下代码使用一个数组参数传递删除的值:

const { pull } = require('collect.js');

const arr = [1, 2, 3, 4, 5];
const result = pull(arr, [2, 4]);

console.log(result); // [2, 4]
console.log(arr); // [1, 3, 5]

除了数组外,pull() 方法还可以接受任何类型的参数,例如对象或者字符串。如果数组中有该参数,它将被删除。

链式操作

使用 pull() 方法可以链式操作 Collect.js 中的许多其他方法。

以下是使用 pull() 方法和 flatten() 方法的示例:

const { pull } = require('collect.js');

const arr = [1, 2, [3, 4], 5];
const result = pull(arr, 2)
    .flatten();

console.log(result); // [1, 3, 4, 5]
console.log(arr); // [1, [3, 4], 5]

在上面的示例中,我们将 2 从 arr 中删除,然后使用 flatten() 方法将嵌套的数组变成单个数组。可以看到,操作仅影响了 result,原数组 arr 仍保持原样。