2012-02-16 13 views
2

私はjavascriptのnoobです。私はJavaScript関数に渡しているjsonの文字列を作成した後にgoogle gson APIによって作成されたJSON文字列を持っています。このにわたり反復または私はvalidationCodeまたはcaseNumberを見つけなければならないが、これは文字列であるなどの主要なものの値を取得する方法JSONオブジェクトの文字列を繰り返します。

'{"validationCode":"V10291","caseNumber":"2010CF101011","documentSource":"EFILE","countyDocumentID":"CD102","documentTitle":"D Title","signedDate":"01/01/2012","signedBy":"CPSJC","comments":"YES Comments"}' 

を次のようにjavascriptの変数に私は、文字列を持っていますか?任意の提案は、あなたがJSON.parseでネイティブJavaScriptオブジェクトにそれを得ることができます歓迎

答えて

8

です:

var obj = JSON.parse(yourJSONString); 

次にあなたがループ内

for(var k in obj) 
    if ({}.hasOwnProperty.call(obj, k)) 
     console.log(k, " = ", obj[k]); 

または特定のキーにアクセスするための標準とキーを反復処理することができますvalidationCodeまたはcaseNumberのように直接:

var caseNum = obj.caseNumber; 
var validationCode = obj.validationCode; 
本当に古いブラウザは JSON.parseをサポートしていませんので、あなたがそれらをサポートする場合、あなたはパパクロックフォードの json2、または parseJSONユーティリティメソッドを持っているのjQueryを使用することができますいずれか

注意。

+0

これはjson Stringと同じように機能してくれてありがとうございます。私はJsonオブジェクトを持っていなかったので、他の答えはなかった –

+0

本当に古いjavascriptはIE 6を含んでいますか? :) –

+1

@SandeepNair - はい。 IE7でもサポートやJSONオブジェクトが欠けています。申し訳ありませんが、あなたがそれらをサポートする必要がある場合は、jQueryまたはcrockfordのjson2(両方とも上記にリンクされています)を使用して構文解析を行うことをお勧めします –

1

あなたは、オブジェクトのプロパティをループしfor ... inを行うことができます:

var person={fname:"John",lname:"Doe",age:25}; 

var x; 

for (x in person) 
{ 
    document.write(person[x] + " "); 
} 

http://www.w3schools.com/js/js_loop_for_in.asp

0

をあなたが使用できるjQueryのフレームワークを使用している場合:あなたはJSON.parse()かを使用することができない場合はjQuery.parseJSON

eval(安全性が低い)を使用することができます。

関連する問題