TypeScript快速入门 - 基本数据类型

TypeScript基本数据类型

1、布尔型

关键字:boolean

javascript 复制代码
let b: boolean = false;
console.log(b);
b = true;
console.log(b);

// false
// true

2、数字类型

关键字:number

javascript 复制代码
let num: number = 1;
console.log(num);

// 1

3、字符串类型

关键字:string

javascript 复制代码
let str: string = "str";
console.log(str);
let str1: string = "str1";
console.log(str1);

// str
// str1

4、数组类型

关键字:Array<数字类型> 、数据类型 [ ]

javascript 复制代码
let arr1: number[] = [1, 2, 3];
let arrStr: string[] = ['a', 'b'];

// 范型表示的数组
let arr2: Array<string> = ['a', 'b'];
console.log(arr1, arrStr, arr2);

// [1, 2, 3] ['a', 'b'] ['a','b']

5、元组类型

关键字:没有关键字,只有定义方式 [数据类型, 数据类型 ...数据类型 ]

javascript 复制代码
let tuple: [string, number, boolean] = ['a', 1, false];
console.log(tuple)

// ['a', 1, false]

6、枚举类型

关键字:enum

javascript 复制代码
enum Play {
    UP, DOWN, LEFT, RIGHT
}
enum Play1 {
    UP = 1, DOWN, LEFT, RIGHT
}

console.log(Play.UP, Play.DOWN);
// 0, 1

console.log(Play.UP, Play.DOWN);
// 1, 2

console.log(Play1.UP === 1);
// true

// 可以比较
console.log(Play1.UP === Play1.UP);
// true

// 错误实例
console.log(Play1.UP === Play.UP)
// 报错

7、任意数据类型

关键字:any

javascript 复制代码
let a: any = 1;
console.log(a);
a = 'a';
console.log(a);

// 1
// a

8、空返回类型

关键字:void

javascript 复制代码
function say(): void {
    console.log("我什么也不返回");
}

say();

// 我什么也不返回

9、null 和 undefined 类型

关键字:null 、 undefined

javascript 复制代码
let str: string = null;
console.log(str)

// null

// 不赋值 默认是undefined
let str2: string;
console.log(str2)

// undefined

10、nerver 和 Object

关键字:nerver 、 Object

javascript 复制代码
// 从来不使用的值 never
let a: never;
let b: string = "123";

// 会报错
a = 1;

console.log(b)

// 123

let c: Object = "123";
c = [1, 2, 3];
c = ["1", "2", "3"];
c = 4;
// Object和any类型有很相似的作用,Object是所有类型的父类,可以给他赋任意值
// 但Object类型的变量只是允许你给它赋任意值,但是却不能够在它上面调用任意的方法,即便它真的有这些方法

c.toFixed(); // Error: Property 'toFixed' doesn't exist on type 'Object'.
相关推荐
zhangxingchao5 分钟前
Jetpack Compose 之 Modifier(中)
前端
JarvanMo5 分钟前
理解 Flutter 中 GoRouter 的context.push与context.go
前端
pe7er11 分钟前
使用 Vue 官方脚手架创建项目时遇到 Node 18 报错问题的排查与解决
前端·javascript·vue.js
星始流年14 分钟前
前端视角下认识AI Agent
前端·agent·ai编程
pe7er18 分钟前
使用 types / typings 实现全局 TypeScript 类型定义,无需 import/export
前端·javascript·vue.js
CH_Qing19 分钟前
【udev】关于/dev 设备节点的生成 &udev
linux·前端·网络
小诸葛的博客23 分钟前
gin如何返回html
前端·html·gin
islandzzzz30 分钟前
(第二篇)HMTL+CSS+JS-新手小白循序渐进案例入门
前端·javascript·css·html
喝拿铁写前端32 分钟前
前端实战优化:在中后台系统中用语义化映射替代 if-else,告别魔法数字的心智负担
前端·javascript·架构
超人不会飛1 小时前
就着HTTP聊聊SSE的前世今生
前端·javascript·http