Appearance
16.unknown
一.unknown类型
unknown
类型,任何类型都可以赋值为unknown
类型。 它是 any 类型对应的安全类型
let unknown:unknown;
unknown = 'zf';
unknown = 11;
1
2
3
2
3
不能访问unknown类型上的属性,不能作为函数、类来使用
联合类型中的
unknown
type UnionUnknown = unknown | null | string | number
1联合类型与
unknown
都是unknown
类型交叉类型中的
unknown
type inter = unknown & null
1交叉类型与
unknown
都是其他类型
二.unknown特性
never是unknown的子类型
type isNever = never extends unknown ? true : false;=
1keyof unknown 是never
type key = keyof unknown;
1unknown类型不能被遍历
type IMap<T> = { [P in keyof T]:number } type t = IMap<unknown>;
1
2
3
4
unknown类型不能和number类型进行
+
运算,可以用于等或不等操作