0

我目前使用 jQuery 来构建Array这样的:

var arr = new Array();
   $('#some-form .some-input').each(function() {
   arr.push($(this).val());                                                                                                                    
});

它构建了类似的东西:

arr[0] = 'bar'
arr[1] = 'foo'

现在我想要一个数据结构(一个“地图”?一个 JSON 数组?)来做这样的事情:

{ 'key1' : 'foo'
  'key2' : 'bar' }

因为我现在要从$('#some-form .some-input').

C中,我认为这可能是一个链表,因为您事先不知道数据结构有多大,因此您不会使用数组。但是,我在这里使用一个数组,这可能不是最好的主意?我需要什么样的结构?

非常感谢。

4

1 回答 1

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(感谢您提醒我 :))

于 2012-10-22T19:12:48.570 回答