every.js
531 Bytes
import cb from './_cb.js';
import isArrayLike from './_isArrayLike.js';
import keys from './keys.js';
// Determine whether all of the elements pass a truth test.
export default function every(obj, predicate, context) {
predicate = cb(predicate, context);
var _keys = !isArrayLike(obj) && keys(obj),
length = (_keys || obj).length;
for (var index = 0; index < length; index++) {
var currentKey = _keys ? _keys[index] : index;
if (!predicate(obj[currentKey], currentKey, obj)) return false;
}
return true;
}