Spaces:
Sleeping
Sleeping
; | |
/** | |
* Returns true when fn returns true for all members of obj. | |
* This is an every implementation that works for all iterables | |
* | |
* @param {object} obj | |
* @param {Function} fn | |
* @returns {boolean} | |
*/ | |
module.exports = function every(obj, fn) { | |
var pass = true; | |
try { | |
// eslint-disable-next-line @sinonjs/no-prototype-methods/no-prototype-methods | |
obj.forEach(function () { | |
if (!fn.apply(this, arguments)) { | |
// Throwing an error is the only way to break `forEach` | |
throw new Error(); | |
} | |
}); | |
} catch (e) { | |
pass = false; | |
} | |
return pass; | |
}; | |