【问题标题】:what is the difference in variable delaration here?这里的变量声明有什么区别?
【发布时间】:2009-12-11 17:47:54
【问题描述】:

我正在维护一个项目并阅读代码:
我看到了两种变量声明的方法。有人可以解释第一行和第二行之间的区别是什么意思吗?

对我来说,我在 javascript 中读到,var 关键字是可选的。在第一行中,他们声明了两个新变量并对其进行了初始化。在第二行,他们声明了两个新变量,但没有初始化它们。我还应该从中得到什么吗?

aURL = ""; msgNb = 1;
var mode, param, counter;

【问题讨论】:

  • 这不只是 JavaScript 吗? jQuery 没有自己的语言,是吗?
  • 我是网络开发新手,所以是的,这可能只是一个 javascript 问题。这就是我来这里学习的目的

标签: javascript variable-declaration


【解决方案1】:

除非所有这些变量都在一个函数中,否则它们都是全局变量,前两个是我猜想的赋值,因为它们之前已声明过,否则可能会缩短为

var aURL = '', 
    msgNb = 1, 
    mode, 
    param, 
    counter;

默认情况下,未分配的具有未定义的值。

您应该始终使用 var 关键字将变量保持在同一函数范围内,而不是强制它成为隐式全局变量,否则您可能会遇到重复变量命名和赋值的问题。

【讨论】:

    【解决方案2】:

    如果您没有使用var,那么您正在使用(或创建)来自“父”范围的变量,如果在任何范围内都找不到本地变量,则一直到全局变量。

    【讨论】:

      【解决方案3】:

      这不是一个“jquery”问题,而是一个 JavaScript 问题。没有“var”关键字的变量具有全局范围,即它对所有方法、对象等都是可见的…… var 仅在其特定范围内可见。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-10-02
        • 2015-06-07
        • 2017-11-10
        • 2019-12-29
        • 1970-01-01
        相关资源
        最近更新 更多