JavaScript中的动态对象路径

JavaScript中的动态对象路径,javascript,object,meteor,Javascript,Object,Meteor,我在一个常见的javascript问题上有些挣扎,主要是因为我不知道在Google中找到解决方案的关键词。 我想在纯javascript中做什么: var obj = {label: 'Name', type: 'text', position: 0}; var name = 'label'; var temp = obj."name" // = obj.label = Name 并在meteorJS模板中使用它: data = [ { "Name" : "Task 1",

我在一个常见的javascript问题上有些挣扎,主要是因为我不知道在Google中找到解决方案的关键词。 我想在纯javascript中做什么:

var obj = {label: 'Name', type: 'text', position: 0};
var name = 'label';

var temp = obj."name" // = obj.label = Name
并在meteorJS模板中使用它:

data = [ 
  {
     "Name" : "Task 1",
     "CreationDate" : ISODate("2014-06-03T19:47:48.252Z"),
     "EndDate" : ISODate("2014-07-03T19:47:48.252Z")
  }, 
  {
     "Name" : "Task 2",
     "CreationDate" : ISODate("2014-06-04T19:47:48.252Z"),
     "EndDate" : ISODate("2014-07-04T19:47:48.252Z")
  }
}

columns = [
        {label: 'Name'},
        {label: 'Creation Date'},
        {label: 'End Date'}
    ]

{{#each data}}
  <tr>
    {{#each columns}}
      <td>{{data.label}}</td>
    {{/each}}
  </tr>
{{/each}}
data=[
{
“名称”:“任务1”,
“CreationDate”:ISODate(“2014-06-03T19:47:48.252Z”),
“EndDate”:ISODate(“2014-07-03T19:47:48.252Z”)
}, 
{
“名称”:“任务2”,
“CreationDate”:ISODate(“2014-06-04T19:47:48.252Z”),
“EndDate”:ISODate(“2014-07-04T19:47:48.252Z”)
}
}
列=[
{label:'Name'},
{标签:'创建日期'},
{标签:“结束日期”}
]
{{{#每个数据}
{{{#每列}}
{{data.label}
{{/每个}}
{{/每个}}
所以我的第一个问题(纯javascript语法)没问题。谢谢

var obj = {label: 'Name', type: 'text', position: 0};
var name = 'label';
var temp = obj[name];  //Works fine
对于我的第二个问题,这种方法是有效的(灵感来自于):

{{#每个数据}
{{{#每列}}
{{attr..label}
{{/每个}}
{{/每个}}
Template.worksheets.helpers({
属性:函数(outItem,inItem){
返回outItem[inItem];
}
});

但这有点难看……

你只是想在@elclars评论上展开讨论,根据你给出的第一个例子:obj[name]或obj['label']等于“name”,你应该问一个新问题,而不是问一个新问题作为答案。
{{#each data}}
    <tr>
        {{#each columns}}
            <td>{{attr .. label}}</td>
        {{/each}}
    </tr>
{{/each}}

Template.worksheets.helpers({
    attr : function (outItem, inItem) {
        return outItem[inItem];
    }
});