7. Bindsolution
The bind() method creates a new function that, when called, has its this keyword set to the provided value, with a given sequence of arguments preceding any provided when the new function is called.
varHuman =function( name ){
this.name =name;
};
Human.prototype.getName=function(){
console.log( this.name );
};
varhomer =newHuman('Homer');
homer.getName(); // Homer
setTimeout( function(){
homer.getName(); // Homer
} , 500);
setTimeout( homer.getName.bind(homer) , 500); // Homer
13. IIFE sample
var x = 1;
var y = 10;
var m = (function(){
var x=2;
y = 11;
var z = 101;
return 1000;
})();
console.log(x);
console.log(y);
console.log(m);
console.log(z);
14. IIFE outputs
var x = 1;
var y = 10;
var m = (function(){
var x=2;
y = 11;
var z = 101;
return 1000;
})();
console.log(x); // 1
console.log(y); // 11
console.log(m); // 1000
console.log(z); //z is not defined
An immediately-invoked function expression (IIFI) is a JavaScript design pattern which produces a lexical scope using JavaScript's function scoping.