typescript的基础类型

基础类型

  1. 布尔值:boolean
  2. 数字:number
  3. 字符串:string
  4. 数组:Array<元素类型>
  5. 元组(一个已知元素数量和类型的数组): [数据类型,数据类型.....]
const s: [string, string, boolean] = ["a", "b", true];
  1. 枚举(可以对一组数值赋予友好的名字,方便后面使用)【注:js是没有这种数据类型的】:enum
  2. 任何类型:any (不会进行类型检验,尽量不使用)

补充:unknown : 比 any 安全, 不能赋值给其他变量,不能调用方法、属性等,使用方式是类型缩小,顶层类型

let a: unknown = 1;

if (typeof a === "number") {
  let r = a + 10; // 正确
}
  1. 没有任何类型:void(和any相反),返回值可以是null 和 undefined
  2. null:null
  3. undefined: undefined
  4. 永不存在的值:never

特点:底层类型,可以赋值给任何类型
使用场景:总是会抛出异常;根本就不会有返回值的函数表达式;箭头函数表达式的返回值类型

  1. 对象:object
  2. 类型断言(你比编译器更懂你自己,我的判断更精确~~)
  • <数据类型> 或者 as : 都是类型断言的方式。强制转换类型,TypeScript 不会验证类型是否匹配
  • satisfies: 不会强制转换类型,会进行类型校验,对象验证
   	let a:boolean = true; 
   	let b: number = 2353;
   	let c: string = "weferf";
   	let d: Array<number> = [b,4657];
   	//元组
   	let e: [boolean,number,string] = [a,b,c]; 
   	// 枚举
   	enum Color {Red = "#ff0000", White = "#fff", Black = "#000"}; 
   	let f: Color = Color.Red;
   	let g: Color = Color.White; 
   	let h: any = "wefwef";
   	let i: void = null;
   	let j: void = undefined;
   	let k: null = null;
   	let m: undefined = undefined;
   	//never
   	function error(message: string): never {
   	    throw new Error(message);
   	}
   	function fail(): never {
   	    return error("Something failed");
   	}
   	
   	declare function create(o: object):void;
   	
   	
   	//类型断言
   	let someValue: any = "this is a demo";
   	//下面两句是等价的
   	let strLength1: number = (<string>someValue).length;
   	let strLength2: number = (someValue as string).length;
posted @   拉布拉多~  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示

目录导航