01 - Closure (SJC)

by Diya_Khan

HTML

<span id="nonClosure1"></span><br/>
<span id="nonClosure2"></span><br/>

<span id="closure1"></span><br/>
<span id="closure2"></span><br/>

JavaScript

function nonClosure() {
    var date = new Date();
    return date.getMilliseconds();
}

function closure() {
    var date = new Date();
    return function() {
        return date.getMilliseconds();
    };
}


//Non Closure Example
document.getElementById("nonClosure1").innerHTML = nonClosure();
window.setTimeout(function() {
    document.getElementById("nonClosure2").innerHTML = nonClosure();
}, 500);

//Closure Example
var myClosure = closure();
document.getElementById("closure1").innerHTML = myClosure();
window.setTimeout(function() {
    document.getElementById("closure2").innerHTML = myClosure();
}, 500);