何时是";var";js中需要
When is "var" needed in js?
可能重复:
JavaScript 中使用var和不使用var的区别
有时,我看到人们在做
for(var i=0; i< array.length; i++){
//bababa
}
但我也看到有人这样做。。。
for(i=0; i< array.length; i++){
//bababa
}
两者有什么不同?非常感谢。
var
关键字从不"需要"。但是,如果您不使用它,那么您声明的变量将在全局范围中公开(即作为window
对象上的属性(。通常这不是你想要的。
通常,您只希望您的变量在当前作用域中可见,这就是var
为您所做的。它仅在当前作用域中声明变量(但请注意,在某些情况下,"当前作用域"将与"全局作用域"重合,在这种情况下,使用var
和不使用var
没有区别(。
在编写代码时,您应该更喜欢以下语法:
for(var i=0; i< array.length; i++){
//bababa
}
或者,如果你必须这样做,那么就像这样:
var i;
for(i=0; i< array.length; i++){
//bababa
}
这样做:
for(i=0; i< array.length; i++){
//bababa
}
将在全局范围中创建一个名为i
的变量。如果其他人碰巧也在使用全局i
变量,那么您刚刚覆盖了他们的变量。
从技术上讲,您永远不必使用它,javascript只会愉快地使用您的变量,即使您没有提前声明它们。
但是,在实践中,您应该在声明变量时始终使用它。它将使您的代码更可读,并帮助您避免混淆,特别是如果您使用的变量具有相同的名称和不同的范围。。。
var n = 23;
function functThat( )
{
var n = 32; // "local" scope
}
相关文章:
- 控制台返回var不是't定义,但它是
- 从var向代码隐藏函数传递值
- 如何通过引用var Using DataTables来进行分页或排序
- 铬:“;未捕获的语法错误:意外的标记:"
- jQuery语法添加了var
- 如何将具有文本类型值的var放入jQuery函数中
- 可以设置“;文件名"发生错误时显示的内联脚本标记的
- JavaScript美学:;函数foo(){}"vs“;var foo=函数(){}"AMD功能
- 关于变量分配的澄清"var x=!0〃;
- 为什么var c=“;a“||"b”;返回c=“;a“;并且var c=“0”;a“&&"
- 编写一个javascript var="一些文本“;转换为预加载但为空的txt文档
- 什么是“;var对话框={}"jQuery/javascript中的平均值
- var imgLoader = document.getElementById("imgLoader"
- 什么是“||"在var语句中是mean
- 使用逗号初始化/设置多个变量,不带“var"”
- 这是什么样的javascript语法:"var XX=(函数(){..})()"以及如何将其与Typ
- "var canvas=document.getElementById(“canvas”);可以't不
- 它是如何工作的这个javascript"var ApplicationConfig={quot;
- 为什么JS代码"var a=document.querySelector('a[data-a=1]
- "var”;或者没有”;var”;在JavaScript's”;在“;环