【发布时间】:2022-01-20 15:06:18
【问题描述】:
我需要创建一个数组数组。 值得注意的是,数据库非常大,如果任何属性没有对应的值,它会发送一个空字符串。我尝试过使用 map 和 reduce,但没有成功:
任何帮助将不胜感激。
下面我展示了一个预期输出的例子:
outputExpected = [
["id", 1, 2],
["name", "name1", "name2"],
["price", 6.95, 998.95],
["promoPrice", 5.91, 333.91],
["category", "test1 | test2", "test3 | test4"],
]
有什么方法可以在性能上解决这个问题?
这是我的代码:
let arrayObj = [{
"id": 1,
"name": "name1",
"price": 6.95,
"promoPrice": 5.91,
"category": ["test1, test2"]
},
{
"id": 2,
"name": "name2",
"price": 998.95,
"promoPrice": 333.91,
"category": ["test3, test4"]
}
]
const headers = ["id", "name", "price", "promoPrice", "category"]
const result1 = headers.concat(arrayObj.map((obj) => {
return headers.reduce((arr, key) => {
arr.push(obj[key]) return arr;
}, [])
}))
console.log(result1)
【问题讨论】:
-
显示您尝试过的内容,然后我们将展示如何修复它。我们不会为你写的。
-
这是我的代码: const headers = ["id","name","price","promoPrice", "category"] const result1 = headers.concat(arrayObj.map((obj ) => { return headers.reduce((arr, key) => { arr.push(obj[key]) return arr; }, []) }))
-
在问题中添加您的代码。使用edit
标签: javascript arrays json object reduce