我正在阻止语义问题
我有表达式
if (kate[aa] !== undefined) {
subK = kate[aa].subKategori.map(x => [{name: x}])
}
我希望subK的输出是
[{name : x[0]}, {name: x[1]]
但是我在控制台中得到
subK = [[{name:x[0]}],[{name:x[1]}]]
我不知道为什么
答案 0 :(得分:2)
x => [{name: x}]
回调函数为数组中的每个条目创建一个带有对象的数组; map
返回这些数组的一个数组。
如果只想要一个对象,请勿在该对象周围使用[]
。由于这是一个简洁的箭头功能,因此您需要()
(或使用详细的箭头功能):
subK = kate[aa].subKategori.map(x => ({name: x}))
或详细形式:
subK = kate[aa].subKategori.map(x => {
return {name: x};
})