scanWhile (original) (raw)

Scan from left, while a test passes.

Alternatives: scanWhile, scanWhileRight, scanUntil, scanUntilRight.
Similar: search, scan, find.

function scanWhile(x, ft) // x: an array // ft: test function (v, i, x)

const xarray = require('extra-array');

var x = [1, 1, 2, 2, 3, 3, 4, 4]; xarray.scanWhile(x, v => v % 2 !== 0); // → 2 ^

xarray.scanWhile(x, v => v % 3 !== 0); // → 4 ^

xarray.scanWhile(x, v => v % 6 !== 0); // → 8 ^

References