// 1.
var a = 1;
function a(){
console.log(2)
};
console.log(a);
//解析:
/*
*function a(){
* console.log(2)
* }
* var a;
* a = 1;
* console.log(a)
* */
// 2.
var b = 1;
function fn(b){
return b = 3;
};
console.log(fn);//打印函数 // ƒ fn(b){
// return b = 3;
// }
// 3.
var b = 1;
function fn(b){
b = 3;
console.log(b)//3
};
console.log(fn());//undefined
// 4.首先在局部里面找c,然后没找到,就去全局里面找c,在全局找到了c,就把全局的c给覆盖掉了
var c = 1;
function fn1(){
c = 2;
console.log(c) //2
}
fn1();
console.log(c); //2
// 5.
var a = 1;
function one(){
var a = 2;
function two(){
a = 3;
console.log(a) //3
}
two();
console.log(a)//3
}
one();
console.log(a);//1
//如果父级作用域中有用var申明的同名的变量,则覆盖父级的同名变量,如果父级中没有,则相当于创建了一个全局变量
// 局部作用域里面不写var ,那么这个变量就是"隐式全局"