问下大佬是先执行var还是先执行function呢?

发布于 9 年前作者 maojuan12976 次浏览最后编辑 9 年前来自 ask
比如
function example() { 
    function f() {return 1;}; 
    return f; 
    var f = function() {return 2;}; 
} 
var a = example(); 
alert(a()); 
  理解:
  先var a然后把example赋值给a,再执行。
   主要是这里 然后example里面,先var f,然后function f() {return 1} 即example执行为1
    还是function f() {return 1} 再var f,不太确定
  请指教!多谢
3 回复
xiulangu
xiulangu1 楼6 年前

return f 不会再执行var f 了。代码有问题吧。

简单来说,如果var声明并赋值会覆盖掉同名function。无论在什么位置

xiulangu
xiulangu2 楼6 年前

console 执行下。

shiming
shiming3 楼6 年前

可能我的表述不太好,我主要想问的是 example函数里 变量提升 函数和定义都会提升。是先提升哪个?