JS Module Pattern 2
Private Variable
by Aditya Jain
HTML
1. Click to Add 2, 10 and Store result on calculator's stack : <button onclick="CalcModule.add(2,10);">Add 2,10</button><br>
2. Click to Add 5, 15 and Store result on calculator's stack : <button onclick="CalcModule.add(5,15);">Add 5,15</button><br>
3. Cilck to alert the stack's poped value:
<button onclick="alert(CalcModule.retrieveFromMemory());">Pop Stack</button><br>
JavaScript
CalcModule = (function(){
var pub = {};
var mem = new Array(); //private variable
var storeInMemory = function(val){ //private function
mem.push(val);
};
pub.add = function(a,b){
var result = a + b;
storeInMemory(result); //calling private function
return result;
};
pub.sub = function(a,b){
var result = a - b;
storeInMemory(result); //call to private function
return result;
};
pub.retrieveFromMemory = function(){
return mem.pop();
};
return pub;
})();