ut2
Version:
一个现代 JavaScript 实用工具库。[点击查看在线文档]。
26 lines (23 loc) • 659 B
JavaScript
import allKeys from './allKeys.js';
import { nativeUndefined } from './internals/native.js';
import isNil from './isNil.js';
var conformsTo = function (object, source) {
var props = allKeys(source);
var length = props.length;
if (isNil(object)) {
return !length;
}
if (length === 0) {
return true;
}
for (var i = 0; i < length; i++) {
var key = props[i];
var predicate = source[key];
var value = object[key];
if ((value === nativeUndefined && !(key in object)) || !predicate(value)) {
return false;
}
}
return true;
};
export { conformsTo as default };