在JavaScript中初始化对象的空属性的正确方法是什么

时间:2013-07-11 23:54:22

标签: javascript jquery

我有一个带有属性的对象,其中一个属性prop2只会在以后初始化并在准备就绪时添加到此对象中。

我想将它显示为对象的属性,纯粹是为了人类的可读性,因此当我稍后查看代码时,我将知道它存在并且将/可以使用。

所以我的问题是:

  

初始化对象的空属性的正确方法是什么?   在JavaScript中

myObject = {
    prop1: 'somevalue',
    prop2: '' <---- ''|null|undefined|false|0|{} what is correct
    }

我假设它取决于将使用的类型,我意识到任何实际工作,我对最佳实践方式感兴趣。

Fiddler: http://jsfiddle.net/gamelodge/DWCEa/

2 个答案:

答案 0 :(得分:5)

我通常会将null用于此目的。它与undefined(不存在)不同,并且满足变量存在但没有值的要求。

答案 1 :(得分:2)

通常的方法是使用null

undefined也可以,但是a)它更长b)它不是关键字c)太多人使用typeof来测试属性存在。它还has a little different notion

正如您所说,根据预期的类型,您可以使用任何其他适当的值。空对象或字符串不那么方便,特别是因为对象有很多构造开销。如果您以后不打算使用(延伸)它们,请不要使用它们。