我在javascript中有一个函数:
function alertMe($a)
{
alert($a);
}
我可以这样执行:alertMe(“你好”);
我想做的是将带有“Hello”参数的alertMe(“Hello”)赋值给变量$ func, 并且可以通过执行类似$ func();
的操作来执行此操作答案 0 :(得分:10)
我想将评论添加为答案
//define the function
function alertMe(a) {
//return the wrapped function
return function () {
alert(a);
}
}
//declare the variable
var z = alertMe("Hello");
//invoke now
z();
答案 1 :(得分:4)
只需构建您需要的功能并将其存储在变量中:
var func = function() { alertMe("Hello") };
// and later...
func();
如果你想改变字符串,你甚至可以创建一个函数来构建你的函数:
function buildIt(message) {
return function() { alertMe(message) };
}
var func1 = buildIt("Hello");
var func2 = buildIt("Pancakes");
// And later...
func1(); // says "Hello"
func2(); // says "Pancakes"
答案 2 :(得分:-3)
您应该使用eval执行保存的功能。例如:
var func = "alertMe('Hello')";
eval(func);