gpt4 book ai didi

json - 在 GWT JSNI 中迭代 JSONObject

转载 作者:行者123 更新时间:2023-12-02 22:00:48 27 4
gpt4 key购买 nike

我有一个 native 方法应该遍历 JSONObject。有办法实现吗?

public native void foo(JSONObject c)/*-{
var keys = c.@com.google.gwt.json.client.JSONObject::keySet()();

for ( var k : keys ){
alert(k); // this does not fire up. no error in console :(
}
}-*/;

另外,有没有办法将 Java Map 类型转换为 JSONObject

任何提示将不胜感激!谢谢! :)

最佳答案

JSONObject#keySet返回 Set ,这是一个包装 JS 数组的对象(在生产模式下;在 DevMode 中,它是 JVM 中的标准 java.util.Set

所以,要么使用纯 Java:

Set<String> keys = c.keySet();
for (String key : keys) {
Window.alert(key); // or call a JSNI method here if you need?
}

或者先提取底层JavaScriptObject然后你可以使用 JS for…in :

var o = c.@com.google.gwt.json.client.JSONObject::getJavaScriptObject()();
for (var k in o) {
if (o.hasOwnProperty(k)) {
alert(k);
}
}

关于json - 在 GWT JSNI 中迭代 JSONObject,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16982310/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com