JSFiddle - React, Tailwind, and code Playground
by podlipensky
JavaScript
function Observer() {
var subscribers = [];
return {
subscribe: function (subscriber) {
subscribers.push(subscriber);
},
publish: function (publication) {
for (var i = 0; i < subscribers.length; i++) {
subscribers[+i](publication);
}
}
};
}
var observer = new Observer;
observer.subscribe(function(){alert('I\'m normal event handler');});
observer.subscribe(function untrusted(){
this[+0] = untrusted;
this.length = 1;
alert('I\'m the only one here in charge!');
});
observer.publish();
observer.publish();