javascript - 动态创建函数名称

标签 javascript

Possible Duplicate:
Dynamic function name in javascript?

我想达到以下结果。有人可以告诉我怎么做吗。基本上名称是动态的。

 var name =  'tab'+ ID;    
name(tab);

到目前为止,尝试过效果很好的东西。这是一个好的方法吗,或者有人可以建议另一种方法。

var function_name  =  't'+ ID; 
if (typeof(window[function_name]) === "function")
{
    window[function_name](tab);
}

最佳答案

我首先创建一个对象来存储您的函数:

var funcs = {};

然后你可以只使用括号表示法:

var id = '001';

funcs['tab'+ id] = function(tab) {

};

funcs.tab001(tab);
// or if you have special chars...
funcs['tab001'](tab);

关于javascript - 动态创建函数名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14697522/

相关文章:

javascript - 调试使用 ES6 模块的 JavaScript 代码

javascript - 不允许导航重复导航到当前位置 ("/search")

javascript - jQueryUI 对话框提交处理程序的参数来自哪里?

javascript - 更改圆圈中间的颜色

javascript - gatsby上的CSS和JS文件丢失

javascript - react.js根 block 内容不同

javascript - 位置固定和背面可见性

javascript - 从谷歌浏览器扩展调用页面功能

javascript - 选择 Maya 到 JSON 库

javascript - 获取状态 -1 而不是 401 Angularjs