「関数」手法を使用して単純な JavaScript クラスを作成しました。クラスには、特定のメッセージを受信したときに関数をトリガーする websocket リスナーがあります。次のように、外部コールバックを簡単に追加できます
function MyClass() {
self = this; // to access main object from methods
// websocket definition
function websocketMessageInterpreter(message){
if(message == "Hello!") onHelloMessageBase();
}
function onHelloMessageBase(param){
// call user defined callback
self.userDefinedCallback(param);
}
this.userDefinedCallback= function(param){}; //default empty callback
}
外部的に私はこれを次のように使用します
var myObject = new MyClass();
myObject.userDefinedCallback = function(){alert("Someone said hello!");};
このようなことができるモデルはありますか?
myObject.userDefinedCallback += function1;
myObject.userDefinedCallback += function2;
そして多分後で
myObject.userDefinedCallback -= function1;