0

我有一个包含很多数组的对象。此数组内容函数参数。

例如:object = {"elem" : [fn1, fn2], "other-elem" : [fn3, fn4, fn5], ... }

我想创建一个接收名称的方法,当该名称与对象元素键一起修复时,它必须执行该数组中的所有函数。

我怎样才能执行这个功能?

4

3 回答 3

2

使用它来获取您的功能

 object["elem"]

在 jQuery 中你可以使用

$(object["elem"]).each(function(index,value){
   value();
});

在本机 JavaScript 中,您可以使用

for(var i = 0; i < object["elem"].length; i++)
{
   object["elem"][i]();
}
于 2013-04-10T08:45:31.507 回答
1

你的 Exec 函数应该是这样的

function Exec(ElementName)
{
    if (object[ElementName])
    {
        for (var i = 0; i < object[ElementName].length; i++)
            object[ElementName][i]();
    }
}
Exec('elem');
于 2013-04-10T08:51:21.753 回答
1

您只需使用以下命令调用它()

var fnarray = object[name];
var i;
for (i = 0; i<fnarray.length; i++) {
  fnarray[i](); // execute the function
}
于 2013-04-10T08:44:16.373 回答