javascript - 将 JS 对象值更改为键/值
问题描述
谁能告诉我该怎么做?我想将 Product* 值更改为键/值对(产品:Product*),并将每个值更改为自己的对象。
输入:
[
"ProductA": {
"Available": true,
"Customers": "non-registered"
},
"ProductB": {
"Number": 0
},
"ProductC": {
"Number": 10,
"Available": false,
"Customers": "registered"
}
]
期望的输出:
[
{
"Product": "ProductA",
"Available": true,
"Customers": "non-registered"
},
{
"Product": "ProductB",
"Number": 0
},
{
"Product": "ProductC",
"Number": 10,
"Available": false,
"Customers": "registered"
}
]
解决方案
假设您想要数组中的结果对象,您可以通过简单的.map()
using来做到这一点Object.keys()
:
const data = { "ProductA": { "Available": true, "Customers": "non-registered" }, "ProductB": { "Number": 0 }, "ProductC": { "Number": 10, "Available": false, "Customers": "registered" } };
let result = Object.keys(data).map(key => ({Product: key, ...data[key]}));
console.log(result);
推荐阅读
- html - 使用 CSS 伪造自定义 ol 标签
- android - 为什么我的亚马逊应用商店提交被拒绝?如何获取更多信息?
- apache-spark - 在单个生产命令中可以为 Kafka 主题生成的记录数量是否有任何限制
- javascript - 努力循环函数并为 Odin Project Rock, Paper, Scissors 返回正确的结果。我的代码有什么问题?
- php - PHP 使用 Word 文件的 PDF 发送 HTML 内容
- google-cloud-platform - 拒绝在项目级别创建可公开访问的 GCP 存储桶?
- javascript - TypeError:无法读取未定义 onSubmit 的属性“addContact”
- loops - 使用循环为 MailApp 构建消息
- python - 如何“行绑定”两个具有不同列的熊猫数据框?
- laravel - 是否可以在单元测试的验证异常中打印错误?