1234567891011121314151617181920212223242526 |
- 'use strict'
- class Event {
- constructor () {
- this.listeners = []
- }
- addListener (callback) {
- this.listeners.push(callback)
- }
- removeListener (callback) {
- const index = this.listeners.indexOf(callback)
- if (index !== -1) {
- this.listeners.splice(index, 1)
- }
- }
- emit (...args) {
- for (const listener of this.listeners) {
- listener(...args)
- }
- }
- }
- module.exports = Event
|