2016-11-08 15 views
0

Javascriptオブジェクトにキーの設定値を追加するにはどうすればよいですか?私はjavascriptの変数を次のようしている

this.Edges = {}; 

は、その後、私は

this.Edges[path] = {edgeDst}; 

だから、この時点で変数をエッジなかった

エッジ[ '232kb32i23'] = {edgeDstようsomehingです。 ' AND_m_5 '}

その後私がしたとき

this.Edges[path] = {edgeSrc}; 

edgeDstで追加した値を上書きしました。 = エッジ[ '232kb32i23']:

エッジ[ '232kb32i23'] = {edgeSrc: 'B_m_5'}この時点のエッジで は、次のようなものです

しかし、私はのようなものを作るにしたいです{edgeDst: 'AND_m_5'、edgeSrc: 'B_m_5'}

ここでは、edgeSrcとedgeDstを同時に追加することはできません。

これはどのように達成できますか?

+0

あなたは '= {edgeSrc}をやってから、キーと値の両方を取得するにはどうすればよい;'に何'edgeSrc'など? – adeneo

+2

@adeno - ES2015またはES2016にその答えがあります –

+0

@JaromandaX - それは私が疑ったものですから、私の質問ですか? – adeneo

答えて

4

次を使用することができます。

var Edges = {};     // these are just so that you can run the snippet 
 
var path = '232kb32i23'; 
 

 
Edges[path] = {};    // set Edges[path] to a new object 
 
Edges[path].edgeDst = 'AND_m_5'; // set the edgeDst property on Edges[path] 
 
Edges[path].edgeSrc = 'B_m_5'; // set the edgeSrc property on Edges[path] 
 

 
console.log(Edges);    // run the snippet to see the result 
 
console.log(Edges['232kb32i23']);

あなたはあなたのアプリケーションのためのthisを使用するようにコードを変更する必要がありますが、私はできるだけ簡潔例を作ってみました。

+0

ありがとうございました。出来た。 – cybodroid

0

新しいES6構文砂糖を使用する場合。あなたはこのような何かを行うことができますように見えます:ここで

this.Edges = {}; 

var path = 'the_path', 
    edgeDst = 'edgeDst', 
    edgeSrc = 'edgeSrc'; 

this.Edges[path] = { edgeDst, edgeSrc }; 

console.log(this.Edges) => {edgeDs:"AND_m_5",edgeSrc:"edgeSrc"} 

が機能の例へのリンクです:https://jsfiddle.net/xwf3wadr/

関連する問題