开发者

Is it possible to add a callback to eval(data);?

开发者 https://www.devze.com 2023-01-18 06:11 出处:网络
So when eval(data) is complete, how would 开发者_开发百科you set a callback?Eval is not asynchronous, so you don\'t need a callback. Just put your function call on the next line.

So when eval(data) is complete, how would 开发者_开发百科you set a callback?


Eval is not asynchronous, so you don't need a callback. Just put your function call on the next line.

The script you are evalling might do something asynchronous, in which case you would need to parse the JS, find the asynchronous code, and add a callback to that (in string form).

Best to avoid eval in the first place though. It is almost never the right solution to a problem.


Just put the code you want to execute on callback in the data that is going to be evaluated. Of course you will have problem if in the evaluated data you have some dynamic generated function that runs asynchronously.


eval(data) is a blocking call. All you have to do is put your "callback" code after your eval() call, and it will be executed once the eval() is finished.

0

精彩评论

暂无评论...
验证码 换一张
取 消