gpt4 book ai didi

javascript - 使用 JSON 中的 header 从 JSON 创建对象

转载 作者:行者123 更新时间:2023-12-03 03:15:13 25 4
gpt4 key购买 nike

我有一个类似于下面的 JSON 对象:

vehicles:
{
trucks: [
"Ford",
"Toyota",
"Dodge",
],
suvs: [
"Honda",
"GMC",
],
cars: [
"Pontiac",
"Lotus",
"Aston-Martin",
"Porsche",
"Subaru"
]
}

我想循环遍历它并创建我自己的对象,但是如果不对每种类型的车辆使用三个不同的循环,我无法找到如何做到这一点。

这是我的尝试:

let vehicleObject = {
vehicles: []
}

// I'm getting the response back from a http request
Object.keys(body.vehicles).forEach(function (k) {
for (let i = 0; i < body.vehicles.k.length; i++) {
vehicleObject.vehicles.push({
vehicle_type: k,
manufacturer: body.vehicles.k[i]
});
}
});

但是,这只会导致我“无法读取未定义的属性长度。我知道我可以通过一个开关或三个 if 来完成此操作,但如果可能的话,我想学习一种更有效的方法。谢谢。

最佳答案

循环应该是这样的:

Object.keys(body.vehicles).forEach(function (k) {
for (let i = 0; i < body.vehicles[k].length; i++) {
vehicleObject.vehicles.push({
vehicle_type: k,
manufacturer: body.vehicles[k][i]
});
console.log(vehicles[k].length)
}
});

当您迭代每个键时,您将获取 k 中键的名称,然后要从 body.vehicles 对象获取数组,您需要执行类似 body.vehicles[k] 的操作。

关于javascript - 使用 JSON 中的 header 从 JSON 创建对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46799362/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com