scope of `this`
by Saksham Malhotra
JavaScript
/*
function outer() {
let innerFunc = function() {
console.log(this);
}
innerFunc();
let innerArrowFunc = () => {
console.log(this);
}
innerArrowFunc();
this.innerExFunc = function() {
console.log(this);
}
this.innerExArrowFunc = () => {
console.log(this);
}
}
outer();
var out = new outer();
out.innerExFunc();
out.innerExArrowFunc();*/
/*function x() {
setTimeout(() => {
console.log(this)
}, 100);
setTimeout(function() {
console.log(this)
}, 200);
}
x();
setTimeout(function() {
(new x())
}, 500)
*/
/*var x = 5;
(function(callback){
var age = 22;
callback();
})(function(){
console.log(this);
console.log(this.x);
})*/
/*
for (var x = 0; x < 5; x++) {
setTimeout(function() {
console.log(this + ' ' + x);
}, 0)
}
*/
/*var obj = {
name: 'saksham',
contextObj: this,
greet: () => {
console.log(obj.contextObj);
console.log(this);
},
greetNormal() {
console.log(this.contextObj);
console.log(this);
}
}
obj.greet();
obj.greetNormal();*/
/*let obj = {
age:29,
getAge() {
console.log(this);
function getActualAge() {
console.log(this);
}
getActualAge();
}
}
obj.getAge();
*/