verificator
Version:
Client and server-side validation JavaScript library
27 lines (22 loc) • 809 B
JavaScript
;
exports.__esModule = true;
var _isObjectLike = require('./isObjectLike');
var _isObjectLike2 = _interopRequireDefault(_isObjectLike);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }
var toString = function toString(value) {
return Object.prototype.toString.call(value);
};
var isPlainObject = function isPlainObject(value) {
if (!(0, _isObjectLike2['default'])(value) || toString(value) !== '[object Object]') {
return false;
}
if (Object.getPrototypeOf(value) === null) {
return true;
}
var proto = value;
while (Object.getPrototypeOf(proto) !== null) {
proto = Object.getPrototypeOf(proto);
}
return Object.getPrototypeOf(value) === proto;
};
exports['default'] = isPlainObject;