值是普通对象
检查提供的值是否是由Object构造函数创建的对象。
- 检查提供的值是否为真值。
- 使用
typeof
检查它是否为对象,并使用Object.prototype.constructor
确保构造函数等于Object
。
const isPlainObject = val =>
!!val && typeof val === 'object' && val.constructor === Object;
isPlainObject({ a: 1 }); // true
isPlainObject(new Map()); // false