一、变量:
JavaScript的变量是松散类型的,所谓松散类型是可以用来保存任何类型的数据;并且一个变量的值类型是可变的。
1、定义方式:
A、使用var操作符(关键字),后跟变量名的形式。
![](https://images-1251512924.cos.ap-shanghai.myqcloud.com/2020/05/27/1b0434f0be741.png)
B、不适用var关键字,使用时直接赋初值。【不推荐】
![](https://images-1251512924.cos.ap-shanghai.myqcloud.com/2020/05/27/f32745e640b3e.png)
2、作用范围:
根据范围不同,变量分为:全局变量和局部变量。
函数外边直接定义的变量称为全局变量,函数内部定义的变量称为局部变量。如:
![](https://images-1251512924.cos.ap-shanghai.myqcloud.com/2020/05/27/400e9056c2f52.png)
注:JavaScript中函数内定义的变量没有块范围,而是在整个函数内有效,如:
![](https://images-1251512924.cos.ap-shanghai.myqcloud.com/2020/05/27/403b006d20086.png)
3、使用var和不使用的区别:
A、使用var定义变量,程序会强制定义一个新变量;
B、不使用var定义变量,系统会优先在当前上下文中搜索是否存在该变量,只有变量不存在的前提下,才会重新定义一个新变量。
当然,推荐使用var在函数外边定义全局变量,而在函数内部使用var定义局部变量。
上面的例子,函数内部去掉var后,输出不同的结果:
![](https://images-1251512924.cos.ap-shanghai.myqcloud.com/2020/05/27/800d9faaca667.png)