数据类型
- JS的所有类型
- 元组:tuple
- 枚举:enum
- 特殊类型:void、never、any、unknown
JS的类型
基础数据类型
- number
- string
- boolean
- null
- undefined
- symbol
- bigint
let num: number = 2;
let str: string = "hello".toString();
let bool: boolean = true;
let nul: null = null;
let und: undefined = undefined;
let sym: symbol = Symbol("sym");
引用数据类型
- object
- array
- function
- date
- regexp
- map
- set
- weakmap
- weakset
let obj: object = {}; // 不建议使用
let array: string[] = [];
let array1: Array<string> = [];
let date: Date = new Date();
let regexp: RegExp = /hello/;
let map: Map<string, number> = new Map();
let weakmap: WeakMap<{name: string}, number> = new WeakMap();
let set: Set<number> = new Set();
let weakset: WeakSet<{name: string}> = new WeakSet();
元组:tuple
let tuple: [number, string, boolean] = [110, "hello", true];
枚举:enum
enum Gender {
Man = "man",
Woman = "woman",
}
let gen: Gender = Gender.Man;
特殊类型:void、never、any、unknown
any:告诉编译器放弃ts静态检测,不安全,不用
unknown:定义该变量的时候不知道是什么类型,可以随意给该变量赋值,但是不能操作该变量,只有当该变量的类型确定时,可以操作
let unknownType: unknown = 123;
unknownType = "123";
if(typeof unknownType === "string"){
console.log(unknownType.toLowerCase());
}
void:没有返回值,一般用于定义函数
function fn():void{}
never:永远无法获得的值
let neverType: never = (() => {
throw new Error("error");
})();
1369

被折叠的 条评论
为什么被折叠?



