JSFiddle - React, Tailwind, and code Playground
by Alpha
JavaScript
function MyObject() {
var self = this;
var a = 1;
this.b = 2;
var innerMethod = function() {
//1 and 2: direct reference
logMessage("a = " + a); // a = 1
//logMessage("b = " + b); // Error: b is not defined
//3 and 4: using this
logMessage("this.a = " + this.a); // this.a = undefined
logMessage("this.b = " + this.b); // this.b = undefined
//5 and 6: using self
logMessage("self.a = " + self.a); // self.a = undefined
logMessage("self.b = " + self.b); // self.b = 2
}
return {
method: innerMethod
};
}
function logMessage(message) {
body = document.getElementsByTagName('body')[0];
var p = document.createElement("p");
p.innerHTML = message;
body.appendChild(p);
}
var theObject = new MyObject();
theObject.method();