2.8 KiB
2.8 KiB
while
Invoke a function while a test condition is true.
Usage
var whilst = require( '@stdlib/utils/while' );
whilst( predicate, fcn[, thisArg ] )
Invokes a function
until a predicate
function returns false
.
function predicate( i ) {
return ( i < 5 );
}
function beep( i ) {
console.log( 'boop: %d', i );
}
whilst( predicate, beep );
/* =>
boop: 0
boop: 1
boop: 2
boop: 3
boop: 4
*/
Both the predicate
function and the function
to invoke are provided a single argument:
i
: iteration number (starting from zero)
To set the function execution context for the invoked function, provide a thisArg
.
function predicate( i ) {
return ( i < 5 );
}
function count() {
this.count += 1;
}
var context = {
'count': 0
};
whilst( predicate, count, context );
console.log( context.count );
// => 5
Examples
var randu = require( '@stdlib/random/base/randu' );
var whilst = require( '@stdlib/utils/while' );
function predicate() {
return ( randu() > 0.05 );
}
function log( i ) {
console.log( i );
}
whilst( predicate, log );