Skip to content

partition

根据谓词函数将数组分割为两组。

该函数接受一个数组和一个谓词函数作为参数。它返回一个包含两个数组的元组:

第一个数组包含谓词函数返回 true 的元素,

第二个数组包含谓词函数返回 false 的元素。

签名

typescript
function partition<T>(arr: T[], isInTruthy: (value: T) => boolean): [truthy: T[], falsy: T[]];

参数

  • arr (T[]): 要分组的数组。
  • isInTruthy ((value: T) => boolean): 判断元素应该放入真值数组的谓词函数。该函数将对数组的每个元素进行调用。

返回值

([T[], T[]]): 包含两个数组的元组:第一个数组包含谓词函数返回 true 的元素,第二个数组包含谓词函数返回 false 的元素。

示例

typescript
const array = [1, 2, 3, 4, 5];
const isEven = x => x % 2 === 0;
const [even, odd] = partition(array, isEven);
// even 将会是 [2, 4] 而 odd 将会是 [1, 3, 5]

采用 MIT 许可证发布。