我有一个日期数组和一个对象数组。我想将日期作为键值对{"Date": "10-12-18"}
添加到对象数组中。
dates
:
["10-12-18", "10-13-18", 10-14-18"]
data
:
[
{"name":"One", "age": "4"},
{"name":"Two", "age": "5"},
{"name":"Three", "age": "9"}
]
我想要...
[
{"name":"One", "age": "4", "Date": "10-12-18"},
....
我如何在TypeScript中做到这一点?我习惯了普通的JavaScript,但无法正确使用它。
到目前为止我有:
for (let idx of data){
data[idx].date = dates[idx]
}
谢谢!
5条答案
按热度按时间htrmnn0y1#
你的代码的问题是
idx
将是对象而不是索引,因为你使用的是for...of
。使用一个简单的常规for
,如:或者使用
forEach
循环其中一个数组,并使用它提供的索引从另一个数组中获取值:qgzx9mmu2#
将数组Map到结果。
zsbz8rwp3#
就像这样:
o2g1uqev4#
在TS中,你可以像下面这样做。
rnmwe5a25#
根据@Jonas Wilms的回答,我认为map operator是最好的解决方案。
你也可以使用spread operator来代替解构对象,像这样:
在长对象的情况下,它避免了重写对象的每个键。