此Typescript语法是什么意思

时间:2020-02-16 17:01:03

标签: javascript typescript

export declare type SomeType = {
   [key: string] : string
};

此语法到底是什么意思?我们正在导出一个名为SomeType的自定义类型别名,该别名是一个对象,该对象具有名为____且值为____?

的属性。

3 个答案:

答案 0 :(得分:4)

这意味着SomeType类型的对象只能具有带有字符串值的字符串属性:

示例:

// Valid
{

    firstName: 'John',
    lastName: 'Smith'

},

// Invalid
{

    firstName: 'John',
    age: 10

}

此语法称为Index Signature

答案 1 :(得分:1)

这是键/值结构。键是一个字符串,值是一个字符串

SomeType = {
   'a-string-key' : 'a-string-value'
};

答案 2 :(得分:0)

基本上,Typescript是javascript的静态类型版本。在这种情况下,我们有一个名为<script src="https://threejs.org/build/three.min.js"></script> <script src="https://threejs.org/examples/js/controls/OrbitControls.js"></script>的类型,它是一个对象。而且我们还提到了对象的SomeTypekey类型-value

在您的情况下,[key: string]: string仅接受SomeType的字符串和key的字符串。否则,它将引发类型错误。

例如:value有效,而{ "name": "user"}无效。