为什么JavaScript中没有内置方法来检查对象是否是普通对象?

gue*_*314 2 javascript

鉴于JavaScript语言开始以来的发展,为什么没有内置方法来检查对象是否是普通对象?

或者该方法实际存在?

Pra*_*man 5

您可以通过以下方式检查对象的类型和实例:

var a = new Date();
console.log(typeof a);
console.log(a instanceof Date);

var b = "Hello";
console.log(typeof b);
console.log(b instanceof Date);
Run Code Online (Sandbox Code Playgroud)

根据OP的评论更新:

let arr = [1, 2, true, 4, {
    "abc": 123
  },
  6, 7, {
    "def": 456
  },
  9, [10], {}, "[object Object]"
];
arr.forEach(function(v) {
  if (typeof v == "object" && !(v instanceof Array) && v != null)
    console.log("Object Found");
  else
    ; // console.log("Na");
});
Run Code Online (Sandbox Code Playgroud)

上面的代码片段输出三次Object Found.