发布订阅者模式

           class EventEmitter {
                // 补全代码
                constructor(){
                    this.events = {}
                }
                
                on(eventName, callback){
                    //一个事件上注册多个回调函数
                    const callbacks = this.events[eventName] || []
                    callbacks.push(callback)
                    this.events[eventName] = callbacks
                }
                
                emit(eventName, ...args){
                    const callbacks = this.events[eventName] || []
                    callbacks.forEach(cb=>cb(...args))
                }
            }
posted @ 2022-10-26 11:09  pocoui  阅读(22)  评论(0)    收藏  举报