JavaScript Nested function
I got a piece of code for javascript which I just do not understand: 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; } How can a function be defined within another function? Can we call pad2() from outside of my() function? Please put some light on it. Thanks Functions are another type of variable in JavaScript (with some nuances of course).