我一直在使用javascript & jQuery一个月。但我仍然没有得到使用var
变量和没有声明var
之间的区别。在javascript中为什么我们使用var来声明变量?
var data = 10;
data = 10;
以上两种说法有什么区别?为什么?请详细向我解释。
我一直在使用javascript & jQuery一个月。但我仍然没有得到使用var
变量和没有声明var
之间的区别。在javascript中为什么我们使用var来声明变量?
var data = 10;
data = 10;
以上两种说法有什么区别?为什么?请详细向我解释。
声明的变量,而不var
关键字将使全球性的,这意味着它将适用于所有模块中已声明的功能和对象。不用说,这会造成很多麻烦,应该避免。
声明与var
关键字变量将限制变量它在声明范围内的范围。
声明一个不带var关键字的变量会使其成为全球。真? – dsharew 2015-03-02 09:39:42
我们使用它,因为它是一个语言结构,以提高可读性,从“旧的”动态类型的茎语言(如初学者的所有符号指令代码,又名碱性。)
变种类似,从语法角度看基本的“暗淡”的语句。
它被认为是使用它由于事实,如果它是一个范围内省略它会传播到全球范围内最好的做法(虽然有,如果在全球范围内使用绝对没有任何影响。)
区别在于用“var”关键字在当前范围中声明该变量。在顶级范围(窗口)中,您当然不会注意到太多差异。我认为,一个例子是使更清楚:
// declares "data" on window scope
var data = 10;
function foo() {
// overwrites the "global" data to 20.
data = 20;
// declares a scoped variable "scopedData" inside of this function and sets it to 25
var scopedData = 25;
alert(data);
alert(scopedData);
}
// scoped data is undefined here because it was scoped to the function.
alert(scopedData);
另外请注意,所有的“变种”的声明必须包含在其范围内,并且执行向上移动将开始的范围是独一无二的。 请参见本文的详细信息:http://www.adequatelygood.com/JavaScript-Scoping-and-Hoisting.html
首先声明一个变量并分配值。在第二行中,您只需将新值赋给已存在的变量,该变量在第二行data = 10中保存数据 – virendrao 2015-03-02 09:35:07
;你只是重新分配数据变量来保存价值10 .. – Lucky 2015-03-02 09:36:39
你试过谷歌这个? [使用问题的标题可返回相当多的相关结果。](https://www.google.com/search?q=In+javascript+why+we+use+var+for+declaring+variable%3F&ie = utf-8&oe = utf-8&gws_rd = cr&ei = Zi_0VMX_Dcr3UInSgugO) – 2015-03-02 09:37:33