元素隐式具有“任何”类型,因为索引表达式不是“数字”类型的打字稿-从数组中获取单个键

时间:2019-08-08 16:23:57

标签: typescript

我有以下内容:

let x = array[stringKey]

其中数组是关联的。 Typescript出现上述错误。

如何简单地获取价值?我知道字符串键存在,但打字稿坚持认为它应该是索引

我想避免关闭任何打字稿规则

1 个答案:

答案 0 :(得分:1)

首先,在JS中没有像关联数组这样的东西,确切地说,它仅称为对象或键->值映射。 JS中的数组只能将键作为数字,如果要将键作为字符串,则只需使用对象文字即可。

const someObj: { [key: string]: object } = {}; // key -> object map
const stringKey = 'someKey'
const x = someObj[stringKey] // works

当然,您可以更加精确(应该),并为该对象应包含的内容定义某种类型。