var Application = (function(w, d){
var myPrivateVariable = "My private content";
var _private = {
cache: function(){
this.link = d.querySelector('.link-item');
}
bind: function(){
this.link.addEventListener('click', this.handleClick, false);
},
handleClick: function(){
console.log(myPrivateVariable);
}
};
return {
init: function(){
console.log(myPrivateVariable);
_private.cache();
_private.bind();
}
};
})(window, document);
Application.init(); //init the app
console.log(myPrivateVariable); // undefined
const Application = (() => {
const privateVariable = 'Private content'
const link = document.querySelector('.link')
const _private = {
cache: () => this.link = document.querySelector('.link'),
bind: () => this.link.addEventListener('click', this.showContent, false),
showContent: () => console.log(privateVariable)
}
return {
init: () => {
_private.showContent()
_private.cache()
_private.bind()
}
}
})()
Application.init() //
console.log(privateVariable) //undefined