在 GWT 中,将 JavaScriptObject 覆盖类型转换为 JSON 字符串的最佳方法是什么?
我目前有
public final String toJSON() {
return new JSONObject(this).toString();
}
这似乎工作正常。我想知道是否有更好的方法。
我从来没有真正尝试过(到目前为止只消耗了 JSON,从来不需要生成它)。这似乎是本机浏览器/javascript 功能。
你可以把它写成:
public native String toJSON() /*-{
return this.toString();
}-*/;
它们本质上只是做完全相同的事情,并且可能导致相同的 JavaScript 输出。优化编译器真的很棒。
我们有一个这样的 JSNI 方法,但是使用 douglas crockfords JSON 库(以防浏览器本身不提供):
https://github.com/douglascrockford/JSON-js
public native String stringify() /*-{
return JSON.stringify();
}-*/;
好在 stringify 可以使用参数来漂亮地打印带有指定缩进的输出......除此之外