1.以函数为作用域
function func(){
if(1==1){
var name='alex'
}
console.log(name)
}
func()

  2.函数的作用域在函数未被调用之前,已经创建

function func(){
if(1==1){
var name='alex'
}
console.log(name)
}


3.函数的作用域存在作用域链,并且在未被调用前创建
xo = 'alex';
function func(){

var xo = 'eric';
function inner(){

console.log(xo)
}
var xo = 'tony'
return inner
}

var ret=func()
ret()
4.函数内局部变量提前申明

function func(){
console.log(xxoo);
var xxoo = 'alex'
}
解释过程中 : var xxoo;
func();
posted on 2018-07-11 21:32  python我的最爱  阅读(138)  评论(0编辑  收藏  举报