countIf

Count the number of elements in an array which pass a test implemented by a predicate function.

Usage

var countIf = require( '@stdlib/array/base/count-if' );

countIf( x, predicate[, thisArg] )

Counts the number of elements in an array which pass a test implemented by a predicate function.

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

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

var out = countIf( x, predicate );
// returns 3

The predicate function is provided three arguments:

  • value: current array element.
  • index: current array element index.
  • arr: input array.

To set the predicate function execution context, provide a thisArg.

function predicate( value ) {
    this.count += 1;
    return ( value > 0 );
}

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

var context = {
    'count': 0
};

var out = countIf( x, predicate, context );
// returns 3

var cnt = context.count;
// returns 5

Examples

var discreteUniform = require( '@stdlib/random/array/discrete-uniform' );
var isPositiveInteger = require( '@stdlib/assert/is-positive-integer' ).isPrimitive;
var naryFunction = require( '@stdlib/utils/nary-function' );
var countIf = require( '@stdlib/array/base/count-if' );

var x = discreteUniform( 10, -5, 5, {
    'dtype': 'int32'
});
// returns <Int32Array>

var out = countIf( x, naryFunction( isPositiveInteger, 1 ) );
// returns <number>

console.log( x );
console.log( out );
Did you find this page helpful?