不管怎样,生活还是要继续向前走去。有的时候伤害和失败不见得是一件坏事,它会让你变得更好,孤单和失落亦是如此。每件事到最后一定会变成一件好事,只要你能够走到最后。纸上得来终觉浅,绝知此事要躬行。
预解析:在当前作用域下,js运行之前,会把带有var和function关键字声明的变量先声明,并在内存中安排好。然后从上至下解析js语句。而且function的声明优先于var声明。
不多说,,直接上代码
正规写法:
var num=10;
fun();
function fun(){
console.log(num);//undefined
var num=20; }
预解析里:先将变量和函数提前,如下:
var num;
function fun(){
var num;
console.log(num);//undefined
num=20;
}
num=10;
fun();
第二种
var num=10;
function dn(){
console.log(num);//undefined
var num=20;
console.log(num);//20
}
dn();
//相当于以下代码
var num;
function dn(){
var num;
console.log(num);
num =20;
console.log(num );
}
num=10;
dn();
第三种
var a =18;
ss();
function ss(){
var b=9;
console.log(a);//undefined
console.log(b);//9
var a='123';
}
//相当于以下代码
var a;
function ss(){
var b;
var a;
b=9;
console.log(a);
console.log(b);
a='123';
}
a=18;
ss();
第四种
aa();
console.log(c1);//9
console.log(b1);//9
console.log(a1);//报错
function aa(){
var a1=b1=c1=9;
console.log(a1);//9
console.log(b1);//9
console.log(c1);//9
}
//相当于
function aa(){
var a1=b1=c1=9;//相当于 var a=9;b=9,c=9
var a1;
a1=b1=c1=9;
console.log(a1);
console.log(b1);
console.log(c1)
}
aa();
console.log(c1);
console.log(b1);
console.log(a1);
到此这篇关于JavaScript 预解析的4种实现方法解析就介绍到这了。要培养各方面的潜力,包括承受悲惨命运的潜力。更多相关JavaScript 预解析的4种实现方法解析内容请查看相关栏目,小编编辑不易,再次感谢大家的支持!