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'.
相关推荐
fruge3 分钟前
纯css制作声波扩散动画、js+css3波纹催眠动画特效、【css3动画】圆波扩散效果、雷达光波效果完整代码
javascript·css·css3
neter.asia12 分钟前
vue中如何关闭eslint检测?
前端·javascript·vue.js
~甲壳虫12 分钟前
说说webpack中常见的Plugin?解决了什么问题?
前端·webpack·node.js
光影少年32 分钟前
vue2与vue3的全局通信插件,如何实现自定义的插件
前端·javascript·vue.js
As977_33 分钟前
前端学习Day12 CSS盒子的定位(相对定位篇“附练习”)
前端·css·学习
susu108301891135 分钟前
vue3 css的样式如果background没有,如何覆盖有background的样式
前端·css
Ocean☾36 分钟前
前端基础-html-注册界面
前端·算法·html
Rattenking36 分钟前
React 源码学习01 ---- React.Children.map 的实现与应用
javascript·学习·react.js
Dragon Wu38 分钟前
前端 Canvas 绘画 总结
前端
CodeToGym43 分钟前
Webpack性能优化指南:从构建到部署的全方位策略
前端·webpack·性能优化