📜  Lodash _.partitionBy() 方法

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

Lodash _.partitionBy() 方法

Lodash _.partitionBy() 方法接受一个数组和一个函数,因此根据给定函数的条件生成一个分区数组。

句法:

_.partitionBy(array, function)

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

  • 数组:要从中创建分区数组的给定数组。
  • 函数:包含要对数组进行分区的条件的函数。

返回值:该方法返回一个新创建的分区数组。

注意:这在普通 JavaScript 中不起作用,因为它需要安装 lodash.js 贡献库。 Lodash.js contrib 库可以使用npm install lodash-contrib –save 安装

示例 1:

Javascript
// Defining lodash contrib variable 
var _ = require('lodash-contrib'); 
  
// Declare an array 
var array = [1, 2, 3, 2, 1, 1, 
    5, 6, 6, 6, 7, 8, 9, 9, 10]; 
  
// Creating partitioned array 
var p_arr = _.partitionBy(array, _.isOdd); 
  
console.log("Original Array : ", array); 
console.log("Partitioned Arrayy: ", p_arr);


Javascript
// Defining lodash contrib variable 
var _ = require('lodash-contrib'); 
  
// Declare an array 
var array = [1, 2, 3, 2, 1, 1, 
    5, 6, 6, 6, 7, 8, 9, 9, 10]; 
  
// Creating partitioned array 
var p_arr = _.partitionBy(array, _.identity);
  
console.log("Original Array : ", array); 
console.log("Partitioned Arrayy: ", p_arr);


Javascript
// Defining lodash contrib variable 
var _ = require('lodash-contrib'); 
  
// Declare an array 
var array = [1, 2, 3, 2, -1, -1, 5, 
        6, -6, -6, -7, -8, 9, 9, 10];
  
// Creating partitioned array 
var p_arr = _.partitionBy(array, function(val) { 
  return val > 0 
}); 
  
console.log("Original Array : ", array); 
console.log("Partitioned Arrayy: ", p_arr);


输出:

Original Array :  [
 1, 2,  3, 2, 1, 1,
 5, 6,  6, 6, 7, 8,
 9, 9, 10
]
Partitioned Arrayy:  [
 [ 1 ],       [ 2 ],
 [ 3 ],       [ 2 ],
 [ 1, 1, 5 ], [ 6, 6, 6 ],
 [ 7 ],       [ 8 ],
 [ 9, 9 ],    [ 10 ]
]

示例 2:

Javascript

// Defining lodash contrib variable 
var _ = require('lodash-contrib'); 
  
// Declare an array 
var array = [1, 2, 3, 2, 1, 1, 
    5, 6, 6, 6, 7, 8, 9, 9, 10]; 
  
// Creating partitioned array 
var p_arr = _.partitionBy(array, _.identity);
  
console.log("Original Array : ", array); 
console.log("Partitioned Arrayy: ", p_arr);

输出:

Original Array :  [
  1, 2,  3, 2, 1, 1,
  5, 6,  6, 6, 7, 8,
  9, 9, 10
]
Partitioned Arrayy:  [
  [ 1 ],       [ 2 ],
  [ 3 ],       [ 2 ],
  [ 1, 1 ],    [ 5 ],
  [ 6, 6, 6 ], [ 7 ],
  [ 8 ],       [ 9, 9 ],
  [ 10 ]
]

示例 3:

Javascript

// Defining lodash contrib variable 
var _ = require('lodash-contrib'); 
  
// Declare an array 
var array = [1, 2, 3, 2, -1, -1, 5, 
        6, -6, -6, -7, -8, 9, 9, 10];
  
// Creating partitioned array 
var p_arr = _.partitionBy(array, function(val) { 
  return val > 0 
}); 
  
console.log("Original Array : ", array); 
console.log("Partitioned Arrayy: ", p_arr);

输出:

Original Array :  [
 1, 2,  3,  2, -1, -1,
 5, 6, -6, -6, -7, -8,
 9, 9, 10
]
Partitioned Arrayy:  [
 [ 1, 2, 3, 2 ],
 [ -1, -1 ],
 [ 5, 6 ],
 [ -6, -6, -7, -8 ],
 [ 9, 9, 10 ]
]