reduceRight()
自 DataTables 1.10 起
将回调函数应用于累加器和 API 结果集中的每个元素(从右到左)。
描述
此方法可用于将结果集中的数据累积到单个值。一个很好的例子是将数据列中的值求和。有关此方法所基于的 Array reduceRight 方法的更完整定义,请参见 Mozilla MDN 文档中的 reduceRight
。
请注意,此方法中结果集元素的遍历是从右到左(即从 length
到 0)。reduce()
可用于反向遍历。
此方法利用了 DataTables API 对象是“类似数组”的事实,这意味着它们继承了 Javascript Array
类型的大部分功能和方法。
在这种情况下,此方法是 Javascript Array.prototype.reduceRight
方法的代理,并作为 DataTables API 的实用程序方法提供。有关原始方法的更多信息,请参阅 Mozilla MDN 文档中的 reduceRight
。在不支持 reduceRight
的浏览器中,提供了一个 polyfill 以使此 DataTables 方法按预期运行。
类型
function reduceRight( fn [, initialValue ] )
- 描述
将回调函数应用于累加器和 API 结果集中的每个元素。
- 参数
名称 类型 可选 1 fn
否 回调函数,针对 API 实例结果集中的每个项目调用。回调函数调用时带有四个参数
- 当前累加器值,如果在第一个回调中提供了
initialValue
,则为initialValue
- 当前元素值
- 结果集中元素的索引
- 正在遍历的 API 实例
回调函数应返回一个值,该值将用作下一次循环的累加器(回调函数中的第一个参数)。
2 initialValue
任何
是 - 默认 用作对
fn
回调函数的第一次调用的第一个参数的值。- 当前累加器值,如果在第一个回调中提供了
- 返回
任何
对
fn
回调函数的最后一次调用的结果。
示例
对列中的数据求和
var table = new DataTable('#myTable');
var sum = table
.column(0)
.data()
.reduceRight(function (a, b) {
return a + b;
});