JS中函数的声明和引用
1.直接通过function申明函数:
function a(){ console.log("a"); } a();//输出b; function a(){ console.log("b"); } a();//输出b;
可以看到,二者均输出“b”。在javascript中,直接通过function申明的函数,后面定义的会影响到前面的引用。
2.通过var申明函数:
var a = function(){ console.log("a"); }; a();//输出a; var a = function(){ console.log("b"); }; a();//输出b;
3.二者的混合:
var a = function (){ console.log('a'); }; a();//输出a; function a(){ console.log("b"); } a();//输出a;
function a(){ console.log("b"); } a();//输出b; var a = function (){ console.log('a'); }; a();//输出a;
function a(){ console.log("a1"); } a(); //输出a2; var a = function(){ console.log("b1"); }; a();//输出b1; var a = function(){ console.log("b2"); }; a();//输出b2; function a(){ console.log("a2"); } a();//输出b2;
可以看出,通过var申明的函数会影响在它后面直接通过function申明的函数的引用;而通过function申明的函数会影响前面在它前面通过function申明函数的引用。
-----------------------------一花开五叶 结果自然成-------------------------------------------------