2013-10-31 27 views
0

我需要這個確切結構創建一個數組對象的自定義結構的對象:創建在JavaScript

{"item1": { 
    0 : { 
     color:"description1", 
     width:"description2", 
     height:"description3" 
    } 
    1 : { 
     color:"description1", 
     width:"description2", 
     height:"description3" 
    } 
    //and so on 
}, 
"item2": { 
    0 : { 
     color:"description1", 
     width:"description2", 
     height:"description3" 
    } 
    //and so on 
} 
//and so on 
} 

Estatically工作正常。現在,我想讓它成爲一種天賦。所以,主要問題是......我怎樣才能在同時構造對象時循環數據? 這是傳入對象,我從工作的一個例子:

[ 
{ 
    "uid": 1, 
    "legendname": "item1", 
    "rows": [ 
     { 
      "uid": 0, 
      "color": "482400", 
      "width": "482400", 
      "height": "25" 
     }, 
     { 
      "uid": 1, 
      "color": "587898", 
      "width": "789658", 
      "height": "30" 
     } 
    ] 
} 
{ 
    "uid": 2, 
    "legendname": "item2", 
    "rows": [ 
     { 
      "uid": 0, 
      "color": "482400", 
      "width": "482400", 
      "height": "25" 
     } 
    ] 
} 
] 
+0

我試過的東西,但似乎你想要達到的目標並不完全清晰。精心闡述? – EricG

+0

EricG,感謝您的支持。 donkeydown給出的答案適用於我。我想創建一個具有精確結構的對象(我在帖子中顯示的內容)。我循環數據並用我的對象結構創建了一個字符串。但數據類型是一個字符串,我需要一個對象類型在應用程序中運行。我不知道該怎麼做,但現在已經解決了。 – user2932685

回答

0

我怎麼能循環,而在同一時間構建對象中的數據?

不清楚。但是,如果你想創建基於進入一個新的結構,你可以使用這個:

// ar = your incoming object 
// b_obj = your result 

var b_obj = {} 
for (var i = 0; i < ar.length; i++) 
{ 
    item = ar[i]; 
    b_item = {}; 
    for (var i_row = 0; i_row < item.rows.length; i_row++) 
    { 
     var row = {}; 
     row.color = item.rows[i_row].color; 
     row.width = item.rows[i_row].width; 
     row.height = item.rows[i_row].height; 
     b_item[i_row] = row; 
    } 
    b_obj[item.legendname] = b_item; 
} 
+0

它工作正常,感謝您給予 – user2932685

+0

如果這是您的答案,您應該批准它。 – donkeydown

+1

或者至少給+1。 – donkeydown