问答详情
源自:2-4 多样化的我(变量赋值)

var加和不加的区别

假如不加var 直接 name= 1 还是变量吗,或者会变成其他什么语句

提问者:lmy_wy 2015-09-24 01:46

个回答

  • Perona
    2015-09-24 10:14:47
    已采纳

    JS中变量声明分显式申明和隐式声明。

      var num=100;//显式

      num=100;//隐式

    在函数中使用var关键字进行显式声明的变量是做为局部变量,而没有用var关键字,使用直接赋值方式声明的是全局变量。

    当我们使用访问一个没有声明的变量时,JS会报错。而当我们给一个没有声明的变量赋值时,JS不会报错,相反它会认为我们是要隐式申明一个全局变量,这一点一定要注意。

    不加var的写法是不推荐的。
    1.  语义不清楚。 
    2.  团队开发时,容易覆盖掉其它作用域内的变量,引发异常。
    3.  给window对象添加不必要成员。