如何解决将带有字典的打字稿类对象转换为 JSON 数组
经过一番挖掘,我决定我的后端需要使用重复的键,因此我的前端不能再将字典作为 JSON 字符串发送。 查看我的previous question。
应用提供的解决方案后
let mediatagRequest = new MediaTagRequest(tags);
const headers = { 'content-type': 'application/json' }
let jsonObject = {};
for (let entry of mediatagRequest.tags.entries())
{
jsonObject[entry[0]] = entry[1];
}
const body = JSON.stringify({
tags: jsonObject
});
我当前的输出(这是我当时想要的)
{
"tags": {
"city": "Karachi"
}
但是我的需求发生了变化,经过一番挣扎后,我无法得到我想要的输出
{
"tags": [
{
"key": "city","value": "Karachi"
},{
"key": "city","value": "Mumbai"
}
]
}
有人可以帮忙吗,谢谢。
解决方法
要获得所需的输出,您可以使用 Object.entries()
函数分别获取键值对。此代码段会将一个对象转换为具有键值对的对象列表:
test_object = {
karachi: "dubai",mumbao: "moscow",};
output = Object.entries(test_object).map(([key,value]) => ({ key,value}));
console.log(output);
您可以修改此代码以选择对象的所需部分并根据需要对其进行格式化。您可以在文档中看到其他 Object
函数。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。