考虑我有一个函数的名称,它不需要在VAR任何说法有它的名称来执行功能的方法 -是那里,当我在一个字符串
var fn = "foo";
我可以在一些执行它或类似这样的 -
eval(fn);
它不起作用。请建议。
我的函数定义看起来就像这样 -
function foo() {
....do something....
}
考虑我有一个函数的名称,它不需要在VAR任何说法有它的名称来执行功能的方法 -是那里,当我在一个字符串
var fn = "foo";
我可以在一些执行它或类似这样的 -
eval(fn);
它不起作用。请建议。
我的函数定义看起来就像这样 -
function foo() {
....do something....
}
试试这个
eval(fn)();
或本
eval(fn + "()");
eval被认为是邪恶的。它会工作,但没有必要,应该避免 – mplungjan 2013-04-24 05:04:42
@mplungjan,我想我从EE日知道你:)。无论如何,如果要评估的字符串是由用户输入的,则eval是邪恶的,否则它应该很好地禁止字符串被编译然后执行的事实。 – gurvinder372 2013-04-24 05:10:52
当然 - 但不要使用它比使用它更好,而不是使用更合适的方法 - 是的,我们彼此认识;) – mplungjan 2013-04-24 05:12:42
不FN()工作? – Virus721 2013-04-24 04:54:09
还有其他方法可以在运行时决定一个函数。你绝对需要一个字符串的名字? – michaelb958 2013-04-24 04:54:12