define(['./keys', './_cb', './_isArrayLike'], function (keys, _cb, _isArrayLike) { // Determine whether all of the elements pass a truth test. 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; } return every; });