我是JavaScript新手,我想知道声明变量然后在声明后立即初始化是最佳做法。例如:
var x = 5 ;
var y = 6 ;
而不是:
var x , y ;
x = 5;
y = 6 ;
答案 0 :(得分:3)
如何实际声明变量是一个偏好问题。
如果您在彼此之后声明多个变量,则可以省略var
关键字,而是使用逗号来表示"继续"该声明。
var x = 2,
y = 3;
如果我在另一个变量中使用一个变量,我喜欢将声明和赋值分开以便于阅读。
var x = 2,
y = x + 3;
var x, y;
x = 2;
y = x + 3;
同样这只是一个偏好,因为javascript中的任何变量在声明后都可以使用
- 即使是在同一个var
声明中。
重要的是要记住javascript中的变量具有函数作用域 - 不是其他语言中常见的块作用域(直到javascript的ES6 version可用)。
(function(){
var x = 1;
for (var i = 0; i < 10; i++) {
var x = i;
}
(function(){
var x = 999;
}());
alert(x); // 9!
}());
&#13;
javascript guru Douglas Crockford recommends变量定义列在每个函数的顶部,以使程序员习惯于具有适当块范围的语言更加明显。
答案 1 :(得分:1)
如何做到这一点不会以任何方式影响执行,而只是一个关于可读性的问题。
如果您愿意申报,则单独分配,一定要这样做。
如果不使用像var banana
这样的局部范围变量,就像在类中一样,会对执行产生一些影响(但几乎没有)。
示例: 这可能更容易阅读,(但这是一个个人意见),需要更少的操作
var Foo = Class.reate();
Foo.prototype = {
hoge : 1,
fuga : 2,
initialize : function(){
}
};
比这个:
var Foo = Class.reate();
Foo.prototype = {
hoge:null,
fuga:null,
initialize : function(){
this.hoge = 1;
this.fuga = 2;
}
};