簡體   English   中英

將子數組添加到Javascript對象中

[英]Add a sub-array into an object in Javascript

我有這個對象數組:

    myList = [
        { name: 'line', icon:'line-chart' },
        { name : 'spline', icon: 'spline-chart' },
        { name : 'bar', icon: 'bar-chart' }
    ];

這些對象中的每一個都代表一個按鈕。 單擊該按鈕時,應激活該類型的圖表。

我必須創建的另一個功能是,單擊這些按鈕時,每個按鈕都會激活(或停用)其他按鈕。

例如, line按鈕必須激活其他3個按鈕,而splinebar必須分別激活一個。

line - single, double, triple
spline - single
bar - triple

輔助按鈕集是這樣的:

    mySecondList = [
        { name: 'Single', icon:'a' },
        { name : 'Double', icon: 'b' },
        { name : 'Triple', icon: 'c' }
    ];

當我想在兩者之間建立聯系時,我的問題就來了。

我試圖將第二個數組合並到第一個數組中,如下所示:

myList = [
    { name: 'line', icon:'line-chart', [{ name: 'Single', icon:'a' }, { name : 'Double', icon: 'b' }, { name : 'Triple', icon: 'c' }] },

    { name : 'spline', icon: 'spline-chart', [{ name: 'Single', icon:'a' }] },

    { name : 'bar', icon: 'bar-chart', [{ name: 'Single', icon:'a' }] }
];

但這似乎不是正確的方法。

有什么建議么?

您不能只向對象添加值,還需要遵守鍵值格式。

含義:

 { name : 'spline', icon: 'spline-chart', FIELD_NAME: [{ name: 'Single', icon:'a' }] } 

錯誤

myList = [
{ name: 'line', icon:'line-chart', [{ name: 'Single', icon:'a' }, { name : 'Double', icon: 'b' }, { name : 'Triple', icon: 'c' }] }
];

你不能在沒有放置param情況下在object插入array

myList = [
{ name: 'line', icon:'line-chart', data: [{ name: 'Single', icon:'a' }, { name : 'Double', icon: 'b' }, { name : 'Triple', icon: 'c' }] }
];

在那里,您有data參數作為array ,可以在其中放置objects

myList[0].data.push({ name : 'Triple', icon: 'c' });

[0]表示myList第一個object

向數組添加名稱。 使用這樣的東西:

var myList = [
    { name: 'line', icon:'line-chart', arr: [{ name: 'Single', icon:'a' }, { name : 'Double', icon: 'b' }, { name : 'Triple', icon: 'c' }] },

    { name : 'spline', icon: 'spline-chart', arr: [{ name: 'Single', icon:'a' }] },

    { name : 'bar', icon: 'bar-chart', arr: [{ name: 'Single', icon:'a' }] }
];

“ myList”列表的內部元素是對象,並且作為對象的每個屬性都需要一個名稱,因此您嘗試添加的數組無法添加導致名稱丟失的原因...正確的代碼應為:

myList = [
    { name: 'line', icon:'line-chart', myArray:[{ name: 'Single', icon:'a' }, { name : 'Double', icon: 'b' }, { name : 'Triple', icon: 'c' }] },

    { name : 'spline', icon: 'spline-chart', myArray:[{ name: 'Single', icon:'a' }] },

    { name : 'bar', icon: 'bar-chart', myArray:[{ name: 'Single', icon:'a' }] } 

];

暫無
暫無

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

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