我在Java中具有JSON序列化对象的字符串表示形式,例如"{\"name\":\"John\",\"age\":24}"。我如何解析并将其返回到JavaScript上下文,就像JSON.parse(str)在JS中一样?谢谢。
"{\"name\":\"John\",\"age\":24}"
JSON.parse(str)
Rhino的最新版本只有四个arg,第四个不能为null。为了解决这个问题,您必须创建一个实现org.mozilla.javascript.Callable的简单类:
import org.mozilla.javascript.Callable; import org.mozilla.javascript.Context; import org.mozilla.javascript.Scriptable; public class NullCallable implements Callable { @Override public Object call(Context context, Scriptable scope, Scriptable holdable, Object[] objects) { return objects[1]; } }
然后可以像这样调用NativeJSON.parse:
Object result = NativeJSON.parse(context, scope, jsonString, new NullCallable());