我有在设计时生成的 javascript,需要执行以在运行时查找值。代码作为字符串存储在对象中,我希望能够执行它并检索值,然后废弃代码。有没有办法做到这一点?我必须使用eval()
吗?
问问题
139 次
2 回答
2
您可以使用eval(String)
或使用new Function (String)
或使用document.createElement
[编辑]
取决于它是如何完成你的代码
1 -
如果这些字符串保存在不同页面之间共享(使用cookies
或database
),那么SERVER-SIDE
您可以生成一个标签<script>
,其中的值保存在 aJSON
中以便快速访问。
2 -
如果字符串仅在运行时保存(即在分页中是不可恢复的值)您可能不需要将这些值保存在Strings
,您可以在 talves 中创建一个global Json
,Window Object (eg. window.MyObjectGlobal)
使这些值可以在页面上随时访问(因为没有分页) - 在使用SERVER-SIDE
, 结合Ajax
(ajax 仅用于将数据保存在数据库中)或document.cookie
(但必须使用document.createElement("script")
or eval
)的情况下,也可以重用想法
祝你好运
于 2013-05-06T22:32:25.173 回答
0
是的,您可以使用eval
.
但是,记住eval
是邪恶的,它可能会带来安全风险。无论如何,如果你知道你在做什么,那就是要走的路
于 2013-05-06T22:30:45.450 回答