for循环中 动态创建的变量怎么动态的赋值呢?

clipboard.png

                    for(var i=0;i<mydata.length;i++){
                               var field = "field" + i;//field0、 field1、 field2 、field3
                              field=mydata[i].CREW_NAME;//1号机组、2号机组 、3号机组 、4号机组
                              console.log(field);
                                    }

我怎么让 field0 等于1号机组 以此类推呢?
// console.log(field0);
// console.log(field1);
// console.log(field1);
// console.log(field1);

阅读 3.1k
2 个回答
for(var i=0;i<mydata.length;i++){
   var field = "field" + i;
   window[field] = mydata[i].CREW_NAME;//1号机组、2号机组 、3号机组 、4号机组
}
console.log(window.field0);
console.log(window.field1);

使用普通对象存储

var fields = {};
for(var i=0;i<mydata.length;i++){
   var field = "field" + i;
   fields[field] = mydata[i].CREW_NAME;//1号机组、2号机组 、3号机组 、4号机组
}
console.log(fields.field0);
console.log(fields.field1);
  var mydata =[
            {
                CREW_NAME:'1号机组',
            },
            {
                CREW_NAME:'2号机组',
            },
            {
                CREW_NAME:'3号机组',
            },
            {
                CREW_NAME:'4号机组',
            }

        ];
        var field=[];
        mydata.forEach( (item)=> {
            field.push(item.CREW_NAME)
        });
        console.log(field[0]);
        console.log(field[1]);
        console.log(field[2]);
        console.log(field[3]);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题