Underscore.JS - reduceRight 方法



语法

_.reduceRight(list, iteratee, [memo], [context])

reduceRight 是 reduce 方法的右结合变体,用于将所有值缩减为单个值。它遍历元素的给定列表,然后调用与上下文对象绑定的迭代器函数(如果已传递)。迭代器函数使用三个参数调用:(memo、element、index、list)。对于 JavaScript 对象,迭代器的对象将是 (memo、value、key、list)。返回列表用于链接目的。

备忘录是缩减的第一状态,并且应该通过迭代器函数返回其每个后续步骤。如果没有备忘录传递给 reduce 的最初调用,则第一个元素将作为备忘录传递,同时调用列表中下一个元素的迭代器函数。

示例

var _ = require('underscore');

var list = [[0], [1], [2], [3]]
//Example using reduce. prepare a single list of elements
var result = _.reduce(list, function(memo, element) { return memo.concat(element) }, []);
console.log(result);

//Example using reduceRight. prepare a single list of elements
result = _.reduceRight(list, function(memo, element) { return memo.concat(element) }, []);
console.log(result);

将以上程序保存在 **tester.js** 中。运行以下命令来执行此程序。

命令

\>node tester.js

输出

[ 0, 1, 2, 3 ]
[ 3, 2, 1, 0 ]
underscorejs_iterating_collection.htm
广告
© . All rights reserved.