Files
lodash/_arrayFilter.js
2017-01-08 23:37:20 -08:00

26 lines
636 B
JavaScript

/**
* A specialized version of `_.filter` for arrays without support for
* iteratee shorthands.
*
* @private
* @param {Array} [array] The array to iterate over.
* @param {Function} predicate The function invoked per iteration.
* @returns {Array} Returns the new filtered array.
*/
function arrayFilter(array, predicate) {
let index = -1;
let resIndex = 0;
const length = array == null ? 0 : array.length;
const result = [];
while (++index < length) {
const value = array[index];
if (predicate(value, index, array)) {
result[resIndex++] = value;
}
}
return result;
}
export default arrayFilter;