我想处理/解析和更改一些Javascript代码,最好是在正则表达式中,如果可能的话(对建议开放)。目的是在JS中的每个语句之后插入一个新的代码片段。
例如:
原始Javascript:
while(true){
Utils.log("hello world");
Utils.sleep(1000);
}
我想插入的代码段:
checkPause();
所以新代码看起来像这样:
while(true){
checkPause();
Utils.log("hello world");
checkPause();
Utils.sleep(1000);
checkPause();
}
checkPause();
上面的例子非常简单,但真正的JS代码可能更复杂,甚至可能缩小。代码也可能会遗漏一些分号;
答案 0 :(得分:1)
执行此操作的一种非常脏的方法是在每个左括号,右括号和分号后插入代码段。像这样:
code.replace(/\;/g, '; checkPause(); ').replace(/\{/g, '{ checkPause(); ').replace(/\}/g, '} checkPause(); ')
正确的方法是使用解析器。