因此,当eval(数据)完成后,您将如何设置回调?
答案 0 :(得分:7)
Eval不是异步的,因此您不需要回调。只需将你的函数调用放在下一行。
您正在躲避的脚本可能会执行异步操作,在这种情况下,您需要解析JS,查找异步代码,并向其添加回调(以字符串形式)。
最好尽量避免使用eval。它几乎不是解决问题的正确方法。
答案 1 :(得分:1)
只需将要执行的代码放在要回调的数据中即可进行评估。当然,如果在评估数据中你有一些异步运行的动态生成函数,那么你会遇到问题。
答案 2 :(得分:1)
eval(data)
是一个阻止通话。您所要做的就是在eval()
来电之后输入“回拨”代码,并在eval()
完成后执行。