【问题标题】:Javascript convert object for charting用于图表的 Javascript 转换对象
【发布时间】:2020-08-04 12:26:42
【问题描述】:

我喜欢使用chartkick,所以我想转换以下对象:

var array = [{date:'01/01/2017',value1:200,value2:300,value3:400}, {date:'02/01/2017',value1:220,value2:330,value3:430},{date:'03/01/2017',value1:250,value2:330,value3:420}]

转为以下格式:

var arrayOne = [{'01/01/2017': 200 , '02/01/2017': 220 , '03/01/2017':250}]

任何帮助将不胜感激。

【问题讨论】:

    标签: javascript chartkick


    【解决方案1】:

    你可以像下面的例子那样减少它。不知道为什么你需要一个包含单个元素的数组作为输出,但如果你真的需要,只需将其包装为 []

    const array = [{date:'01/01/2017',value1:200,value2:300,value3:400}, {date:'02/01/2017',value1:220,value2:330,value3:430},{date:'03/01/2017',value1:250,value2:330,value3:420}]
    
    const obj = array.reduce((acc, o) => {
      acc[o.date] = o.value1;
      return acc;
    }, {});
    
    console.log(obj);

    【讨论】:

      【解决方案2】:

      使用地图你也可以做到这一点

      var arra = [{ date: '01/01/2017', value1: 200, value2: 300, value3: 400 }, { date: '02/01/2017', value1: 220, value2: 330, value3: 430 }, { date: '03/01/2017', value1: 250, value2: 330, value3: 420 }]
              
      var finalArr = arra.map(data => {
          let obje = {}
          obje[data.date] = data.value1
          return obje
      })
      console.log(finalArr);

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-04-22
        • 2021-10-01
        • 2019-04-06
        • 1970-01-01
        • 2014-09-13
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多