filledndBy
Create a filled n-dimensional nested array according to a provided callback function.
Usage
var filledndBy = require( '@stdlib/array/base/fillednd-by' );
filledndBy( shape, clbk[, thisArg] )
Returns a filled n-dimensional nested array according to a provided callback function.
function clbk() {
return 1.0;
}
var out = filledndBy( [ 2, 3 ], clbk );
// returns [ [ 1.0, 1.0, 1.0 ], [ 1.0, 1.0, 1.0 ] ]
When invoked, a callback function is provided a single argument:
- indices: current array element indices.
To set the callback execution context, provide a thisArg
.
function clbk() {
this.count += 1;
return 1.0;
}
var ctx = {
'count': 0
};
var out = filledndBy( [ 1, 1, 1, 2, 3 ], clbk, ctx );
// returns [ [ [ [ [ 1.0, 1.0, 1.0 ], [ 1.0, 1.0, 1.0 ] ] ] ] ];
var cnt = ctx.count;
// returns 6
Examples
var constantFunction = require( '@stdlib/utils/constant-function' );
var filledndBy = require( '@stdlib/array/base/fillednd-by' );
var out = filledndBy( [ 1, 3 ], constantFunction( 0.0 ) );
// returns [ [ 0.0, 0.0, 0.0 ] ]
out = filledndBy( [ 3, 1 ], constantFunction( 'beep' ) );
// returns [ [ 'beep' ], [ 'beep' ], [ 'beep' ] ]
out = filledndBy( [ 1, 1, 3 ], constantFunction( null ) );
// returns [ [ [ null, null, null ] ] ]
out = filledndBy( [ 1, 3, 1 ], constantFunction( true ) );
// returns [ [ [ true ], [ true ], [ true ] ] ]
out = filledndBy( [ 1, 1, 1, 3 ], constantFunction( void 0 ) );
// returns [ [ [ [ undefined, undefined, undefined ] ] ] ]