2017-03-09 4 views
1

javascriptで複雑なツリー状の配列/オブジェクトを作成して、異なるプロファイルを持つ類似のページを動的に作成しています。静的な性質のため、この配列を主な定数ファイルに保持するのは会社の方針です(もちろん、宣言定数として)。だから私の質問は、どのように私はjavascript配列内の宣言的なプロパティを割り当てることができますですか?宣言的にjavascript配列のプロパティを割り当てます。

var a=[9,6,0,4]; 
a.title='profile 1'; 

が、問題は、これらの命令であり、かつ一定のファイルが一つの大きなオブジェクトであるので、私はそれを使用することはできませんです。私は、次の操作を行うことができます知っています。私は普通のオブジェクトを使うことができると知っていますが、数値索引付け、動的長さ、プッシュ/ポップ法などが本当に必要です。プロパティ名、Object.keys(a)として数字を使うようなものがあります。長さなどがありますが、単純に配列の場合は、それは私の人生をずっと簡単にします。基本的に、私は、これは一つの命令で作成された必要があります。

Array[2] 
>0: Object 
>1: Object 
>length: 2 
>title: "profile1" 
>__proto__: Array[0] 

EDITを: ため混乱のため、私は特に、単一の命令であることを、それを必要とする理由を解消しようとします。私が言及したように、定数ファイルは指示のない大きなオブジェクトですが、それは独自の宣言なので、プロパティでなければなりません。

CONSTANTS={ 
    const1: 'something', 
    const2: 'something', 
    const3: 'something', 
    ... 
    const60: 'something', 
    myArray: [ 
     [{},{},{},{}],//here the title property would go directly on the array 
     [{},{},{},{}],//same 
     [{},{},{},{}],//etc. 
     ... 
    ] 
}; 
+0

あなたは 'var'初期化子でやりたいする方法はありません。なぜ、 'a'をそのプロパティの1つとして配列を持つオブジェクトにしないのですか? – Pointy

+0

私はあなたが出力/ otcomeを期待しているという手掛かりはありません。 – epascarello

+0

これは配列の動的配列であり、各配列にはtitle、meta、hiddenなどの異なるプロパティがあります。私が例として挙げたものが実際の構造ではないことを指定してくれて申し訳ありません。私が最初に言ったように、実際のオブジェクトはツリーの複雑さを持っています。 –

答えて

1

あなたはObject.assignを使用することができます。

var a = Object.assign([1, 2, 3, 4], {title: 'profile 1'}); 
+0

私はもっとネイティブなもの(「:」や「=」のように)を望んでいましたが、それはトリックです!誰かが方法を使わなくても(最適化のために)それは素晴らしいと思いますが、これは私の受け入れられた答えです。 –

+0

一時変数とコンマ演算子を使用できます。私はその投稿に追加します。 – SimpleJ

+0

私の編集を確認します。「CONSTANTS」以外のものは編集できません。 –

関連する問題