将undefined赋值给构造函数中的属性
Assigning undefined to a property in constructor
我读到你最好有一个固定的对象结构,只需要改变属性值,而不是删除/添加属性本身,以便JavaScript引擎更好地优化它,像这样:
var MyClass = function(){
this.prop = undefined;
}
var a = new MyClass();
我发现这相当混乱,是一个阴暗的JavaScript hack,虽然可以使用它,如果它真的提高了应用程序的运行。
但是,我对在前端应用程序中使用这种技巧有点怀疑,即使它是一个由100个类和组件组成的复杂应用程序。
所以,问题是,它在实践中有意义赋予属性初始值的构造函数?或者它更像是一种假想的性能优化,几乎不会被注意到?
在构造函数中分配属性初始值在实践中有意义吗?
是的,当然。对于优化编译器和人类读者来说,它确实提高了清晰度,这在较大的代码库中尤为重要。
然而,如果您试图在没有初始化属性的情况下构造对象,则可能暗示存在更普遍的设计缺陷。当你甚至不知道合理的初始值时,也许你不应该实例化任何东西,直到你知道它们。
相关文章:
- javascript中对象构造函数中的var属性与this.properties
- Javascript:为什么是构造函数's __proto__属性Empty(){}
- Javascript - 如何向对象构造函数添加属性
- JS构造函数的原型属性与其原型之间的区别
- 属性在我的自定义构造函数中无法正常运行 - Javascript
- 正在重置原型对象的构造函数属性
- 数.[属性] 是对象或构造函数的属性
- 在Javascript构造函数中定义属性的正确方式
- 如何在运行时访问typescript类公共属性(调试)?只有构造函数和函数是可访问的
- 通过程序从构造函数中检索属性名称
- 向构造函数或原型添加属性之间的区别
- Angular 2 Component自定义属性在构造函数中为null
- 使用构造函数创建的数字没有其值作为属性,请取消String与构造函数的链接
- 在定义了构造函数之后,是否可以将实例属性添加到JavaScript原型中
- 在挖空中引用对象构造函数外部视图模型的属性
- Javascript:类构造函数基础 - 在单独的方法中定义属性
- 如何在 JavaScript 中冻结构造函数中的属性
- 在使用函数作为构造函数时,我在初始化属性时卡住了这个运算符.我的代码如下
- 未捕获的类型错误: 无法读取未定义的属性“构造函数”
- Javascript -为什么要循环?(原型属性->构造函数属性->函数对象->构造函数属性)