Lodash _.reductions() 方法
Lodash 是一个基于 underscore.js 的 JavaScript 库。 Lodash 有助于处理数组、字符串、对象、数字等。
_.reductions ()方法用于将一个元素数组转换为一个数组,其中存储了折叠操作中的每个中间值。此方法与 _.reduce() 方法相同,只是它返回一个数组。在该方法中传递一个数组、一个函数和一个起始值,以生成一个新数组以对数组执行操作。
句法:
_.reductions( array, function, start_val )
参数:此方法接受三个参数,如上所述,如下所述:
- 数组:这是要处理的数组。
- 函数:它是包含迭代条件的函数。
- start_val:它是在开始时传递的值,进一步更新进一步的操作。
返回值:此方法返回一个新数组。
注意:这在普通 JavaScript 中不起作用,因为它需要安装 Lodash contrib 库。 Lodash contrib 库可以使用安装 npm install lodash-contrib –save
示例 1:在此示例中,生成 sum 数组,初始值为 0,在加法运算时更新。
Javascript
// Defining lodash contrib variable
var _ = require('lodash-contrib');
// Defining the array
var array = [10, 12, 23, 34, 45];
// Using the _.reductions() method
var arr = _.reductions(array, function(st, n) {
return st - n;
}, 0);
console.log("Generated Array : ");
console.log(arr);
Javascript
// Defining lodash contrib variable
var _ = require('lodash-contrib');
// Defining the array
var array = [10, 12, 23, 34, 45];
// Using the _.reductions() method
var arr =_.reductions(array, function(st, n) {
return st * n;
}, 1);
console.log("Generated Array : ");
console.log(arr);
输出:
[ -10, -22, -45, -79, -124 ]
示例 2:在此示例中,将通过将起始值设为 1来生成乘法数组,该值会在进一步乘法时更新。
Javascript
// Defining lodash contrib variable
var _ = require('lodash-contrib');
// Defining the array
var array = [10, 12, 23, 34, 45];
// Using the _.reductions() method
var arr =_.reductions(array, function(st, n) {
return st * n;
}, 1);
console.log("Generated Array : ");
console.log(arr);
输出:
Generated Array :
[ 10, 120, 2760, 93840, 4222800 ]