我有一个AngularJS控制器。我在顶部绑定变量时遵循John Papa指南。我的问题是:在声明变量时使用默认值初始化变量是否有任何性能提升,或者它会对性能产生负面影响?
function someCtrl($scope) {
var vm = this;
vm.someVar = ''; // Should it rather be vm.someVar; ?
}
我在AngularJS上下文中已经问过这个问题。但是,这是一个普遍的JavaScript问题。
更新:以下情况如何?
function someCtrl($scope) {
var someVar = ''; // Should it rather be var someVar; ?
}
答案 0 :(得分:1)
vm.someVar = '';
- 应该是vm.someVar;
吗?
这既不是变量也不是声明。
这是一个在vm
对象上创建属性的赋值。相比之下,vm.someVar;
只是一个无操作(它什么都不做),应该完全放弃。
是的,如果您想创建需要的属性来初始化它们。您可以使用undefined
初始化它们,但最好使用与以后相同类型的默认值初始化它们。是的,在构造函数中创建属性(在创建对象时)而不是在事实之后添加它们是一个好习惯。