【发布时间】:2012-10-11 08:40:14
【问题描述】:
所以我已经阅读了许多从字符串调用函数的不同方法,使用window[](); 和eval();。我想知道对于我的情况(如下),哪种方法是完全正确的方法,如果是,请解释原因。还要解释为什么eval(); 不是一个很好的选择,很多人说安全,但是如果您可以获得任何能够让您更改该页面上的脚本的浏览器插件,为什么安全会成为一个问题? (例如:firefox 的 firebug)
我当前的代码:
funcOne(target).funcTwo(x, y, z);
如何使用推荐的window[](); 方式调用它?为什么我不能用这个?:
eval('funcOne(target).funcTwo(x, y, z)');
我不希望你对这个问题被问多次感到烦恼,因为我目前想不出一种方法来调用一个,作为一个调用它,双重函数。
提前致谢!
【问题讨论】:
-
所以你正在尝试构建一个类似 Firebug 的命令行?请提供更多信息。
eval可能是正确的选择,具体取决于您想要实现的目标。 -
我不明白你怎么会对这个问题感到困惑,以至于我想制作一个类似萤火虫的命令行,但我的意思是我想调用一个函数从运行前未知的信息生成,所以我保存并执行它,但是如何?
标签: javascript string function window eval