【发布时间】:2021-03-17 06:37:01
【问题描述】:
我正在尝试转换一个对象,该对象将数组作为值,将数字作为键,并将值更改为数组的长度。
但是我收到一个类型错误,提示“元素隐式具有任何类型,因为字符串类型的元素不能用于索引 {}” 我不清楚为什么它坚持 key 是一个字符串类型,而它是一个数字。
代码是:
const agentOccupancy = Object.entries(agentOccupiedServicesAndQueues).reduce(
(obj, [key, value]) => {
obj[key] = value.length;
return obj;
},
{},
);
【问题讨论】:
-
Object.entries和Object.keys总是返回string -
但是
on type '{}'指的是您在reduce中创建为{}的变量obj,因此您需要为其分配一些类型才能设置任何属性。
标签: typescript