Angular Typescript无法从keyvalue对中获取键值

c0m*_*age 0 key-value typescript angular

几个月我添加了一系列keyvalue.

  months : { [key: number]: string } = { 1: 'January', 2: 'February', 3: 'March', 
  4: 'April', 5: 'May', 6: 'June', 7: 'July', 8: 'August', 9: 'September', 10: 'October',
  11: 'November', 12: 'December' } 
Run Code Online (Sandbox Code Playgroud)

我可以毫无问题地获得价值

var firstMonth = this.months [0] .valueOf();

但是,我无法获得关键价值.

我试过了.months [0] .key.这不起作用

当我使用var firstMonth = this.months [0]时,我只看到'January'的值.访问数组中的一个元素时,我没有看到keyvalue.当我将鼠标悬停在数组上时,我会看到所有月份都包含两个键值.

我看到在stackblitz中使用*ngFor for angular6-keyvaluepipe-demo的示例,但我无法访问typescript文件中的键值.

任何帮助表示赞赏.

Tre*_*vor 6

看看使用情况Object.keys(this.months).

虽然这看起来与键/值对非常相似,但它实际上是一种索引形式.

如果你想要开箱即用的键/值行为,你应该看一下使用Map<number, string>.