@newdash/newdash
Version:
javascript/typescript utility library
30 lines (29 loc) • 961 B
JavaScript
;
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.remove = void 0;
const basePullAt_1 = __importDefault(require("./.internal/basePullAt"));
const getIteratee_1 = __importDefault(require("./.internal/getIteratee"));
function remove(array, predicate) {
const result = [];
if (!(array && array.length)) {
return result;
}
let index = -1;
const indexes = [];
const length = array.length;
predicate = (0, getIteratee_1.default)(predicate, 3);
while (++index < length) {
const value = array[index];
if (predicate(value, index, array)) {
result.push(value);
indexes.push(index);
}
}
(0, basePullAt_1.default)(array, indexes);
return result;
}
exports.remove = remove;
exports.default = remove;