我想要创建的函数的名称将来自我的一个变量的内容。基于变量动态生成函数名称
实施例:
var myFunctionName = "tryAgain";`
[tryAgain]
|
|
|
function myFunctionName() {
alert('Try Again !');
};
我想要创建的函数的名称将来自我的一个变量的内容。基于变量动态生成函数名称
实施例:
var myFunctionName = "tryAgain";`
[tryAgain]
|
|
|
function myFunctionName() {
alert('Try Again !');
};
要在当前背景下
this[myFunctionName] = function() {
// statements
}
window[myFunctionName] = function() {
alert('Try Again !'); };
作品在全球范围内。
eval("function "+myFunctionName+"(){alert('Try Again !');}");
我不建议这样做创建一个新的功能;)不过是另一种方式,你可以做到这一点。
虽然您的问题已被正确回答,但我建议使用一个包含您的函数的对象,假设您生成多个对象。好处是,您可以遍历所有生成的函数,并将它们同时放入一个名称空间。
var funcs = {};
var name = 'test';
funcs[name] = function()
{
alert("Called a custom function");
};
funcs.test();
// Does the same funcs[name]();