12345678910111213141516171819202122232425262728 |
- import isArrayLike from './is-array-like';
- import pullAt from './pull-at';
- var remove = function (arr, predicate) {
- /**
- * const arr = [1, 2, 3, 4]
- * const evens = remove(arr, n => n % 2 == 0)
- * console.log(arr) // => [1, 3]
- * console.log(evens) // => [2, 4]
- */
- var result = [];
- if (!isArrayLike(arr)) {
- return result;
- }
- var i = -1;
- var indexes = [];
- var length = arr.length;
- while (++i < length) {
- var value = arr[i];
- if (predicate(value, i, arr)) {
- result.push(value);
- indexes.push(i);
- }
- }
- pullAt(arr, indexes);
- return result;
- };
- export default remove;
- //# sourceMappingURL=remove.js.map
|