Js 实现自定义事件

var Event = {
            on: function (eventName, callback) {
                if (!this[eventName]) {
                    this[eventName] = [];
                }
                this[eventName].push(callback);
            },
            emit: function (eventName) {
                var that = this;
                var params = arguments.length > 1 ? Array.prototype.slice.call(arguments, 1) : [];
                if (that[eventName]) {
                    Array.prototype.forEach.call(that[eventName], function (arg) {
                        arg.apply(self, params);
                    });
                }
            }
        }

  

posted @ 2018-03-30 11:25  百小僧  阅读(482)  评论(0编辑  收藏  举报