以下代码执行后, num 的值是?
var foo=function(x,y){ return x-y; } function foo(x,y){ return x+y; } var num=foo(1,2);
1 2 3 4 5 6 7 | var foo =function(x, y){ return x - y; } function foo(x, y){ return x + y; } var num = foo(1, 2); |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | //variable hoisting变量提升 var foo;//foo#1 var num; //function declaration hoisting函数声明提升 function foo(x, y){//foo#2 return x + y; } //function expression NOT hoisted函数表达式不会被提升 foo =function(x, y){//foo#3 return x - y; } num = foo(1, 2);//这里使用foo#3 |