45 lines
966 B
Plaintext
45 lines
966 B
Plaintext
/**
|
|
* Helper function for iterating over a collection
|
|
*
|
|
* @param collection
|
|
* @param fn
|
|
*/
|
|
function each(collection, fn) {
|
|
var i = 0,
|
|
length = collection.length,
|
|
cont;
|
|
|
|
for(i; i < length; i++) {
|
|
cont = fn(collection[i], i);
|
|
if(cont === false) {
|
|
break; //allow early exit
|
|
}
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Helper function for determining whether target object is an array
|
|
*
|
|
* @param target the object under test
|
|
* @return {Boolean} true if array, false otherwise
|
|
*/
|
|
function isArray(target) {
|
|
return Object.prototype.toString.apply(target) === '[object Array]';
|
|
}
|
|
|
|
/**
|
|
* Helper function for determining whether target object is a function
|
|
*
|
|
* @param target the object under test
|
|
* @return {Boolean} true if function, false otherwise
|
|
*/
|
|
function isFunction(target) {
|
|
return typeof target === 'function';
|
|
}
|
|
|
|
module.exports = {
|
|
isFunction : isFunction,
|
|
isArray : isArray,
|
|
each : each
|
|
};
|