JSFiddle - React, Tailwind, and code Playground
JavaScript
function Scope() {}
Scope.prototype = {
createInnerScope: function () {
var ChildScope = function () {};
ChildScope.prototype = this;
return new ChildScope();
}
};
useCase("Variable initialized on outer scope", function () {
var scope = new Scope();
var innerScope = scope.createInnerScope();
scope.foo = "Hello there!";
log("scope.foo: " + scope.foo);
log("innerScope.foo: " + innerScope.foo);
});
useCase("Variable initialized on inner scope", function () {
var scope = new Scope();
var innerScope = scope.createInnerScope();
innerScope.foo = "Hello there!";
log("scope.foo: " + scope.foo);
log("innerScope.foo: " + innerScope.foo);
});
// ----------------------------------------
function useCase(title, cb) {
log(title, "h3");
cb();
}
function log(message, tag) {
tag = tag || "pre";
var body = document.querySelector("body");
var div = document.createElement(tag);
div.innerHTML = message;
body.appendChild(div);
}