0

我有一个具有属性的对象,其中 1 个属性prop2只会在以后初始化并在其准备好时添加到该对象。

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

所以我的问题是:

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

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

我假设它取决于将要使用的类型,并且我意识到任何东西实际上都有效,我对最佳实践方式感兴趣。

提琴手:http: //jsfiddle.net/gamelodge/DWCEa/

4

2 回答 2

5

我通常null用于此目的。区别于undefined(不存在),满足变量存在但没有值的要求。

于 2013-07-11T23:57:30.167 回答
2

通常的方法是使用null.

undefined也可以,但是 a) 它更长 b) 它不是关键字 c) 太多人typeof用来测试属性是否存在。它也有一点不同的概念

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

于 2013-07-11T23:59:00.283 回答