簡體   English   中英

如何在javascript對象中填充數組?

[英]How do I fill up an array within an object in javascript?

我有點困惑。 我有以下對象數組:

dataTest.rows = [{
        "rowHeader": "",
        "rowDesc": ["INFO1"],
        "rowVal": [
            ["1", "2", "3", "4", "5", "6", "7", "8", "9"]
        ]
    }, {
        "rowHeader": "",
        "rowDesc": ["INFO2"],
        "rowVal": [
            ["1", "2", "3", "4", "5", "6", "7", "8", "9"]

        ]
    }];

如果object1中的rowVal為空,如何用循環填充array rowval內的數組?

我試過了

for (i=0; i<9; i++){
  (dataTest.rows[0]).rowVal[0][i]=i;
}

我應該完全刪除標簽“ rowVal”,然后將其添加到對象中以重建它嗎?

 var dataTest={}; dataTest.rows = [{ "rowHeader": "", "rowDesc": ["INFO1"], "rowVal": [[]] }, { "rowHeader": "", "rowDesc": ["INFO2"], "rowVal": [[]] }]; for (var i=0; i<dataTest.rows.length; i++){ // iteriates through the dataTest.rows array of objects console.log("Entered row %i",i); for (var j=1; j<=9; j++){ // converts number to string dataTest.rows[i].rowVal[0][j]=j.toString(); console.log(dataTest.rows[i].rowVal[0][j]); } } 

更新:修復了“ dataTest.rows [i] .rowVal [0]未定義”。

您可以使用.forEach()Array方法循環遍歷數組X中的每個項目並將其推入數組Y中。

let dataTest= [{
    "rowHeader": "",
    "rowDesc": ["INFO1"],
    "rowVal": []
}, 

{
    "rowHeader": "",
    "rowDesc": ["INFO2"],
    "rowVal": [
        ["1", "2", "3", "4", "5", "6", "7", "8", "9"]

    ]
}];

dataTest[1].rowVal.forEach(number => {
                dataTest[0].rowVal.push(number)
                })

在此示例中,forEach函數貫穿dataTest [1] .rowVal中的每個項目,並將內部的所有內容壓入dataTest [0] .rowVal中的數組,這應該可以實現您所要的內容。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM