Urara-Blog/node_modules/.pnpm-store/v3/files/f6/f3be09e680f10e5b8e7352ab845275286cafc3daf7120d6892828d6f62ba2efb524972491fa5d375cead50aeceb5f693a708052bd9976ccf6464aa62a49530
2022-08-14 01:14:53 +08:00

27 lines
718 B
Text

/**
* The base implementation of `_.conformsTo` which accepts `props` to check.
*
* @private
* @param {Object} object The object to inspect.
* @param {Object} source The object of property predicates to conform to.
* @returns {boolean} Returns `true` if `object` conforms, else `false`.
*/
function baseConformsTo(object, source, props) {
var length = props.length;
if (object == null) {
return !length;
}
object = Object(object);
while (length--) {
var key = props[length],
predicate = source[key],
value = object[key];
if ((value === undefined && !(key in object)) || !predicate(value)) {
return false;
}
}
return true;
}
module.exports = baseConformsTo;