js自定义事件的实现

1、指定谁是发布者。

2、给发布者添加一个缓存列表来存储回调,以便通知订阅者。

3、发布消息时,发布者会遍历这个列表,依次触发存储在其中的订阅者回调函数。

实例

constsalesOffices={}//定义售楼处

salesOffices.clientList=[]//缓存列表,存放订阅者的回调函数

salesOffices.listen=function(fn){//增加订阅者
this.clientList.push(fn)//添加进缓存列表
}

salesOffices.trigger=function(){//发布消息
for(leti=0,fn;fn=this.clientList[i++];){
fn.apply(this,arguments)//arguments是发布消息时带上的参数
}
}


//测试

salesOffices.listen((price,squareMeter)=>{//小明订阅消息
console.log('价格='+price)
console.log('squareMeter='+squareMeter)
})

salesOffices.listen((price,squareMeter)=>{//小红订阅消息
console.log('价格='+price)
console.log('squareMeter='+squareMeter)
})

salesOffices.trigger(2000000,88)
salesOffices.trigger(3000000,110)

以上就是js自定义事件的实现,希望对大家有所帮助。更多js学习指路:js教程

原文来自:https://www.py.cn
© 版权声明
THE END
喜欢就支持一下吧
点赞6 分享
评论 抢沙发
头像
欢迎您留下宝贵的见解!
提交
头像

昵称

取消
昵称表情代码图片

    暂无评论内容