您现在的位置是:课程教程文章

js观察者模式是什么

2023-12-14 20:32课程教程文章 人已围观

说明

1、定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都将得到通知。

2、包括

Subject:主体对象(状态发布者),维护观察者列表,添加或删除观察者。

Observer:观察者,知道自己观察的状态是描述的哪一个对象,提供更新操作。

实例

classSubject{
constructor(){
this.state=0;
this.observers=[];
}
getState(){
returnthis.state;
}
setState(state){
this.state=state;
this.notify();
}
notify(){
this.observers.forEach(observer=>{
observer.update();
})
}
attach(observer){
this.observers.push(observer);
}
}


classObserver{
constructor(name,subject){
this.name=name;
this.subject=subject;
this.subject.attach(this);
}
update(){
console.log(`${this.name}update,state:${this.subject.getState()}`);
}
}

letsub=newSubject();
letobserver1=newObserver('o1',sub);
letobserver2=newObserver('o2',sub);

sub.setState(1);

以上就是js观察者模式的介绍,希望对大家有所帮助。更多js学习指路:js教程

课程教程:js观察者模式是什么

上一篇:js观察者模式和订阅模式的区别

下一篇:没有了

站点信息

  • 文章统计篇文章