<h2>词法分析</h2>
当我们运行一个函数,一瞬间会产生一个Active Object(以下简称为AO)
e.g:
function t(a){
var a=5;
console.log(a);
}
t(100)
词法分析:t.AO={}
函数运行后:1.接收参数,t.AO={a:100}
2.分析var声明,在AO上,形成属性,以var的变量名为属性名,值为undefined,如果AO上已经有了同名的属性参数不受任何影响。
3.分析函数声明,AO上如果有与函数同名的属性,则会被函数覆盖,
t.AO.green=function(){.....}
function t(green){
console.log(green);
// function green(){
// alert("hfdhfh")
// }
var green=function(){
alert('hello')
}
}
t(3);
网友评论