例1:
function fn(){
console.log("function"); //第二步,执行fn函数,输出字符串function
}
function test(){
console.log(fn); //第一步,输出全局变量fn对应的函数对象
fn(); // 第二步,才调用fn函数,转上
fn="hello"; //将变量fn赋值。
console.log(fn); //第三步,输出hello,
fn(); //第四步,在fn被赋值字符串后再次调用fn()并输出,此时fn为字符串了,故输出not a function
}
test();
注:输出结果里的蓝色f代表function
例1的输出结果:
**
例2:
**
var xxx=1234;
function test (xxx){
console.log(xxx);
var xxx=123;
function xxx(){}
console.log(xxx);
}
test (xxx);
例2的输出结果:
例三
var c=0;
var a=b=c;
c=1;
b=2;
console.log(a,b,c) //0 2 1
**
例四
**
var x=10;
(function(){
var y=x=5; //等价x=5 ,var y=x; x为全局变量,注意括号所在的位置
} )
console.log(x); //10
console.log(y); //undefined