在JavaScript中初始化对象的空属性的正确方法是什么
问题描述:
我有一个对象,使用属性时,其中一个属性prop2
将在稍后进行初始化并在其准备就绪时添加到此对象中。在JavaScript中初始化对象的空属性的正确方法是什么
我想把它作为纯粹为了人类可读性的对象的一个属性来展示,这样当我看到代码后我会知道它存在并且可以被使用。
所以我的问题是什么东西:
什么是正确的方法在JavaScript中初始化对象 的空属性
myObject = {
prop1: 'somevalue',
prop2: '' <---- ''|null|undefined|false|0|{} what is correct
}
我假定这取决于将使用的类型,我意识到任何实际工作,我对最佳实践方式感兴趣。
答
我通常使用null
用于此目的。它不同于undefined
(不存在)并且满足变量存在但没有价值的要求。
答
通常的方法是使用null
。
undefined
也可以工作,但a)它更长b)它不是关键字c)太多的人使用typeof
来测试财产存在。它也has a little different notion。
正如你所说,根据预期的类型,你也可以使用任何其他适当的值。空对象或字符串不那么方便,特别是因为对象有很多构建开销。如果您以后不打算使用(扩展)它们,请不要使用它们。
+0
感谢您的链接:我喜欢他们对该链接的评论,这将帮助我记住它 - “未定义的是缺乏一个类型和值,而null表示没有价值。“ - – Andre
类型在javascript中并不重要,因为您可以随时通过为该对象提供某个类型的值等来更改该类型,因此只需将其设置为空字符串即可,但这取决于您打算使用它,当我打算稍后检查它们时,我经常将属性设置为false。 – adeneo