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
- 目前元素值
- 結果集中元素的索引
- 正在遍歷的 API 實例
回呼函式應傳回將用作下一次循環的累加器的值(回呼中的第一個參數)。
2 initialValue
任何
是 - 預設 要用作第一次呼叫
fn
回呼函式的第一個引數的值。- 目前累加器值,或如果第一次回呼中提供,則為
- 傳回
任何
從最後一次呼叫
fn
回呼函式傳回的結果。
範例
計算欄位中的資料總和
var table = new DataTable('#myTable');
var sum = table
.column(0)
.data()
.reduceRight(function (a, b) {
return a + b;
});