SOURCE

class customizeEvent {
    constructor() {
        this.events = {};
    }
    on(name, callback) {
        //  如果不存在
        if (!this.events[name]) {
            this.events[name] = []
        }
        this.events[name].push(callback)
    }
    emit(name, ...args) {
        let callbackList = this.events[name]
        if (callbackList) {
            callbackList.forEach((callback) => {
                callback(...args)
            })
        }
    }

}

let ceshi = new customizeEvent()
ceshi.on('ceshi1', () => {
    console.log('测试')
})
ceshi.emit('ceshi1')
console 命令行工具 X clear

                    
>
console