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;
}

Как функция может быть определена в другой функции? Можем ли мы позвонить PAD2 () снаружи моей () функции?

Пожалуйста, положите свет на него. Спасибо

91
задан Erik Dekker 11 January 2012 в 10:56
поделиться