循环遍历数组对象并创建另一个对象jquery js

时间:2016-12-24 12:29:42

标签: javascript jquery arrays json

我正在尝试创建一个JSON对象,例如

{
  "measure": camera_name,
  "interval_s": 7 * 24 * 60 * 60,
  "data": [
      [done_at, action],
      [done_at, action],
      [done_at, action]
  ]
}

我当前的对象是array,我希望从中获得上述对象。 Image

这里是这样的情况:我的数组对象有很多对象,如图片中只显示一个对象,并且在一个对象中会有很多日志,我想循环遍历这个以设置“数据” 。生成的json对象将是

{
  "measure": camera_name,
  "interval_s": 7 * 24 * 60 * 60,
  "data": [
      [done_at, action],
      [done_at, action],
      [done_at, action]
  ]
},
{
  "measure": camera_name,
  "interval_s": 7 * 24 * 60 * 60,
  "data": [
      [done_at, action],
      [done_at, action],
      [done_at, action]
  ]
}

我如何实现这一目标?我可以遍历数据,但我不知道如何存储这样的json对象。任何帮助都会感恩的

1 个答案:

答案 0 :(得分:1)

如果你可以使用ES6,你可以这样做:

const result = data.map(entry => {
  return {
    measure: entry.camera_name,
    interval_s: 7 * 24 * 60 * 60,
    data: entry.logs.map(log => {
      return [log.done_at, log.action]
    })
  }
})
console.log(JSON.stringify(result))