gpt4 book ai didi

javascript - 如何在 javascript/typescript 中重新映射 json 键值映射?

转载 作者:行者123 更新时间:2023-11-30 14:17:48 27 4
gpt4 key购买 nike

给定

{"a": {"name": "king", "firstname": "Thomas"},"b": {"age": "21"}}

我想找出一种简单的方法将其转换为

{"name": "king","firstname": "Thomas","age": "21"}

在 Javascript/Angular 中。也许有人有好主意,我将非常感激。我正在尝试更改响应以使其适合 API 请求。

编辑:我更改了问题,我忘了说,我在第二级有多个键值对。

我想要实现的是摆脱 json 文件中的第一级 key ,因为我发送它的 API 没有这些,它只使用第二级中的 key

最佳答案

这应该适合您。我向该对象添加了第三个属性,以向您展示如果您有两个具有相同属性的对象会发生什么情况(稍后迭代的那个会覆盖之前出现的那个,但由于您不能依赖对象中的属性顺序可能会产生意想不到的结果)。如果您的所有属性都没有重复,那么不用担心。

var data = {"a": {"name": "thomas"},"b": {"age": "21"},"c": {"age": "22"}};

// "c" will overwrite "b"
var converted = Object.keys(data).reduce((o, e) => Object.assign(o, data[e]), {});
// Object.keys(data) gives the array [“a”, “b”, “c”]
// Reduce that array to an object by assigning, to a new empty object,
// the properties of the objects found in each property of data

console.log(converted);

关于javascript - 如何在 javascript/typescript 中重新映射 json 键值映射?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53266329/

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