2016-09-11 4 views
0

JSONメッセージを送信するために私のアプリからAJAX呼び出しを発行しています。 私はコールにこの変数を渡す:変数に保存されたJSONにキーが追加されています

json_msg = {"object":"page", 
      "entry":[ 
       {"id":"317614815243036", 
        "time":1473615625653, 
        "messaging":[ 
           {"sender":{id":"1142389195826076"}, 
           "recipient":{"id":"317614815243036"},   
           "timestamp":1473615625498, 
           "message":{ 
              "mid":"mid.1473615625491:99adedcab35dd94768", 
              "seq":4741, 
              "text":"Hey" 
              } 
           }] 
       } 
      ] 
      } 

しかし、私はconsole.log(json_msg)を行うとき、私はこれを取得:

json_msg = {"object":"page", 
       "entry":[ 
        0:{"id":"317614815243036", // A ZERO ADDED HERE 
         "time":1473615625653, 
         "messaging":[ 
           0: {"sender":{id":"1142389195826076"}, // A ZERO ADDED HERE 
            "recipient":{"id":"317614815243036"},   
            "timestamp":1473615625498, 
            "message":{ 
               "mid":"mid.1473615625491:99adedcab35dd94768", 
               "seq":4741, 
               "text":"Hey" 
               } 
            }] 
        } 
       ] 
       } 

ストレート変数を割り当てる後に追加された2つの「0」キーがあります。 (テストするために、私はコールをコメントアウトし、変数を記録した)。

これは確かに愚かな間違いですが、私はconsole.logの出力がJSONではない起源

+0

「id」の周りに '' 'がありません – Endless

+0

コピーエラー、編集中です、スクリプトにはありません –

答えて

4

を見つけることができません。

配列要素のインデックスを示します。これは正常です。

+0

いいえJSONはJavaScriptオブジェクトではありませんが、これらのキーはそこにありますが、同じ問題です。受信したJSONに余分なキーがあります –

+0

@GrahamSlick - 配列の仕組みです各メンバはゼロから始まる整数プロパティ名を取得します – Quentin

+0

'console.log( JSON.stringify(json_msg、null、2)) 'との差を比較します。 – Endless

関連する問題