簡體   English   中英

如何在數組中推送對象?

[英]How to push an object in an Array?

我試圖將數組推入一個對象,但我總是錯誤。

fCElements = [],
obj = {};

obj.fun = myFunction;
obj.id = 2;

fCElements.push ({

   obj,
   myid:2,
   name:'klaus'     

})

我如何推進像“myFunction”這樣的數組函數?

謝謝

在Object literal中,您只能提供鍵值對。 你的obj沒有任何價值。

相反,你可以這樣做

var fCElements = [];
fCElements.push({
    obj: {
        fun: myFunction,
        id: 2
    },
    myid: 2,
    name: 'klaus'
});

現在,您正在推送到陣列時動態創建一個新對象obj 現在,您的fCElements看起來像這樣

[ { obj: { fun: [Function], id: 2 }, myid: 2, name: 'klaus' } ]

您需要為obj屬性指定名稱(或值)。

var obj = {};

obj.fun = myFunction;
obj.id = 2;

fCElements.push ({

   obj:obj,
   myid:2,
   name:'klaus'     

});

您推送到陣列的對象似乎已關閉。 它會嘗試推送這個對象:

{
    {fun: myfunction, id: 2},
    myid: 2,
    name: 'klaus'
}

哪個是無效對象,因為第一個值沒有鍵。 你應該這樣做:

fCElements.push ({
   myObj:obj,
   myid:2,
   name:'klaus'     
});

暫無
暫無

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

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