nodejsの中でシミュレーションしてemiterカスタムイベントを実現します.
1255 ワード
nodejsの中でシミュレーションしてemiterカスタムイベントを実現します.
<script>
function Emitter() {
this.events = {}; //
}
Emitter.prototype.on = function(type, cb) {
var events = this.events;
events = events[type] = events[type] || [];
events.push(cb);
};
Emitter.prototype.emit = function(type) {
var args = [].slice.call(arguments, 1);
var cbs = this.events[type], cb;
while (cb = cbs && cbs.shift()) {
cb.apply(this, args);
}
};
var emitter = new Emitter();
emitter.on('customevent', function(param) {
alert(param);
});
emitter.on('customevent', function() {
alert(1);
});
emitter.emit('customevent', 'xxx');
</script>
</code></pre>
</div>
<div class="clearfix">
<span id="art_bot" class="jbTestPos"/>
</div>
</div>
</div>
</div>