Calculate the maximum value of an array via a callback function.
var maxBy = require( '@stdlib/stats/array/max-by' );Computes the maximum value of an array via a callback function.
function accessor( v ) {
return v * 2.0;
}
var x = [ -2.0, 1.0, 3.0, -5.0, 4.0, 0.0, -1.0, -3.0 ];
var v = maxBy( x, accessor );
// returns 8.0The function has the following parameters:
- x: input array.
- clbk: callback function.
- thisArg: execution context (optional).
The invoked callback is provided three arguments:
- value: current array element.
- index: current array index.
- array: input array.
To set the callback execution context, provide a thisArg.
function accessor( v ) {
this.count += 1;
return v * 2.0;
}
var x = [ -2.0, 1.0, 3.0, -5.0, 4.0, 0.0, -1.0, -3.0 ];
var context = {
'count': 0
};
var v = maxBy( x, accessor, context );
// returns 8.0
var cnt = context.count;
// returns 8- If provided an empty array, the function returns
NaN. - A provided callback function should return a numeric value.
- If a provided callback function does not return any value (or equivalently, explicitly returns
undefined), the value is ignored. - The function supports array-like objects having getter and setter accessors for array element access (e.g.,
@stdlib/array/base/accessor).
var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var maxBy = require( '@stdlib/stats/array/max-by' );
function accessor( v ) {
return v * 2.0;
}
var x = discreteUniform( 10, -50, 50, {
'dtype': 'float64'
});
console.log( x );
var v = maxBy( x, accessor );
console.log( v );