js 变量声明提前
js在执行时,js变量声明语句无论出现在何处,都会先于其他代码首先被执行。使用var的声明的变量会提前。
先举个例子看看:
console.log(a); //function a(){console.log('me');this.a = a;}
var a = 3;
var b=function(){
a=4
console.log('bb');
}
console.log(a);//3
function a(){
console.log('me');
this.a = 'a';
}
b();
console.log(a);//4
以上例子可以看出,在执行程序前变量a会被提前,让后函数a会被提前,于是变量a即是函数本身,然后执行程序给先给a赋值3,后执行函数后赋值4,所以最终a的值是4。
总结以上变量声明和声明提前,我们声明变量时尽量在执行程序前先声明,后在程序中使用变量,这样可以确保程序按我们预想的一样执行。