UNPKG

@extra-array/scan-while

Version:

Scans from left, while a test passes.

58 lines (43 loc) 1.9 kB
Scans from left, while a test passes. [:package:](https://www.npmjs.com/package/@extra-array/scan-while) [:smiley_cat:](https://github.com/orgs/nodef/packages?repo_name=extra-array) [:running:](https://npm.runkit.com/@extra-array/scan-while) [:vhs:](https://asciinema.org/a/339811) [:moon:](https://www.npmjs.com/package/@extra-array/scan-while.min) [:scroll:](https://unpkg.com/@extra-array/scan-while/) [:newspaper:](https://nodef.github.io/extra-array/) [:blue_book:](https://github.com/nodef/extra-array/wiki/) > Alternatives: [scanWhile], [scanWhileRight], [scanUntil], [scanUntilRight].<br> > Similar: [search], [scan], [find]. > This is part of package [extra-array]. [extra-array]: https://www.npmjs.com/package/extra-array <br> ```javascript array.scanWhile(x, ft); // x: an array // ft: test function (v, i, x) // → index where test fails ``` ```javascript const array = require("extra-array"); var x = [1, 1, 2, 2, 3, 3, 4, 4]; array.scanWhile(x, v => v % 2 !== 0); // 2 ^ array.scanWhile(x, v => v % 3 !== 0); // 4 ^ array.scanWhile(x, v => v % 6 !== 0); // 8 ^ ``` <br> <br> ## References - [List-Extra.elemIndex: elm](https://package.elm-lang.org/packages/elm-community/list-extra/7.1.0/List-Extra#elemIndex) - [iterable-binsearch: @krisselden](https://www.npmjs.com/package/iterable-binsearch) - [binarysearch: @soldair](https://www.npmjs.com/package/binarysearch) [scanWhile]: https://github.com/nodef/extra-array/wiki/scanWhile [scanWhileRight]: https://github.com/nodef/extra-array/wiki/scanWhileRight [scanUntil]: https://github.com/nodef/extra-array/wiki/scanUntil [scanUntilRight]: https://github.com/nodef/extra-array/wiki/scanUntilRight [search]: https://github.com/nodef/extra-array/wiki/search [scan]: https://github.com/nodef/extra-array/wiki/scan [find]: https://github.com/nodef/extra-array/wiki/find