basics
类型基础与常用内置
ToC
- 基本类型与对象类型
- 数组/元组与
readonly any/unknown/never/void- 枚举与字面量类型
基本类型与对象类型
let s: string = 'x';
let n: number = 42;
let b: boolean = true;
let o: { id: string; name?: string } = { id: '1' };
可选属性 ? 与索引签名:{ [k: string]: number }。
数组/元组与 readonly
const xs: number[] = [1, 2];
const ys: Array<number> = [1, 2];
const pair: readonly [number, string] = [1, 'a'];
readonly 防止写入但不深层不可变;可与 as const 配合生成字面量类型。
any/unknown/never/void
any放弃类型检查;尽量避免。unknown更安全,使用前需窄化。never表示不可能触达的类型(抛异常、无限循环、穷尽检查)。void表示无返回值。
枚举与字面量类型
- 推荐使用联合字面量替代传统
enum:
type Color = 'red' | 'green' | 'blue';