美文网首页
【命名-表达式函数】的易错点解析!

【命名-表达式函数】的易错点解析!

作者: jasonhsu9 | 来源:发表于2018-12-02 09:04 被阅读0次

    将命名函数赋给一个变量,这个命名函数不能通过命名函数函数名访问,只能通过变量名访问。

    var getFoo=function foo(){
        console.log("234");
    }
    getFoo();
    foo();
    

    如果调用foo()会报错:


    func.jpg

    结论:这种函数表达式后面的函数名foo只能在右侧函数体内有效,外部无法使用后面的函数名foo

    var getFoo=function foo(){
        console.log("234");
        console.log(foo);
    }
    getFoo();
    
    foo.jpg

    可见右侧命名函数内部的console.log(foo);成功访问到了foo函数本身。

    这种问题可能在面试中问到,主要考查表达式右侧函数名foo的作用域!

    相关文章

      网友评论

          本文标题:【命名-表达式函数】的易错点解析!

          本文链接:https://www.haomeiwen.com/subject/ypodcqtx.html