首页 > 解决方案 > TypeScript-如何为数组中的每个对象添加键值对?

问题描述

我有一组日期和一组对象。我想将日期作为键值对添加到对象数组中{"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] 
}

谢谢!!

标签: javascriptarraystypescriptobject

解决方案


您的代码有什么问题,这idx将是您使用的对象而不是索引for...of。使用简单的常规for,例如:

for(let idx = 0; idx < data.length; idx++) {
    data[idx].date = dates[idx];
}

或者使用forEach循环其中一个数组并使用它提供的索引从另一个数组中获取值:

data.forEach((obj, i) => obj.date = dates[i]);

推荐阅读