2012-03-19 19 views
-1

でのオブジェクトの配列を作成します。私はJavaScriptで動的にこの構造体を作成したいのJavascript

var myCols = [ 
    {data1: 'A', data2: '0', data3: 1}, 
    {data1: 'B', data2: '1', data3: 1}, 
    {data1: 'C', data2: '2', data3: 1} 
]; 

はどうすればこれを行うことができますか?

ありがとうございました。

+9

何が問題なの? – j08691

+0

はキーと値が動的ですか? – ManseUK

+0

作成した配列の内容は、いつでも変更できます。たとえば、次のようにします。 'myCols [0] .data1 =" New value "; ' –

答えて

1

あなたの質問は非常に曖昧です。それを動的に生成する方法は無限にあります。どのように行うかは、開始するデータ、作成する方法と時期を決定します。例えば、DBのクエリの後にサーバー側で上記のコードを動的に生成することもできますし、このループのようなもので生成することもできます。これはdata1の文字数が多く、data2の文字数(文字列)配列オブジェクトの26

var myCols = []; 
var myData, i; 
for(i = 0; i < 3; i++){ 
    myData = {}; 
    myData.data1 = String.fromCharCode(65 + i); 
    myData.data2 = "" + i; 
    myData.data3 = 1; 

    myCols.push(myData); 
} 
+0

ありがとうございました。できます。 – Natasha

0

これはこの意味ですか?プッシュを使用して項目を「動的に」配列に追加します。

// Create empty array 
var myCols = []; 

// Add items at a later time to the array using push 
myCols.push({data1: 'A', data2: '0', data3: 1}); 
// ... (repeat pushing more items) 
+0

ありがとうございます。できます。 – Natasha

0

使用プッシュ方式に以下の何かに3を増やすあなたは

するvar anarrのように= []またはVARのanarr =新しい配列()を使用することができます。

と、あなたは

anarr.push(値)を使用していずれかで配列いずれかの要素を押すことができます。

ここで、値は何でもかまいません。

次のコードを理解してください。

var keys = ['data1','data2','data3']; 
var arr = new Array(); 

    function add(a,b,c){ 
     temp_dict = {} 
     temp_dict[keys[0]]=a 
     temp_dict[keys[1]]=b 
     temp_dict[keys[2]]=c 
     arr.push(temp_dict); 
    } 
     add('A','0',1); 
     add('B','1',1); 
     add('C','2',1); 
     console.log(arr); 
関連する問題