lukeed

@arr/filter

A tiny, faster alternative to native Array.prototype.filter

⚠️ Unlike native, @arr/filter does not support the optional thisArg parameter!

If you are okay with mutating the original, check out @arr/filter.mutate for an extremely fast filter alternative!

#Install

$ npm install --save @arr/filter

#Usage

import filter from '@arr/filter';

const words = ['foo', 'bar', 'baz', 'foobar', 'hello', 'world'];

filter(words, str => str.length > 3);
//=> ['foobar', 'hello', 'world']

console.log(words);
//=> ['foo', 'bar', 'baz', 'foobar', 'hello', 'world']

#API

#filter(arr, callback)

#arr

Type: Array
The array to iterate upon.

#callback(value[, index, array])

Type: Function
Function to test for each element, taking three arguments:

  • value (required) -- The current element being processed in the array.
  • index (optional) -- The index of the current element being processed in the array.
  • array (optional) -- The array filter was called upon.

#License

MIT © Luke Edwards

See also

@arr/every(3), @arr/filter.mutate(3), @arr/find(3), @arr/findindex(3), @arr/flatten(3), @arr/foreach(3), @arr/foreach.spec(3), @arr/includes(3), @arr/indexof(3), @arr/lastindexof(3)