0

私の JSON オブジェクトの構造は次のとおりです。

{ key :
[
{keya1:value1,
keya2:value2,
keya3:[value31,value32...]
keya4:value4
},
{keyb1:value1,
keyb2:value2,
keyb3:[value31,value32...]
keyb4:value4
},
...
..
{keys1:value1,
keys2:value2,
keys3:[value31,value32...]
keys4:value4
}
]
}

シンプルな json.parse を使用してみましたが、うまくいきません。このような構造では、キーの各インスタンスを安全に反復処理し、キーの値のすべての keya-valuea、keyb-valueb .. ペアを表示できるように、解析をどのように行う必要がありますか? どうもありがとう!

編集:実際には意図的に引用符を省略しました。元の JSON データには、キーと値が引用符で囲まれています。

4

3 に答える 3

2

getJsonArray を使用してみてください

JSONObject json = (JSONObject) JSONSerializer.toJSON(response);

JSONArray array= json.getJSONArray("key");

またはgetString("key");該当する場合

于 2013-01-16T08:29:15.020 に答える
0

各キーと値を引用してみてください。

var str = '{ key : \
    [ \
        {\
            keya1:value1, \
            keya2:value2, \
            keya3:[value31,value32], \
            keya4:value4 \
        }, \
        {\
            keyb1:value1, \
            keyb2:value2, \
            keyb3:[value31,value32], \
            keyb4:value4 \
        }, \
        {\
            keys1:value1, \
            keys2:value2, \
            keys3:[value31,value32], \
            keys4:value4 \
        } \
    ] \
}';

var pattern=/(\w+\d*)/ig;
var json=str.replace(pattern, '"$1"');
var parsedJSON=JSON.parse(json)
console.log(parsedJSON);

これが役立つことを願っています。

于 2013-01-16T08:53:42.540 に答える
0

JSON が無効です。使用できる正しい JSON がある場合は、配列の後に二重引用符とコンマが必要ですJSON.parse

{ "key" :
        [{
          "keya1":"value1",
          "keya2":"value2",
          "keya3":["value31","value32..."],
          "keya4":"value4"
         },
         {
          "keyb1":"value1",
          "keyb2":"value2",
          "keyb3":["value31","value32..."],
          "keyb4":"value4"
         },
         {
          "keys1":"value1",
          "keys2":"value2",
          "keys3":["value31","value32..."],
          "keys4":"value4"
         }
    ]
}
于 2013-01-16T08:43:42.567 に答える