cueveryByRight

Cumulatively test whether every array element in a provided array passes a test implemented by a predicate function, while iterating from right-to-left.

Usage

var cueveryByRight = require( '@stdlib/array/base/cuevery-by-right' );

cueveryByRight( x, predicate[, thisArg ] )

Cumulatively tests whether every array element in a provided array passes a test implemented by a predicate function, while iterating from right-to-left.

function fcn( value ) {
    return value > 0;
}

var x = [ 0, 0, 1, 1, 1 ];

var y = cueveryByRight( x, fcn );
// returns [ true, true, true, false, false ];

cueveryByRight.assign( x, out, stride, offset, predicate[, thisArg ] )

Cumulatively tests whether every array element in a provided array passes a test implemented by a predicate function, while iterating from right-to-left, and assigns the results to the elements in the output array.

function fcn( v ) {
    return v > 0;
}

var x = [ 0, 0, 1, 1, 1 ];
var y = [ false, null, false, null, false, null, false, null, false, null ];

var out = cueveryByRight.assign( x, y, 2, 0, fcn );
// returns [ true, null, true, null, true, null, false, null, false, null ]

var bool = ( out === y );
// returns true

The invoked predicate function is provided three arguments:

  • value: collection element,
  • index: collection index,
  • collection: input collection,

To set the function execution context, provide a thisArg.

function fcn( v ) {
    this.count += 1;
    return ( v > 0 );
}

var x = [ 0, 0, 1, 1, 1 ];

var context = {
    'count': 0
};

var bool = cueveryByRight( x, fcn, context );
// returns [ true, true, true, false, false ]

var count = context.count;
// returns 4

Examples

var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var cueveryByRight = require( '@stdlib/array/base/cuevery-by-right' );

function isPositive( value ) {
    return ( value > 0 );
}

// Create an array of random values:
var x = discreteUniform( 10, -10, 10 );
console.log( x );

// Cumulatively test whether every array element passes a test, while iterating from right-to-left:
var out = cueveryByRight( x, isPositive );
console.log( out );
Did you find this page helpful?