Returns an element from an array when it matches a condition

npm install or
6 downloads in the last week
20 downloads in the last month

Returns the element of an array when the callback returns true.


This module provides a similar function as Array.prototype.filter, but it returns the element, not an array. And it stops looping as soon as it finds a result.


var arr = ['item', 'other', 'finally'];

var item = or(arr, function(item) {
    return item === 'other';

console.log(item); // "other"

// Real world example
var matchesSelector = or(['matchesSelector', 'mozMatchesSelector',
    'webkitMatchesSelector', 'oMatchesSelector',
    'msMatchesSelector'], function(shim) {
    return shim in document.documentElement;

document.getElementById('some')[matchesSelector]('#some'); // true


The module returns a function accepting the following arguments:

  • array: the array on which to iterate
  • callback: the function being called
  • context: the context on which to call the callback



MIT License.

npm loves you