SIGN IN SIGN UP

A modern JavaScript utility library delivering modularity, performance, & extras.

0 0 400 JavaScript
2015-01-08 00:37:01 -08:00
define([], function() {
/**
2015-12-16 17:53:20 -08:00
* A specialized version of `_.filter` for arrays without support for
* iteratee shorthands.
2015-01-08 00:37:01 -08:00
*
* @private
2016-05-21 00:48:34 -07:00
* @param {Array} [array] The array to iterate over.
2015-01-08 00:37:01 -08:00
* @param {Function} predicate The function invoked per iteration.
* @returns {Array} Returns the new filtered array.
*/
function arrayFilter(array, predicate) {
var index = -1,
2016-10-30 20:06:57 -07:00
length = array == null ? 0 : array.length,
2016-02-29 23:38:21 -08:00
resIndex = 0,
2015-01-08 00:37:01 -08:00
result = [];
while (++index < length) {
var value = array[index];
if (predicate(value, index, array)) {
2016-02-29 23:38:21 -08:00
result[resIndex++] = value;
2015-01-08 00:37:01 -08:00
}
}
return result;
}
return arrayFilter;
});