What is the equivalent of Python any() and all() functions in JavaScript?

arrays, javascript, list

Solution

The Python documentation gives you pure-python equivalents for both functions; they are trivial to translate to JavaScript:

function any(iterable) {
    for (var index = 0; index < iterable.length; index++) {
        if (iterable[index]) return true;
    }
    return false;
}

and

function all(iterable) {
    for (var index = 0; index < iterable.length; index++) {
        if (!iterable[index]) return false;
    }
    return true;
}

Recent browser versions (implementing ECMAScript 5.1, Firefox 1.5+, Chrome, Edge 12+ and IE 9) have native support in the form of `Array.some` and `Array.every`; these take a callback that determines if something is 'true' or not:

some_array.some((elem) => !!elem );
some_array.every((elem) => !!elem );

The Mozilla documentation I linked to has polyfills included to recreate these two methods in other JS implementations.

Problem

Python has built in functions `any()` and `all()`, which are applied on a list (array in JavaScript) as following- - `any()`: Return `True` if any element of the iterable is true. If the iterable is empty, return `False`. - `all()`: Return `True` if all elements of the iterable are true (or if the iterable is empty). We can create our customized functions for above, but please let me know if there any equivalent built-in functions available in JavaScript.

Original source