Files
lodash/_arrayFilter.js
2017-01-09 17:38:33 -08:00

25 lines
591 B
JavaScript

/**
* A specialized version of `filter` for arrays.
*
* @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;