javascript对象索引键

javascript对象索引键,javascript,object,Javascript,Object,我试图找出构造javascript对象的最佳方法。我想要的是一个对象,在这个对象中,我可以通过类似于以下结构的键选择嵌套对象: trackObject: [{ row1:{rowId:"#row1",rowSample: {sampleId:"#1",notes: [0,400,800] } },

我试图找出构造javascript对象的最佳方法。我想要的是一个对象,在这个对象中,我可以通过类似于以下结构的键选择嵌套对象:

        trackObject:
            [{
            row1:{rowId:"#row1",rowSample:
                {sampleId:"#1",notes:
                    [0,400,800]
                }
            },
            row2:{rowId:"#row2",rowSample:
                {sampleId:"#2",notes:
                    [0,400,800]
                }
            },                
        }]
理想情况下,我希望能够通过在“行”层(即第1行或第2行)建立索引来修改此对象。问题是将行名称设置为变量。Ie上面的对象将通过调用trackObject.row1返回我需要的对象,但是由于row1部分需要是动态的,所以我不确定如何从这一点动态索引它

我尝试了一些变化,比如不将trackObject设置为数组而是对象,并将第1行更改为第1行:{rowId…,但之后我无法引用它嵌套的对象属性{rowId


我以前在JSON中使用键设置过对象,按键索引很好,但由于某些原因,我在js中遇到了困难…

您可以使用括号表示法访问对象的成员

var obj = {
  row1: {
    rowId: '#row1'
  },
  row2: {
    rowId: '#row2'
  }
};

// index stored in variable
var index = 'row1';

// get row by using bracket notation
var row = obj[index];

console.log(row.rowId); // '#row1';
<> P>构造JavaScript对象的方便方法。考虑使用接受行索引/编号作为参数的自定义GETTER方法:

风险值数据={ 轨迹对象: { 第1行:{ rowId:row1, 行示例:{ 样本编号:1, 注:[0400800] } }, 第2行:{ rowId:row2, 行示例:{ 样本编号:2, 注:[0400800] } }, }, getRow:函数idx{ var obj=this.trackObject['row'+idx]; 如果{ 抛出新错误未定义的trackObject键:行+idx; } 返回obj; } }; console.logdata.getRow2.rowSample;
console.logdata.getRow5.rowSample;//将抛出未捕获错误:未定义的trackObject键:row5it比数组表示法更重要抱歉,可能值得一提的是,我使用的是React,并且此对象位于组件的getInitialState部分。我认为我不允许像您在上面的get中的回答那样创建变量InitialState…至少在语法上尝试一下会发现错误。同样可以解决我问题的是,如果我可以导航到对象中的下一个键。即查找rowId=row1的对象,并从中查找其同级rowSampleyou可能需要查看