JavaScriptからJSONデータにアクセスできません。 JavaScriptのJSONデータからデータにアクセスする方法を教えてください。
私はjsonデータを持っています
{"success":true,"input_data":{"quantity-row_122":"1","price-row_122":" 35.1 "}}
console.log(data)を試しましたが、印刷オブジェクトオブジェクトをログに記録しました
success:function(data){
console.log(data);
}
console.logの特定のデータを印刷する方法は?数量-row_122 = 1価格-row_122 = 35.1を印刷する必要があります
console.log(JSON.stringify(data))
は必要なことを行います。コードに基づいてjQueryを使用していると仮定しています。
これら2つの特定の値が必要な場合は、それらにアクセスし、log
に渡すことができます。
console.log(data.input_data['quantity-row_122']);
console.log(data.input_data['price-row_122']);
{"success":true,"input_data":{"quantity-row_122":"1","price-row_122":" 35.1 "}}
console.dir()
は必要なことを行います。データの階層構造を提供します。
success:function(data){
console.dir(data);
}
そのようです
> Object
> input_data: Object
price-row_122: " 35.1 "
quantity-row_122: "1"
success: true
console.log(JSON.stringify(data))
は必要ないと思います。
データを取得するには、stringify
なしでこれを実行できます。
console.log(data.success); // true
console.log(data.input_data['quantity-row_122']) // "1"
console.log(data.input_data['price-row_122']) // " 35.1 "
注
input_data
Objectからの値はtypeof "1"
:String
になりますが、ParseIntまたはParseFloatを使用してnumber(Int or Float)
に変換できます。
typeof parseFloat(data.input_data['price-row_122'], 10) // "number"
parseFloat(data.input_data['price-row_122'], 10) // 35.1
オブジェクトをコンソールに出力するには、最初にオブジェクトを文字列化する必要があります。
success:function(data){
console.log(JSON.stringify(data));
}
Console.logで '%j'オプションを使用してJSONオブジェクトを出力しました
console.log("%j", jsonObj);
オブジェクトを印刷したいだけなら
console.log(JSON.stringify(data)); //this will convert json to string;
オブジェクトのフィールドの値にアクセスする場合は、使用します
console.log(data.input_data);
対象
input_data:オブジェクトprice-row_122: "35.1" quantity-row_122: "1"成功:true