Js 觀察者模式

2021-09-02 21:25:32 字數 1077 閱讀 3886

function eventtarget();

}eventtarget.prototype =

this.handlers[type].push(handler);

}, fire: function(event)

if (this.handlers[event.type] instanceof array)

} },

removehandler: function(type, handler)

} handlers.splice(i, 1);

} }};

function handlemessage(event)

//建立乙個新物件

var target = new eventtarget();

//新增乙個事件處理程式

target.addhandler("message", handlemessage);

//觸發事件

target.fire();

//刪除事件處理程式

target.removehandler("message", handlemessage);

//再次,應沒有處理程式

target.fire();

繼承

function person(name, age)

inheritprototype(person,eventtarget);

person.prototype.say = function(message));

};

function inheritprototype(subtype, supertype)
function handlemessage(event)

//建立新 person

var person = new person("nicholas", 29);

//新增乙個事件處理程式

person.addhandler("message", handlemessage);

//在該物件上呼叫 1 個方法,它觸發訊息事件

person.say("hi there.");

JS 觀察者模式

被觀察者 function observed 將observer註冊到observed上 observed.prototype.attach function s 產生新狀態 observed.prototype.setstate function newstate 觀察者 function obs...

js 觀察者模式

觀察者模式定義一種一對多的關係,多個觀察者訂閱乙個主題物件,當主題物件發生改變的時候通知所有觀察者,使他們能實現更新。具體實現方式 定義乙個被觀察物件,定義乙個主題陣列,觀察者訂閱主題通過往陣列物件內新增 函式來實現,當主題發生改變時輪流呼叫 函式。var subpub this.topics to...

JS設計模式 觀察者模式

又來更新了,昨天學了白賀翔老師的觀察者模式,分享一下,直接看 doctype html en utf 8 viewport content width device width,initial scale 1.0 document title commonutil.js script head ut...