Creating a temporary enclosure for persisting a variable

from jquery ninja book

by dandoyon

JavaScript

(function() {
    var numClicks = 0;
    document.addEventListener("click", function() {
        alert("eventone " + ++numClicks);
    }, false);

})();

// An alternative returning a value from the enclosure.
    
document.addEventListener("click", (function() {
    var numClicks = 0;
    return function() {
        alert("eventtwo " + ++numClicks);
    };
})(), false);


// click page to see alerts.