javascript - 映射对象键:值对到 JSON 的对象数组数组
问题描述
我正在尝试将以下数组转换为 JSON 可以理解的内容,并能够将相同的键/值对附加到每个对象数组,但我一直不知道如何去做。
给定以下对象数组:
{
"array": [
{
"Type": "Current",
"Item1": "3",
"Item2": "23",
"Item3": "90",
"Item4": null,
"Year": "2019",
"Amount": "100"
},
{
"Type": "Current",
"Item1": "3",
"Item2": "23",
"Item3": "90",
"Item4": null,
"Year": "2020",
"Amount": "200"
},
{
"Type": "Current",
"Item1": "3",
"Item2": "23",
"Item3": "90",
"Item4": null,
"Year": "2021",
"Amount": "300"
},
{
"Type": "Change",
"Item1": null,
"Item2": null,
"Item3": null,
"Item4": null,
"Year": "2019"
},
{
"Type": "Change",
"Item1": null,
"Item2": null,
"Item3": null,
"Item4": null,
"Year": "2020",
"Amount": ""
},
{
"Type": "Change",
"Item1": null,
"Item2": null,
"Item3": null,
"Item4": null,
"Year": "2021",
"Amount": ""
}
]
}
我需要在每个数组中添加以下内容:
{Title : "title", id : "idNum"}
所以它看起来像:
{
"Title": "title",
"ID": "idNum",
"Type": "Current",
"Item1": "3",
"Item2": "23",
"Item3": "90",
"Item4": null,
"Year": "2019",
"Amount": "100"
},
{
"Title": "title",
"ID": "idNum",
"Type": "Current",
"Item1": "3",
"Item2": "23",
"Item3": "90",
"Item4": null,
"Year": "2020",
"Amount": "200"
},
等等
我什至不确定这是否真的是一个对象数组的数组,因为我承认我对术语有些猜测。最终,我需要将其作为 JSON 对象处理,以便使用 AJAX 提交到 SharePoint 列表。
我是否需要遍历数组中的每个数组,然后添加对象键/值对?
解决方案
const data = { "array": [ { "Type": "Current", "Item1": "3", "Item2": "23", "Item3": "90", "Item4": null, "Year": "2019", "Amount": "100" }, { "Type": "Current", "Item1": "3", "Item2": "23", "Item3": "90", "Item4": null, "Year": "2020", "Amount": "200" }, { "Type": "Current", "Item1": "3", "Item2": "23", "Item3": "90", "Item4": null, "Year": "2021", "Amount": "300" }, { "Type": "Change", "Item1": null, "Item2": null, "Item3": null, "Item4": null, "Year": "2019" }, { "Type": "Change", "Item1": null, "Item2": null, "Item3": null, "Item4": null, "Year": "2020", "Amount": "" }, { "Type": "Change", "Item1": null, "Item2": null, "Item3": null, "Item4": null, "Year": "2021", "Amount": "" } ] }
result = data.array.map(x => ({ Title: 'Title', ID: 'idNum', ...x}))
console.log(result)
推荐阅读
- html - Mozilla firefox 不支持预加载
- perforce - 将 perforce depot 导入 linux 开发环境
- c++ - GMock 死亡案例 - 未调用模拟函数
- r - 信号的所有值在它们降至最小值之前的平均值
- ios - Adobe Air - 应用程序上传错误 - 无效的可执行文件大小
- javascript - Invariant Violation:对象作为 React 子级无效(React Native)
- javascript - 我们可以从异步函数中调用非异步函数吗?
- python - VUE axios get API not found
- android - 检查 Playstore 中的内部测试人员是否已安装该应用程序
- excel - ActiveSheet.ShowAllData 在 2 台机器上返回不同的结果