📜  Lodash _.partition() 方法

📅  最后修改于: 2022-05-13 01:56:30.644000             🧑  作者: Mango

Lodash _.partition() 方法

Lodash 是一个基于 underscore.js 的 JavaScript 库。 Lodash 有助于处理数组、集合、字符串、对象、数字等。
_.partition() 方法创建一个元素数组,该数组分为两组,其中第一个包含元素谓词返回 true,第二个包含元素谓词返回 false。

句法:

_.partition(collection, predicate)

参数:此方法接受上面提到的两个参数,如下所述:

  • 集合:此参数保存要迭代的集合。
  • 谓词:此参数保存每次迭代调用的函数,并使用一个参数(值)调用

返回值:此方法返回分组元素的数组。

示例一:这里使用 const _ = require('lodash') 来导入文件中的 lodash 库。

// Requiring the lodash library 
const _ = require("lodash"); 
       
// Original array 
var users = [
  { 'customer': 'john',  'age': 26, 'active': false },
  { 'customer': 'jonny',    'age': 34, 'active': true },
  { 'customer': 'johnson', 'age': 12,  'active': false }
];
   
// Use of _.partition() method
   
let gfg = _.partition(users, function(o) { return 
o.active; });
  
// Printing the output 
console.log(gfg);

输出:

[
 [ { customer: 'jonny', age: 34, active: true },
   { customer: 'john', age: 26, active: false },
   { customer: 'johnson', age: 12, active: false }
  ]
]

示例 2:

// Requiring the lodash library 
const _ = require("lodash"); 
       
// Original array 
var users = [
  { 'customer': 'john',  'age': 26, 'active': false },
  { 'customer': 'jonny',    'age': 34, 'active': true },
  { 'customer': 'johnson', 'age': 12,  'active': false }
];
   
// Use of _.partition() method
// The `_.matches` iteratee shorthand
   
let gfg = _.partition(users, { 'age': 12, 'active': false 
});
  
// Printing the output 
console.log(gfg);

输出:

[
 [ { customer: 'johnson', age: 12, active: false } ],
 [ { customer: 'john', age: 26, active: false },
   { customer: 'jonny', age: 34, active: true }
  ]
]

示例 3:

// Requiring the lodash library 
const _ = require("lodash"); 
       
// Original array 
var users = [
  { 'customer': 'john',  'age': 26, 'active': false },
  { 'customer': 'jonny',    'age': 34, 'active': true },
  { 'customer': 'johnson', 'age': 12,  'active': false }
];
   
// Use of _.partition() method
// The `_.matchesProperty` iteratee shorthand
   
let gfg = _.partition(users, ['active', false]);
  
// Printing the output 
console.log(gfg);

输出:

[
 [ { customer: 'john', age: 26, active: false },
   { customer: 'johnson', age: 12, active: false } ],
 [ { customer: 'jonny', age: 34, active: true }
  ]
]

示例 4:

// Requiring the lodash library 
const _ = require("lodash"); 
       
// Original array 
var users = [
  { 'customer': 'john',  'age': 26, 'active': false },
  { 'customer': 'jonny',    'age': 34, 'active': true },
  { 'customer': 'johnson', 'age': 12,  'active': false }
];
   
// Use of _.partition() method
// The `_.matches` iteratee shorthand
   
let gfg = _.partition(users, { 'age': 12, 'active': false 
});
  
// Printing the output 
console.log(gfg);

输出:

[
 [ { customer: 'johnson', age: 12, active: false } ],
 [ { customer: 'jonny', age: 34, active: true },
   { customer: 'john', age: 26, active: false } ]
]

注意:此代码在普通 JavaScript 中不起作用,因为它需要安装库 lodash。