我使用Java的ScriptEngine来执行JavaScript代码。我使用Invocable接口,因此我可以将脚本代码用作实现Java接口的普通Java对象。
如果是JavaScript代码
我在执行代码时从Rhino或UndeclaredThrowableException获取内部异常。两者都是RuntimeExceptions,它们不被“允许”捕获。
有没有办法在执行之前验证代码?或者我必须在这里违反规则并捕获RuntimeExceptions?这对我有用,但最优雅的方式是什么?
答案 0 :(得分:2)
答案 1 :(得分:1)
几年后......对于偶然发现此事的人:
您可以使用严格模式,使用"use strict";
http://ejohn.org/blog/ecmascript-5-strict-mode-json-and-more/
一些代码编辑器提供实时验证(语法...)
答案 2 :(得分:0)
闭包编译器根据注释进行各种验证。
https://developers.google.com/closure/compiler/docs/js-for-compiler