simponic.xyz/godel/js/observable.js

15 lines
297 B
JavaScript
Raw Normal View History

2023-11-16 16:56:56 -05:00
class Observable {
constructor() {
this.observers = [];
}
subscribe(f) {
this.observers.push(f);
}
unsubscribe(f) {
this.observers = this.observers.filter((subscriber) => subscriber !== f);
}
notify(data) {
this.observers.forEach((observer) => observer(data));
}
}