12345678910111213141516171819202122232425262728293031323334353637 |
- 'use strict';
- var isObject = require('isobject');
- function isObjectObject(o) {
- return isObject(o) === true
- && Object.prototype.toString.call(o) === '[object Object]';
- }
- module.exports = function isPlainObject(o) {
- var ctor,prot;
- if (isObjectObject(o) === false) return false;
-
- ctor = o.constructor;
- if (typeof ctor !== 'function') return false;
-
- prot = ctor.prototype;
- if (isObjectObject(prot) === false) return false;
-
- if (prot.hasOwnProperty('isPrototypeOf') === false) {
- return false;
- }
-
- return true;
- };
|