typescript 定义一个字典
在 TypeScript 中,你可以使用索引签名来定义一个字典。以下是一个基本的示例:
interface Dictionary {
[key: string]: string;
}
let dict: Dictionary = {};
dict["first_name"] = "John";
dict["last_name"] = "Doe";
console.log(dict); // 输出:{ first_name: 'John', last_name: 'Doe' }
在此示例中,Dictionary
是一个接口,它具有一个字符串索引签名,并且索引的值也是字符串。这意味着我们可以使用任何字符串作为键存储字符串类型的值。
当然,你不仅仅需要限于字符串类型的值。你可以将其改为任何你需要的类型,例如数字、布尔值、数组、对象甚至是其他字典。例如:
interface ComplexDictionary {
[key: string]: {
age: number;
active: boolean;
};
}
let complexDict: ComplexDictionary = {};
complexDict["John"] = { age: 30, active: true };
console.log(complexDict); // 输出:{ John: { age: 30, active: true } }
在上述示例中,ComplexDictionary
的值被定义为一个对象,该对象有两个属性:age
(数字)和 active
(布尔值)。