我目前正在使用jQuery来构建Array
,如下所示:
var arr = new Array();
$('#some-form .some-input').each(function() {
arr.push($(this).val());
});
构建类似的东西:
arr[0] = 'bar'
arr[1] = 'foo'
现在我想要一个数据结构('map'?一个JSON数组?)来做这样的事情:
{ 'key1' : 'foo'
'key2' : 'bar' }
因为我现在要从$('#some-form .some-input')
存储多个“事物”。
在C
中,我认为这可能是一个链表,因为你不知道数据结构有多大,所以你不会使用数组。但是,我在这里使用的数组可能不是最好的主意吗?我需要什么样的结构?
非常感谢。
答案 0 :(得分:3)
使用javascript,您可以动态地向对象添加属性,因此您可以执行以下操作:
var arr = {};
$('#some-form .some-input').each(function() {
var $this = $(this);
arr[$this.attr('id')] = $this.val();
});
您可以使用arr.key1; // foo
修改:如下面的评论所示,您也可以使用[]
表示法访问这些值,例如arr['key2'] // bar
(感谢您提醒我:))