变量提升指的是JavaScript中变量的声明可以被提升到函数的最开始,如果便可支持变量的先使用后声明。但需要注意的是:变量提升不支持提升变量的初始化,即不能在变量的使用之后才初始化该变量,意思就是,变量的初始化必须放在变量使用之前。
例:
变量的声明:var x;
变量的初始化: x = 5;
变量的使用:document.write(x);
例子:
1.声明在前,初始化在中间,使用在后面:
代码:
var x;
x = 5;
document.write(x);
运行结果:
5
2.声明在前,使用在中间,初始化在后面:
代码:
var x;
document.write(x);
x = 5;
运行结果:
undefined
3.初始化在前,声明在中间,使用在后面:
代码:
x = 5;
var x;
document.write(x);
运行结果:
5
4.初始化在前,使用在中间,声明在后面:
代码:
x = 5;
document.write(x);
var x;
运行结果:
5
5.使用在前,声明在中间,初始化在后面:
代码:
document.write(x);
var x;
x = 5;
运行结果:
undefined
6.使用在前,初始化在中间,声明在后面:
代码:
document.write(x);
x = 5;
var x;
运行结果:
undefined