首页 > 解决方案 > 如何在对象内打印Javascript数据数组

问题描述

我有学生的详细信息;如何获得我的预期输出?在一个对象中,我希望学生的姓名作为键,他们的车名数组作为值

let empArray = [{
    "name": "soma",
    "cars Details": [{
      "name": "audi",
      "cost": 120000,
      "Speed": "150Km/hr"
    }, {
      "name": "toyota",
      "cost": 120000,
      "Speed": "150Km/hr"
    }],
    "salary": 40000
  },
  {
    "name": "steven",
    "cars Details": [{
      "name": "bmw",
      "cost": 120000,
      "Speed": "150Km/hr"
    }],
    "salary": 70000
  },
  {
    "name": "booth",
    "cars Details": [{
      "name": "swift",
      "cost": 120000,
      "Speed": "150Km/hr"
    }, {
      "name": "audi",
      "cost": 120000,
      "Speed": "150Km/hr"
    }],
    "salary": 35000
  },
]

let a = {}
var ids = [];
for (let i = 0; i < empArray.length; i++) {
  a = empArray[i]["cars Details"]
  console.log(a)
}

预期产出

{soma :["audi","toyota"],steven:["bmw"],booth:["swift","audi"]}

标签: javascriptobject

解决方案


let empArray = [{ "name": "soma", "cars Details": [{ "name": "audi", "cost": 120000, "Speed": "150Km/hr" }, { "name": "toyota", "cost": 120000, "Speed": "150Km/hr" }], "salary": 40000 }, { "name": "steven", "cars Details": [{ "name": "bmw", "cost": 120000, "Speed": "150Km/hr" }], "salary": 70000 }, { "name": "booth", "cars Details": [{ "name": "swift", "cost": 120000, "Speed": "150Km/hr" }, { "name": "audi", "cost": 120000, "Speed": "150Km/hr" }], "salary": 35000 },]

let dict = {}
empArray.forEach((e) => {
  dict[e.name] = e["cars Details"].map((car) => {
    return car.name
  })
})

console.log(dict)


推荐阅读