关于Javasvript中 变量的命名及赋值--hoisting变量提升
在javascript里,所有的声明以及变量的赋值基本都是遵循:声明==>赋值==>调用,或者是:初始化==>调用,最后都会被释放清理。但是,其中有个变量提升的问题,如下:
var x = 5; // 初始化 x
var y = 7; // 初始化 y
console.log(x+y);
var x2 = 5; // 初始化 x
console.log(x2+y2);
var y2 = 7; // 初始化 y
当你调用的时候就会发现:第二个为NaN!再看下边这个:
var x1;
var y1;
x1=5;
y1=7;
console.log(x1+y1);
var x;
x2=5;
console.log(x2+y2);
y2=7;
var y2;
在javascript中,函数及变量的声明都将被自动提升到函数的最顶部!JavaScript 中,变量可以在使用后声明,也就是变量可以先使用再声明。
上边四个例子很好的解释了变量提升--hoisting,对于大多数程序员来说并不知道 JavaScript 变量提升。
如果程序员不能很好的理解变量提升,他们写的程序就容易出现一些问题。为了避免这些问题,通常我们在每个作用域开始前声明这些变量,这也是正常的 JavaScript 解析步骤,易于我们理解。
注意:JavaScript 严格模式(strict mode)不允许使用未声明的变量!
点击查看更多内容
3人点赞
评论
共同学习,写下你的评论
评论加载中...
作者其他优质文章
正在加载中
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦