首页 > 解决方案 > 无法将 2015,2016 字段复制到受尊重年份 2015,2016 值的值属性

问题描述

我试图将 2015,2016 复制到受尊敬年份的 2015,2016 价值属性

有什么建议吗?

请参考下面的片段

let arr = [
          [{2015:10,2016:20,values:[{year: 2015, value: 1},{year: 2016, value: 1}]}],
          [{2015:30,2016:40,values:[{year: 2015, value: 2},{year: 2016, value: 2}]}],
          [{2015:50,2016:60,values:[{year: 2015, value: 3},{year: 2016, value: 3}]}],
          ];

for (let i = 0; i < arr.length; i++) {
      for (let j = 0; j < arr[i].length; j++) {
        for(let k=0;k<arr[i][j].values.length;k++) {
          const propName = arr[i][j].values[k].year;
          arr[i][j].values[k].value = arr[i][j][propName];  
        }
      }
    }

let expectedOutput= [
          [{2015:10,2016:20,values:[{year: 2015, value: 10},{year: 2016, value: 20}]}],
          [{2015:30,2016:40,values:[{year: 2015, value: 30},{year: 2016, value: 40}]}],
          [{2015:50,2016:60,values:[{year: 2015, value: 50},{year: 2016, value: 60}]}]
          ];

标签: javascript

解决方案


编辑:修复了代码...

直截了当的回答是:

for (let i = 0; i < arr.length; i++) {
      for (let j = 0; j < arr[i].length; j++) {
        for(let k=0;k<arr[i][j].values.length;k++) {
          const propName = arr[i][j].values[k].year;
          arr[i][j].values[k].value = arr[i][j][propName];  
        }
      }
    }

推荐阅读