如何在打字稿中创建不同类型值的映射

San*_*sht 3 types typescript typescript-typings

我已经开始学习 Typescript,并尝试创建具有不同类型值的地图,但它不起作用。我尝试在定义时直接给出stringandnumber作为选项,Map但它抛出了我们无法映射number到的错误string

const testMap: Map<string,string|number> = new Map([["a", "test1"],["b","test2"],["c",1]]);
Run Code Online (Sandbox Code Playgroud)

请建议。

操场

Ale*_* L. 6

在这种情况下,Typescript 无法正确推断值类型,但您可以在调用 的构造函数时显式指定泛型类型参数Map

const testMap = new Map<string, string | number>([["a", "test1"], ["b", "test2"], ["c", 1]]);
Run Code Online (Sandbox Code Playgroud)

操场