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'.
相关推荐
嘗_6 分钟前
手写自己的小型react
前端·javascript·react.js
嘀咕博客9 分钟前
h5游戏免费下载:HTML5拉杆子过关小游戏
前端·游戏·html5
Moonbit10 分钟前
MoonBit 推出 LLVM Debugger,核心用户数破十万
前端·编程语言·llvm
洞窝技术15 分钟前
前端开发APP之跨平台开发(ReactNative0.74.5)
android·react native·ios
zuo-yiran17 分钟前
vue div标签可输入状态下实现数据双向绑定
前端·javascript·vue.js
qq_3168377517 分钟前
使用leader-line-vue 时垂直元素间距过小连线打转的解决
前端·javascript·vue.js
天天向上102419 分钟前
vue3使用ONLYOFFICE 实现在线Word,Excel等文档
前端·javascript·html
光影少年21 分钟前
React Native 第三章
javascript·react native·react.js
KoProject22 分钟前
发布30款App之后,我总结了这套GLM-4.6全自动化开发流
前端·后端·github
一川_26 分钟前
虚拟滚动的幽灵:从搜索失准到丝滑体验的救赎之旅
javascript