javascript:多维数组操作

javascript:多维数组操作,javascript,Javascript,我有这样的东西(数据应该是一个全局变量): 现在我想用这样的方法来改变这些变量: function toggleStatus(element) { data[fields][element] = 1; } 当然,这是行不通的,但以类似方式操作数据的正确方法是什么 基本上,我需要创建一个多维数组,根据用户输入更改其状态。这应该可以正常工作,但必须将字段括在引号中: data['fields'][element] = 1; 或 如果元素作为字段属性的名称之一传入,则应该可以使用 尝试: 也许这会

我有这样的东西(数据应该是一个全局变量):

现在我想用这样的方法来改变这些变量:

function toggleStatus(element) {
data[fields][element] = 1;
}
当然,这是行不通的,但以类似方式操作数据的正确方法是什么


基本上,我需要创建一个多维数组,根据用户输入更改其状态。

这应该可以正常工作,但必须将
字段
括在引号中:

data['fields'][element] = 1;


如果
元素
作为字段属性的名称之一传入,则应该可以使用

尝试:


也许这会起作用?

请注意,如果您处理的是对象数组,它看起来更像这样:

  var data = [{
        fields:[{
          id: 0,
          ticket: 0,
          description: "bar"
         },
         {
          id: 1,
          ticket: 1,
          description: "foo"
         }] 
  }];
然后您可以访问以下属性:

数据[0]。字段[0]。id

data[0]。字段[1]。description=“more foo”


数据[0]。字段[1]['description']=“more foo”

此外,您还可以执行以下操作:data.fields.element=1@不,你不能
.element
将被解释为查找名为
element
的属性。费亚,你说得对。我误解了这个问题。我的印象是@WraithLux想给他的field对象添加一个元素属性。
data.fields[element] = 1;
data['fields']['id'] = 1;
  var data = [{
        fields:[{
          id: 0,
          ticket: 0,
          description: "bar"
         },
         {
          id: 1,
          ticket: 1,
          description: "foo"
         }] 
  }];