【发布时间】:2019-05-28 20:57:14
【问题描述】:
我想要一个方法来接受一个对象数组和一些对象键的数组。该方法将返回一个对象值数组,但仅返回选定键的数组。
数据:
[
{"firstName": "Jane", "lastName": "Doe"},
{"firstName": "John", "lastName": "Doe"}
]
字段:
["firstName"]
结果:
[["Jane"], ["John"]]
现在我有一个函数可以提供所需的结果,但我不确定如何更好地处理这些类型。
mapToCsvData: (data: { [key: string]: any }[], fields: string[]) => {
return data.map((item: any) => {
return fields.map(field => item[field]);
});
}
我尝试了下一个 sn-p 的一些变体,但出现错误。
mapToCsvData: <T extends object>(data: T[], fields: keyof T[]) => {
Property 'map' does not exist on type 'number'.
【问题讨论】:
标签: arrays typescript typescript-generics keyof