变量ECMAScript变量是松散类型的,即可以保存任何类型的数据。初始化变量不会把它标记类型,初始化的过程只是给变量付一个值,因此可以在修改变量的同时修改值的类型。但并不推荐这样做。var message ="hi";message =100;// 有效,但 ...
变量
- ECMAScript变量是松散类型的,即可以保存任何类型的数据。
- 初始化变量不会把它标记类型,初始化的过程只是给变量付一个值,因此可以在修改变量的同时修改值的类型。但并不推荐这样做。
var message ="hi";
message =100;// 有效,但不推荐
- 使用var操作符定义的变量将称为定义该变量的作用域中的局部变量。也就是说,如果在函数中使用使用var定义一个变量,那么这个变量在函数推出后就会被销毁。例如:
function test(){
var message ="hi";// 局部变量
}
test();
alert(message);// Uncaught ReferenceError: message is not defined(…)
如果像下面这样省略var操作符,那么可以创建一个全局变量:
function test(){
message ="hi";// 全局变量
}
test();
alert(message);// "hi"
这样只要调用过一次test()函数,这个变量就有了定义,就可以在函数外部的任何地方被访问到。
虽然省略了var操作符可以定义全局变量,但这也不是我们推荐的做法。因为在局部作用域中定义的全局变量很难维护,而且如果有意地忽略了var操作符,也会由于相应变量不会马上就有定义而导致不必要的混乱。给未经声明的变量赋值在严格模式下会导致ReferenceError错误。
数据类型
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们:
admin#shaoqun.com
(#换成@)。