簡體   English   中英

將元素添加到數組關聯數組

[英]Add element to array associative arrays

將新元素添加到關聯數組的所有 示例都是“簡單”的方式並且只有一維數組 - 我的理解問題是在數組中有數組(或者是數組中的對象?)。

我有以下數組:

var test = [
            {
                value: "FirstVal",
                label: "My Label 1"
            },
            {
                value: "SecondVal",
                label: "My Label 2"
            }
           ];

兩個問題:如何從頭開始生成這個關聯數組(是...對象)? 如何將新元素添加到現有數組?

謝謝你幫我理解javascript。

我不確定你的意思是“從頭開始”,但這可行:

var test = [];  // new array

test.push({
                value: "FirstVal",
                label: "My Label 1"
            });  // add a new object

test.push({
                value: "SecondVal",
                label: "My Label 2"
            });  // add a new object

雖然您發布的語法是一種非常有效的“從頭開始”創建它的方法。

添加一個新元素將以相同的方式運行test.push({..something...});

這是一個對象數組。

您可以通過調用test.push({ ... })將更多對象放入其中

var items = [{name:"name1", data:"data1"}, 
             {name:"name2", data:"data2"}, 
             {name:"name3", data:"data3"}, 
             {name:"name4", data:"data4"}, 
             {name:"name5", data:"data5"}]

var test = [];

for(var i = 0; i < items.length; i++){
    var item = {};
    item.label = items[i].name;
    item.value = items[i].data;
    test.push(item);
}

使測試等於

[{label:"name1", value:"data1"}, 
 {label:"name2", value:"data2"}, 
 {label:"name3", value:"data3"}, 
 {label:"name4", value:"data4"}, 
 {label:"name5", value:"data5"}]

從頭開始,以下行將使用Array.prototype.push方法創建一個包含對象的數組:

var test = [];          // Create an array
var obj = {};           // Create an object
obj.value = "FirstVal"; // Add values, etc.
test.push(obj);

暫無
暫無

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

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