如何判断JavaScript中的值是否为Object Literal?

时间:2017-12-30 08:54:16

标签: javascript arrays

由于我对对象类型判断的经验有限,我不知道如何判断一个值是否是JavaScript中的Object Literal?我在net上搜索了很长时间。但没有用。请帮忙或尝试提出一些如何实现这一点的想法。谢谢!

解决方案是: 我们知道,我们可以使用'typeof'或'instanceof'来判断值的类型。 例如,要判断一个数组,我们可以使用:

ab=5
ac=6
ad=5
bc=7
bd=4
cd=3

但现在我想检查一个值是否为Object Literal:

var array=[0,1,2,3,4];
if(Object.prototype.toString.call(array)==='[object Array]'){
    alert('This is an Array!');
}

如何判断呢? 我的方式是:

var obj={
    a:2
};

我担心这种方式是错误的。

1 个答案:

答案 0 :(得分:0)

您可以将constructor属性与Object匹配,如下所示:



var obj={
    a:2
};
console.log(obj.constructor == Object); // true

var arr = [1,2,3];
console.log(arr.constructor == Object); // false