我正在拿起一个项目的维护和阅读代码:
我看到两个变量声明的方法。有人可以解释第一行和第二行之间的区别吗?这里变量的延迟有什么区别?
对我来说,我正在阅读的JavaScript中,var
关键字是可选的。在第一行中,他们宣布了两个新变量并初始化它们。在第二行中,他们宣布了两个新的变量,但没有初始化它们。我应该从这里采取更多?
aURL = ""; msgNb = 1;
var mode, param, counter;
我正在拿起一个项目的维护和阅读代码:
我看到两个变量声明的方法。有人可以解释第一行和第二行之间的区别吗?这里变量的延迟有什么区别?
对我来说,我正在阅读的JavaScript中,var
关键字是可选的。在第一行中,他们宣布了两个新变量并初始化它们。在第二行中,他们宣布了两个新的变量,但没有初始化它们。我应该从这里采取更多?
aURL = ""; msgNb = 1;
var mode, param, counter;
除非所有这些变量都是他们都是全局函数里面,前两个是任务,我猜是因为他们先前声明,否则可能会缩短到
var aURL = '',
msgNb = 1,
mode,
param,
counter;
的未分配的默认值具有未定义的值。
您应该始终使用var
关键字将变量保持在相同的函数范围内,而不是强制它变成隐式的全局变量,否则可能会遇到重复的变量命名和赋值问题。
如果您没有使用var
,那么您使用(或创建)一个“父”范围的变量,如果它没有在任何范围内找到本地变量,则一直变为全局变量。
这不是一个“jquery”的问题,而是一个JavaScript问题。没有“var”关键字的变量具有全局作用域,即它可以从所有方法,对象等中看到。var仅在其特定范围内可见。
这不就是JavaScript吗? jQuery没有自己的语言,是吗? –
我是web dev的新手,所以是的,这可能只是一个javascript问题。这就是我在这里要了解的 – MedicineMan