purge
v1.0.0
Published
Mutates an array by filtering out elements in-place.
Downloads
199
Maintainers
Readme
purge
Mutates an array by filtering out elements in-place.
Installation
Requires Node.js 6.0.0 or above.
npm i purge
API
The module exports a single function.
Parameters
- Bindable:
arr
(array): The array to modify. - Optional:
test
(function, array, or any): Specifies the elements to be removed. (Note that this behavior is opposite that ofArray.prototype.filter()
, which asks you to specify elements to keep.) If a function is provided, it will be called for each array element. Elements for which the function returns true will be removed. If a blacklist array is provided, elements contained in the blacklist array will be removed fromarr
. In other cases, elements inarr
which strictly equaltest
will be removed. Iftest
is omitted entirely, thenarr
will be purged of falsey elements.
Return Value
The mutated arr
.
Examples
Purge by Function Test
const purge = require('purge')
const isOdd = n => n % 2 === 1
const arr = [1, 2, 3]
purge(arr, isOdd) // Purge odd numbers
arr // [2]
Purge by Blacklist Array
const purge = require('purge')
const arr = [1, 2, 3]
purge(arr, [3, 4, 5]) // Purge any of these elements if found
arr // [1, 2]
Purge Specific Element
const purge = require('purge')
const arr = [1, 2, 3]
purge(arr, 1) // Purge this element if found
arr // [2, 3]
Purge Falsey Elements
const purge = require('purge')
const arr = [-1, 0, 1]
purge(arr)
arr // [-1, 1]
Bind Operator
This module supports the bind operator. Any of the above examples can be rewritten to use it.
const purge = require('purge')
const isOdd = n => n % 2 === 1
const arr = [1, 2, 3]
arr::purge(isOdd)
arr // [2]
Related
- ltrim-array: Removes specified values from the beginning of an array.
- rtrim-array: Removes specified values from the end of an array.
- unique-array-by: Filters an array by testing uniqueness with a callback, an index, or a key.