js 实现函数触发器,该如何解决

js 实现函数触发器
Event.prototype.trigger = function( eventName , data){
//这里面要怎么写?
}
或者 思路是什么呢~
------解决方案--------------------
function zhang(data){
alert(data.name);
}

function yun(data){
alert(data.name);
}
var listeners = {"zhang":zhang,"yun":yun};

Event.prototype.trigger = function( eventName , data){
var fn = listeners[eventName] 
------解决方案--------------------
 null;
var i,len;
if(fn instanceof Array){
for(i=0,i<fn.length;i<len;i++){
fn[i] && fn[i](data);
}
}else if(fn instanceof Function){
fn && fn(data);
}
}

var a = new Event("aaa");

a.trigger("zhang",{name:"zhang"});
a.trigger("yun",{name:"yun"});
a.trigger("yun1",{name:"yun"});


这个是你想说的问题吗?
触发其实就是在执行对应的函数而已,所以需要你先把需要的信息放到listeners对象中,后面如果有触发对应类型的事件的话,就去listeners对象中找这个属性,找到的话就执行~~~