TypeScript: 如何正确地在循环中遍历字典(对象)?
大家好!我刚开始学习 TypeScript,遇到了一个看似简单但让我卡住的问题。我有一个用作字典的对象(键是字符串,值是数字)。我需要遍历它的所有键值对。在普通 JavaScript 中,我会这样做:
```typescript
const dict = {
apple: 5,
banana: 3,
orange: 7
};
for (let key in dict) {
console.log(key, dict[key]);
}
```
但 TypeScript 对 `dict[key]` 报错——提示类似“Element implicitly has an 'any' type because index expression is not of type 'number'”。我尝试使用 `Object.keys`:
```typescript
Object.keys(dict).forEach(key => {
console.log(key, dict[key]); // 又报错了!
});
```
还是报错!如何在 TypeScript 中正确遍历字典对象?我需要 TypeScript 理解键和值的类型,而不是简单地设为 `any`。另外,对于这类任务,哪种方法最高效且最典型?提前感谢帮助!