JavaScript嵌套函数

我得到了一段我不明白的javascript代码:


function dmy(d) {

    function pad2(n) {

        return (n < 10) ? '0' + n : n;

    }


    return pad2(d.getUTCDate()) + '/' +

       pad2(d.getUTCMonth() + 1) + '/' +

       d.getUTCFullYear();

}


function outerFunc(base) {

    var punc = "!";


    //inner function

    function returnString(ext) {

       return base + ext + punc;

    }


    return returnString;

}

如何在另一个函数中定义一个函数?我们可以从my()函数外部调用pad2()吗?


请给它一些照明。谢谢


哆啦的时光机
浏览 404回答 3
3回答

明月笑刀无情

在函数内部和外部都可以进行函数实例化。在这些函数内部,就像变量一样,嵌套函数是局部的,因此无法从外部范围获得。function foo() {&nbsp; &nbsp; function bar() {&nbsp; &nbsp; &nbsp; &nbsp; return 1;&nbsp; &nbsp; }&nbsp; &nbsp; return bar();}foobar在自身内部操纵。bar除非在外部范围中定义,否则不能从外部范围触及。因此,这将不起作用:function foo() {&nbsp; &nbsp; function bar() {&nbsp; &nbsp; &nbsp; &nbsp; return 1;&nbsp; &nbsp; }}bar(); // throws error: bar is not defined
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript