gpt4 book ai didi

javascript - 在 Javascript 中从 "eval"中运行的代码访问变量

转载 作者:行者123 更新时间:2023-11-29 22:25:18 24 4
gpt4 key购买 nike

我知道完全不推荐使用 eval,我也阅读了此链接。 Set Variable inside Eval (JavaScript)

然而,这就是我想要做的。假设我们在文本框中有一些代码。所以我必须获取该文本,然后找出该代码中的所有全局变量、函数和对象。我的想法是将代码包装在命名空间中,对其求值,然后遍历命名空间的属性以获得结果。但是,即使 eval 运行成功,我也无法访问那里定义的变量。有没有更好的解决方案或其他方法来使它正常工作。

http://jsfiddle.net/DbrEF/2/ - 这是 fiddle 。

“var 代码”实际上可以是任意代码。我知道这样做不安全,但我需要在不同的环境下使用它。谢谢

最佳答案

2015年,creating a Function object是最好的选择,而不是使用 eval:

new Function('arg1', 'arg2', 'return arg1 + arg2')(3,4) // returns 7

关于javascript - 在 Javascript 中从 "eval"中运行的代码访问变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9833505/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com