将一个非匿名函数赋值给变量再执行这个非匿名函数会如何
在js中,声明函数只有 两种方法:
(1)function funName(){}
(2)var f=function(){}
第二种方法必须使用的是匿名函数,假如使用的是非匿名函数,比如var f=function funName(){},则依旧按第二种方法执行处理,同样的在外部无法通过funName来访问到函数,因为这已经是一个表达式。funName已经成为了f.name的值
eg:var f=function g(){
return 23;
};
typeof g(); //输出Error,因为根本就没有这个函数
typeof g; //undefined
typeof f; //function
typeof f(); //number