gpt4 book ai didi

javascript - 如何将数组的 javascript 映射转换为 javascript 中的 json 对象?

转载 作者:行者123 更新时间:2023-12-05 07:46:13 26 4
gpt4 key购买 nike

我有一个 javascript MAP 对象,它以字符串形式保存键,以 javascript 数组形式保存值,每个数组在其中保存一组字符串。我想将数组映射转换为 javascript 中的 json 对象。

这是我试过的代码

函数 addRole() {

 var jsonObjectOfMap={};
subMenuSelectedIdMap.forEach(function(items,key,subMenuSelectedIdMap){
jsonObjectOfMap[key]=JSON.stringify(items);
});
alert(JSON.stringify(jsonObjectOfMap));

我得到的 json 对象是这样的{"1004":[1005,1006,1023]","1007":[1008,1053]"}

但是这个 json 格式对象是否有效,如果我想要它的格式,我必须做什么:{"1004":["1005","1006","1023"]","1007":["1008","1053"]}

请帮帮我

最佳答案

如果最内层的值都是数字,并且您希望它们在最终结果中作为字符串,则必须将每个数字单独转换为字符串。

您可以使用 .map() 对每个 items 进行另一个循环来做到这一点或者调用String().toString()对于每个数字:

subMenuSelectedIdMap.forEach(function (items, key, subMenuSelectedIdMap){
jsonObjectOfMap[key] = items.map(function (item) {
return String(item); // or `return item.toString();`
});
});

可选地,由于 String() 只接受一个参数(.map() 传递的其他两个参数被忽略),items< 的循环 可以缩短为:

jsonObjectOfMap[key] = items.map(String);

关于javascript - 如何将数组的 javascript 映射转换为 javascript 中的 json 对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41031985/

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