javascript - 将对象转换为对象数组
问题描述
我调用的 API 会给出如下结果:
{
"name1" : "value1",
"name2" : "value2",
"name3" : "value3",
"name4" : "value4",
}
我想将其更改为
[
{"name1" : "value1"},
{"name2" : "value2"},
{"name3" : "value3"},
{"name4" : "value4"},
[
我试着用
Object.keys(result).forEach(function(key) {
console.log(key, result[key]);
let item = key;
policyStatusList.push(
new Object({
item: result[key]
})
);
});
但它最终成为
[
{"item" : "value1"},
{"item" : "value2"},
{"item" : "value3"},
{"item" : "value4"},
[
有什么建议么?
解决方案
.map
对象的Object.entries
:
const obj = { "name1" : "value1", "name2" : "value2", "name3" : "value3", "name4" : "value4" };
const arrOfObjs = Object.entries(obj).map(([key, val]) => ({ [key]: val }));
console.log(arrOfObjs);
推荐阅读
- spring-boot - 没有 FXML 的 JavaFx 和 Spring 启动
- javascript - 具有 n 个大对象元素的数组是否比具有 n 个小对象元素的数组排序慢?
- angular - first() 操作数在函数内的第二次调用后不发布
- linux - 如何将文件的输出通过管道传输到命令?
- javascript - 如何使用特定于 url 的反应原生打开应用程序
- c# - 将 ASP.NET Core 日志异步重定向到特定的 NLog 文件
- django - Django-select2 按所有者过滤小部件数据(相关用户)
- arrays - VB 逻辑问题所需的第二双眼睛
- url - 在 URL 中指定日历,在 Google 日历中创建活动
- c - 为什么这个程序没有得到任何输出来使用递归对数组进行冒泡排序?