2017-01-23 22 views
0

入力した番号に基づいてボタンを作成できるメッセンジャーボットを作ろうとしています。コードは次のようになります。JavaScript - ネストされたオブジェクト配列に動的に追加する方法

let messageData = { 
    "attachment": { 
     "type": "template", 
     "payload": { 
      "template_type": "button", 
      "text": text[1], 
      "buttons":[] 
     } 
    } 
} 

「ボタン」と言う部分:

{ 
    "type":"postback", 
    "title":"button" + i //where i is the button number, 
    "payload":"button" + i 
} 

どうだろう:私は([]内)のボタンを追加したい。ここで、[]このフォーマットに従っています私はこれをすることについて行く?

+1

messageData.attachment.payload.buttons.push(obj)objはJSONです。 –

+0

申し訳ありませんが、この音が "noobish"ですが、どうすればJSONを作成できますか? –

+0

Nvm、それを手に入れました。あなたのソリューションはうまくいきました、ありがとう! –

答えて

0

あなたたとえば、あなたがこれを行うことができます。

messageData.attachment.payload.buttons.push(obj) 

.もこのようmessageData['attachment']

​​

messageData['attachment'] 
の違いを行うことができ、オブジェクトのキーにアクセス

は、2番目のものはta文字列の代わりに変数を指定します。

var use_key = 'attachment'; 
messageData[use_key]; 

は、上記の他の2つのものと同じものにアクセスします。

JSONはJavaScript Object Notationの略です。そして、あなたは正確にあなたの第二の例のようにそれを作る:

{ 
    "type":"postback", 
    "title":"button" + i //where i is the button number, 
    "payload":"button" + i 
} 

あなたはまさにそれがあるとしてプッシュにそれを渡すためにそれを変数に割り当てる、またはすることができます。文字列や数字とほとんど変わりません。余分な情報があなたを恐れることはありません。

関連する問題