我怎样才能将一个对象推入jquery data()
对象是一个数组。我想结束包含一个对象数组的数据属性numbers
,我通过循环访问某个特定类的某个html来获取它。我不明白我如何将每个对象推入数组。迭代通过jQuery数据()对象并将它们推送到另一个数据()对象(数组)
我的第一个问题是,如果我在对象中有一些数据,我该如何看待整个对象。看起来这曾经是我可以做
$('#div1').data('values', {'one' : 'UNO', 'two' : 'DUE'});
console.log($('#div1').data('values'))
Chrome就会给我一点点扩展的对象来看待。现在我只看到[object Object]
我仍然可以看到他们,如果我做
console.log($('#div1').data('values').one)
。
但是,如果我不确切知道data()
对象中的内容,这似乎更不方便。检查看看我有多接近实现这一点很有用。
一旦我给你我所有的数据,以各自的对象,
$(document).ready(function(){
$('#div1').data('values', {'one' : 'UNO', 'two' : 'DUE'});
$('#div2').data('values', {'three' : 'TRE', 'four' : 'QUATTRO'});
$('#div3').data('values', {'five' : 'CINQUE', 'six' : 'SEI'});
$('#div4').data('values', {'seven' : 'SETTE', 'eight' : 'OTTO'});
});
我怎么能遍历这些对象(所有与共享add
类),并把它们在data.values
包含的对象到另一个data()
对象?在这里,我试图做到这一点的body
的数据对象,numbers
:
`$('body').data('numbers', []);`
使
$('body').data('numbers') =
['div1': {
'one': 'UNO',
'two': 'DUE'
},
'div2': {
'three': 'TRE',
'four': 'QUATTRO'
},
'div3': {
'five': 'CINQUE',
'six': 'SEI'
},
'div4': {
'seven': 'SETTE',
'eight': 'OTTO'
}]
我的尝试已经失败:
$('.add').each(function (index, element) {
$('body').data(numbers, {
element.attr('id'): element.data('values')
//could not understand how to use push here, though it seems likely that's the answer
});
Javascript并没有字面意义上的“关联数组”。你希望你的最终结果是A.一个无序的名称/值对集合(对象)或B.一个有序的值列表(数组)? –
@AaronKurtzhals你是对的。我不知道为什么我将它设置为一个数组。一个对象是我所追求的。谢谢。 – 1252748