根据规范,只有6种类型,其中5种是本机(Null,Undefined,Number,String,Boolean),1是Object类型。
似乎typeof
null
失败并将其检测为对象。
似乎toString()
会将对象后代报告为其后代类型,例如RegExp
,Function
等。
我不希望后代类型,我希望RegExp
,Function
等报告为Object
。
我基本上想要检测真正的ES5对象。
答案 0 :(得分:-1)
取自angularjs:
function isObject(value) {
// http://jsperf.com/isobject4
return value !== null && typeof value === 'object';
}