2016-03-14 44 views
0

我有这样的阵列:推双阵列元件的阵列的jQuery

var array = { 
item: 'value', 
subArray: [] 
} 

我想通过一些数据使用$.each函数来循环和推key:value值到subArray推阵列后应该是这样的

var array = { 
item: 'value', 
subArray: [item: 'value', item: 'anothervalue', ...] 
} 
目前我使用这个我 $.each循环内

$('class').each(function() { 
    array.subArray.push({ 'item': $(this).html() }); 
}); 

然而,目前的结果是这样的:

var array = { 
item: 'value', 
subArray: [{item: 'value'}, {item: 'anothervalue'}, ...] 
} 

任何意见,将不胜感激。谢谢!

+1

对象首先,你有一个对象不是一个数组。其次,JavaScript没有关联数组。你能得到的最接近的是一组对象,这就是你最后的例子。 –

回答

2

您要的结果subArray: [item: 'value', item: 'anothervalue', ...]无效。数组是而不是键/ val对 - 这是一个对象。你得到的结果是你想要的实际结果。

[{item: 'value'}, {item: 'anothervalue'}, ...] 

是完全有效的对象数组。要添加到上面代码的困惑:

var array = { 
    item: 'value', 
    subArray: [] 
} 

以上是不是一个数组 - 它具有两个属性(itemsubArray

+0

感谢您的回答。在后面的函数中,我将'array'转换为JSON,JSON应该是这样的:'subArray {“item”:“value”,“item”:“anothervalue”}' - 任何想法如何为了达成这个? – Frank

+1

@Frank JSON结构是完全无效的,因为你有它内部的'项目'键重复。 –

+0

@RoryMcCrossan:谢谢你让我知道,我将不得不改变一些东西:) – Frank