使用JavaAPI格式化JavaScript
我正在用java中的velocity生成JavaScript代码 例如:我生成了JavaScript并得到以下字符串:使用JavaAPI格式化JavaScript,java,javascript,velocity,Java,Javascript,Velocity,我正在用java中的velocity生成JavaScript代码 例如:我生成了JavaScript并得到以下字符串: importClass(java.util.ArrayList); function fun(arg) { if (true){ return true;} else{ return true;}} 是否有任何java API采用此字符串并按以下方式格式化此JavaScript: importClass(java.util.ArrayList); function f
importClass(java.util.ArrayList); function fun(arg) { if (true){ return true;} else{ return true;}}
是否有任何java API采用此字符串并按以下方式格式化此JavaScript:
importClass(java.util.ArrayList);
function fun(arg) {
if (true){
return true;
}
else{
return true;
}
}
闭包编译器
您可以使用谷歌的闭包编译器。它格式化、压缩、优化并查找JavaScript代码中的错误 要快速了解它能做什么,您可以
例子 对于示例字符串
importClass(java.util.ArrayList); function fun(arg) { if (true){ return true;} else{ return true;}}
如果只想格式化,请使用编译选项“仅限空白”和“漂亮打印”,返回:
importClass(java.util.ArrayList);
function fun(arg) {
if(true) {
return true
}else {
return true
}
}
;
总之,使用closurecompiler,您可以选择几个选项来优化和/或格式化输入代码(以字符串或文件URI的形式给出),或者以字符串的形式返回优化/格式化的JS,或者将其保存到文件中
我真的可以推荐使用“简单”优化模式。对于较长的Java脚本,它确实为您节省了大量不需要的字节。此外,它还加快了脚本执行速度
对于示例字符串,编译选项“Simple”(而不是“仅限空白”)和“Pretty print”返回
如您所见,两个fun()
函数的结果是相同的(布尔true
)。然而,第二个已经删除了所有无用的代码(通过保持有效性!),执行速度会更快
下载和参考 现在,实际的编译器是用Java编写的,可以作为(更新2014-07-10:)使用 作为第二种选择,您可以实现自己的包装器类来与RESTAPI()通信。不需要太多的工作/代码 更多信息可在此处获得:
希望能有所帮助。可能重复:@Eloff:我浏览了这个链接,找到了几种格式化javascript的方法。但仍在寻找可以直接用于格式化JAVA脚本的JavaAPI。虽然,我可以在我的java代码中使用命令行选项,但如果能找到直接API,那就太好了。这就是我想要的。非常感谢分享这个。让我把这个应用到我的项目中,并提供反馈。
importClass(java.util.ArrayList);
function fun() {
return!0
}
;