2010-08-13 56 views

回答

42

UPDATE:按照Gary Chambers的建议,使用hasOwnProperty方法。下面的解决方案将起作用,但认为最好使用hasOwnProperty

if ('field' in obj) { 
} 
+0

需要注意的是完全一样的方式,你可以检查密钥是否存在关联数组(这是因为通常对象* * **实际上是关联数组) – 2010-08-13 11:21:26

+0

是的,它就像在Python中一样。我不知道。 – Khoi 2010-08-13 12:16:37

+0

一些短裤会抱怨这种语法。根据@GaryChambers建议的使用hasOwnProperty更安全 – Jayd 2014-06-02 14:11:40

59

这将忽略通过原型链传递的属性。

if(obj.hasOwnProperty('field')) 
{ 
    // Do something 
} 
1

除了上述,您可以使用下面的方法:

if(obj.myProperty !== undefined) { 
}