UNPKG

ut2

Version:

一个现代 JavaScript 实用工具库。[点击查看在线文档]。

27 lines (24 loc) 801 B
import eq from './eq.js'; import { objectProtoHasOwnProperty } from './internals/native.js'; function shallowEqual(objA, objB, strictCheck) { if (strictCheck === void 0) { strictCheck = true; } if (eq(objA, objB, strictCheck)) { return true; } if (typeof objA !== 'object' || objA === null || typeof objB !== 'object' || objB === null) { return false; } var keysA = Object.keys(objA); var keysB = Object.keys(objB); if (keysA.length !== keysB.length) { return false; } for (var i = 0; i < keysA.length; i++) { var key = keysA[i]; if (!objectProtoHasOwnProperty.call(objB, key) || !eq(objA[key], objB[key], strictCheck)) { return false; } } return true; } export { shallowEqual as default };