值是普通对象

检查提供的值是否是由Object构造函数创建的对象。

  • 检查提供的值是否为真值。
  • 使用typeof检查它是否为对象,并使用Object.prototype.constructor确保构造函数等于Object
const isPlainObject = val =>
  !!val && typeof val === 'object' && val.constructor === Object;

isPlainObject({ a: 1 }); // true
isPlainObject(new Map()); // false