pubsub 经典发布订阅模式

var PusbSub = { subscribe: function(ev, callback) { var calls = this._callbacks || (this._callbacks = {}); (this._callbacks[ev] || (this._callbacks[ev] = [])).push(callback); return this; }, publish: function() { var args = Array.prototype.slice.call(arguments, 0); var ev = args.shift(); var list, calls, i, l; if (!(calls = this._callbacks)) { return this; } if (!(list = this._callbacks[ev])) { return this; } for (i = 0, l = list.length; i < l; i++) { list[i].apply(this, args); } return this; } } PusbSub.subscribe("wem", function() { alert("wem"); }); PusbSub.publish("wem");

猜你喜欢

转载自blog.csdn.net/gwdgwd123/article/details/82424515