Returns a copy of the input array, with preferred items moved to the front.
npm i array-prefer -S
None. Suitable for usage on nodejs or on the browser, via browserify/webpack.
const arrayPrefer = require('array-prefer');
const outArray = arrayPrefer(inArray, hasPriority, limit);
inArray
an input array of items (required)
hasPriority
a function that returns truthy or falsey on items, indicating items that have priority (required)
limit
an integer indicating the maximum number of items that may have priority (optional)
outArray
a copy of inArray
with items having priority moved to the front (lowest indexes).
Except for moving some items to the front of the array, the order of items is otherwise preserved.
arrayPrefer([3,1,2], (x)=>(x<3)) // --> [1,2,3]
arrayPrefer([3,1,2], (x)=>(x<3), 0) // --> [3,1,2]
arrayPrefer([3,1,2], (x)=>(x<3), 1) // --> [1,3,2]
arrayPrefer([3,1,2], (x)=>(x<3), 2) // --> [1,2,3]
Copyright 2019 Paul Brewer, Economic and Financial Technology Consulting LLC
MIT