1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48
|
<?xml version="1.0" encoding="UTF-8" ?>
<dt-api group="utility">
<name>reduceRight()</name>
<summary>Apply a callback function against and accumulator and each element in the Api's result set (right-to-left).</summary>
<since>1.10</since>
<type type="function">
<signature>reduceRight( fn [, initialValue ] )</signature>
<description>Apply a callback function against and accumulator and each element in the Api's result set.</description>
<parameter type="function" name="fn">
Callback function which is called for each item in the API instance result set. The callback is called with four parameters:
* Current accumulator value, or `initialValue` if supplied in the first callback
* Current element value
* The element index in the result set
* The API instance being traversed
The callback should return the value to be used as the accumulator for the next loop (first parameter in the callback).
</parameter>
<parameter type="*" name="initialValue" default="">
Value to use as the first argument of the first call to the `fn` callback.
</parameter>
<returns type="*">Result from the final call to the `fn` callback function.</returns>
</type>
<description>
This method can be used to accumulate data from a result set into a single value. A good example is summing the values from a column of data. A more complete definition of the Array reduceRight method, which this method is based upon, can be found on the [Mozilla MDN documentation for `reduceRight`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduceRight).
Note that the traversal of the elements in the result set in this method is right-to-left (i.e. `length` to 0). `dt-api reduce()` is available for transversal in the opposite direction.
This method makes use of the fact that DataTables API objects are "array like", in that they inherit a lot of the abilities and methods of the Javascript `Array` type.
In this case, this method is a proxy for the Javascript `Array.prototype.reduceRight` method and is provided as a utility method for the DataTables API. For more information about the original method, please refer to the [Mozilla MDN documentation for `reduceRight`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/reduceRight). In browsers which do not support `reduceRight` natively, a polyfill is provided to allow this DataTables method to operate as expected.
</description>
<example title="Sum the data in a column"><![CDATA[
var table = $('#example').DataTable();
var sum = table
.column( 0 )
.data()
.reduceRight( function ( a, b ) {
return a + b;
} );
]]></example>
</dt-api>
|