0

次のようなJavaScriptコードにJSONオブジェクトがあります。

{"0" : "Jul 09, 2012 05:05 PM", "3" : "Jul 09, 2012 05:08 PM"}

を使用してこの JSON をデコードしました

var jsonObj = eval('(' + {/literal}{$json}{literal} + ')');

を使用して値にアクセスできます

jsonObj[i]

しかし、jsonObj [2]にアクセスするとエラーが発生します。これは、jsonにないためです。

したがって、JSON の最初の部分、つまりキー部分にアクセスする方法が必要です。それらをJSの配列に保存し、それらをループするようにします。

4

3 に答える 3

2

評価は悪です。とにかく、json のプロパティ (「キー」) をループしたい場合は、次のようにします。

for(key in jsonObj) {
   if(jsonObj.hasOwnProperty(key)) {
     //do something with the values
     // jsonObj[key] 
   }
}
于 2012-07-10T01:06:10.373 に答える
0
if (jsonObj.hasOwnProperty('2')) {

}
于 2012-07-10T01:03:35.177 に答える
0

最新のブラウザーには、「静的」メソッド Object.keys() があります。古いブラウザ用の shim があります。次に、返されたキーの配列をループするか、ほとんどのフレームワークを使用している場合は .indexOf() または .inArray() を使用できます。

于 2012-07-10T01:08:17.970 に答える