在访问公共寄存器API时,我收到的信息比我需要的要多,有时返回的数据只有很小的变化.我想删除一些不必要的字段,将嵌套的字段移到顶层,并重新命名它们.其目标是在几个不同的API上标准化格式,并将内存要求保持在最低水平.示例如下:
原始对象:
[
{
startDate: "2022/08/27",
expiryDate: "2025/08/27",
party: {
type: "Business",
name: "Irregular Expressions Inc."
},
location: {
type: "Office",
address: {
locality: "Boston",
postcode: "PE21 8QR"
}
}
},
{
startDate: "2023/12/22",
expiryDate: "2024/06/22",
party: {
type: "Charity",
name: "Save the Badgers"
},
site: {
type: "Office",
address: {
locality: "Badgerton",
postcode: "BA6 6ER"
}
}
},
]
我想将其转换为更小、更整洁的数组:
[
{
startDate: "2022/08/27",
expiryDate: "2025/08/27",
partyName: "Irregular Expressions Inc.",
location: "Boston"
},
{
startDate: "2023/12/22",
expiryDate: "2024/06/22",
partyName: "Save the Badgers",
location: "Badgerton"
},
]
我已经try 了下面的方法,但我收到一个错误.
module.exports = {
testTransform: (inputArray) => {
const outputArray = []
inputArray.forEach(element => {
outputArray.push({
startDate: element.startDate,
expiryDate: element.expiryDate,
partyName: element.party.name,
location: element.location.address.locality
})
})
return JSON.stringify(outputArray, null, ' ')
}
}
TypeError: Cannot read properties of undefined (reading 'address')
我是在朝着正确的方向前进,还是有一种更简单的方法来做到这一点?我一直在寻找这种类型的转变,但没有运气--我错过了什么?