javascript - 如何遍历对象并将键插入数组?

标签 javascript

我有一个由 newSalesoldSales 组成的对象,我正在遍历它们以获取键值对。我已经能够控制台记录它们,但现在我被卡住了。如何将这些键值对推送到我的数组中?这是一个样本 codepen

const obj = {
  newSales: 1,
  oldSales: 0,
  anotherProp: 'something',
  etc: 'etc',
  values: 'numbers'
}

function myDataSet() {
  let dataSet = []
  for (let key in obj) {
    if (obj.hasOwnProperty(key)) {
      console.log(`${key} : ${obj[key]}`)
      dataSet.push({
        name: ['newSales', 'oldSales'],
        data: [1, 0]
      })
    }
  }
  return dataSet
}

myDataSet();

对象中的新名称应该是 namenewSalesoldSalesdata 里面应该是一个值为 1 和 0 的数组。感谢所有帮助。

预期输出:

[ { name: ['newSales', 'oldSales'], data:[ 1,0 ] } ]

最佳答案

如果我没理解错的话,你想要这个。

根据需要编辑为具有外部数组,尽管我不明白它的用途。

let dataSet = [{
  name: Object.keys(obj),
  data: Object.values(obj)
}];

关于javascript - 如何遍历对象并将键插入数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58770697/

相关文章:

javascript - 我如何使用 jquery 拆分 ajax 返回值

javascript - 通过 JavaScript 在 ins 标签内多次添加值

javascript - 使用 Angular + aws-sdk-js + 预签名 url 将文件上传到 S3

javascript - 如何检测浏览器视口(viewport)以在首屏显示所需内容?

javascript - 隐藏和显示 HTML 表格中的内容

javascript - 使用 JavaScript 进行井字游戏

javascript - 如果验证成功,如何将span类添加到span元素?

javascript - 提交一个通过ajax调用的表单

JavaScript 唯一浏览器 ID

javascript - 在没有序列化的情况下在主窗口和窗口之间共享数组