我想处理/解析和更改一些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代码可能更复杂,甚至可以缩小。该代码也可能会漏掉一些分号;

最佳答案

一种非常脏的方法是在每个打开括号,关闭括号和分号之后插入代码段。像这样:

 code.replace(/\;/g, '; checkPause(); ').replace(/\{/g, '{ checkPause(); ').replace(/\}/g, '} checkPause(); ')


正确的方法是使用解析器。

08-15 15:55