2016-09-27 10 views
2

APIリクエストを行うと、APIサーバーからJSONオブジェクトが返されます。 JSONオブジェクトをJavascriptで指定された型にパースするにはどうすればよいですか?JavascriptでJSONオブジェクトを指定された型に解析する方法は?

これは私に返されるものです:

{ 
    "student_name": "Joshua", 
    "classes": [ 
     "A1", 
     "A2", 
     "A3", 
    ] 
    "food": { 
     "size": "slice", 
     "type": "pepperoni", 
    } 
} 

だから、配列、classes、オブジェクト、food、および文字列student_nameを解析したいと思いますし、それらをログ慰めます。

答えて

0

JSONはJavaScript Object Notationです.JSONスニペットは既にJavaScriptオブジェクトを表しています。あなたはそれを行うにはJSON.parse()を使用する必要が

var myArray = myObject.classes; //should give you an array 
console.log(myArray[0]); //should print "A1" 

var myFood = myObject.food //should give you a food object with size and type properties 
console.log(myFood.size); //should print "slice" 
1

を::

var myObject = JSON.parse(json); 

そしてあなたがアクセスすることができた:

var myData = { 
    "student_name": "Joshua", 
    "classes": [ 
     "A1", 
     "A2", 
     "A3", 
    ] 
    "food": { 
     "size": "slice", 
     "type": "pepperoni", 
    } 
} 

var myObject = JSON.parse(myData); 

console.log(myObject.student_name); //Output: Joshua 
console.dir(myObject) //to see your object in console. 

表示単一の要素:

をあなただけ parseにそれらを使用してい
console.log(myData.classes[0]);  

表示配列のすべての要素:詳細については

var arr = myData.classes; 

for(var i in arr) 
{ 
    console.log(arr[i]); 
} 

私は答えとupvoteを受け入れる前に、しかし、コンソールの理由何
+0

申し訳ありません.logではなく.dir?また、console.log(myData.classes)を実行すると、それらの文字列を含む配列としてログに記録されます。しかし、私はクラスの配列の最初の文字列、 'A1'をログに記録する方法は?そして、どのように私は動的に配列の文字列をログオンするでしょうか?配列のサイズが設定されていないためです。 – Walter

+1

'console.log'は文字列を返し、' console.dir'はオブジェクトを返します。 –

+0

console.log(myData.classess [0])を使用してください。クラス配列の最初の要素を取得する –

関連する問題