2016-10-20 17 views
1

私はJSONの新作です。本当に私は内部のオブジェクトから価値を得る方法を知らないのです。 これで、オブジェクトの応答JSONから「説明」値を取得する必要があります。JSONオブジェクトから値を取得する方法は?

郵便番号95472は、FL、米国では無効です:

JSONデータ:検索結果を期待

{"Fault":{"faultcode":"Client", "faultstring":"An exception has been raised as a result of client data.", "detail":{"Errors":{"ErrorDetail":{"Severity":"Hard", "PrimaryErrorCode":{"Code":"111285", "Description":"The postal code 95472 is invalid for FL United States."}}}}}} 

http://www.jsoneditoronline.org/?id=2ce7ac5f329bd18f06000788ba7946dc

サンプルコード:

 success : function(response) 
     {      
      //alert("response="+response);   
alert("Description="+Fault.detail.Errors.ErrorDetail.PrimaryErrorCode.Description);  
     } 
+0

「詳細」:{「エラー」:{"ErrorDetail":{"重大度": "ハード"、 "PrimaryErrorCode":{"コード": "111285"、 "説明": "郵便コード95472はFL United Statesでは無効です。 "}}}}}}} ';'それから、 'json.Fault.detail.Errors.ErrorDetail.PrimaryErrorCode.Description'としてアクセスできます。 –

+0

Thanks @ alex-szabó。 –

答えて

2

JSON文字列がJSON.parse()メソッドを使用して解析し、文字列から数値を取得するにはString#matchメソッドを使用することができます。

var json = '{"Fault":{"faultcode":"Client", "faultstring":"An exception has been raised as a result of client data.", "detail":{"Errors":{"ErrorDetail":{"Severity":"Hard", "PrimaryErrorCode":{"Code":"111285", "Description":"The postal code 95472 is invalid for FL United States."}}}}}}' 
 

 
console.log("Description=" + JSON.parse(json).Fault.detail.Errors.ErrorDetail.PrimaryErrorCode.Description.match(/\d+/)[0]);


有効なのjsオブジェクトを(すでに解析されて)いた場合は、もう一度それを解析する必要はありません。 `VARのJSON = JSON.parse( '{ "障害":{ "にfaultCode": "クライアント"、 "のfaultString":"例外として提起されているJavaScriptで

var obj = {"Fault":{"faultcode":"Client", "faultstring":"An exception has been raised as a result of client data.", "detail":{"Errors":{"ErrorDetail":{"Severity":"Hard", "PrimaryErrorCode":{"Code":"111285", "Description":"The postal code 95472 is invalid for FL United States."}}}}}}; 
 

 
console.log("Description=" + obj.Fault.detail.Errors.ErrorDetail.PrimaryErrorCode.Description.match(/\d+/)[0]);

+1

これは素晴らしいことです...ありがとうございます! –

+0

@RamaLingam:よろしくお願いします:) –

関連する問題