这是我参与「第四届青训营 」笔记创作活动的的第4天
1.TypeScript简介
TypeScript是一种由微软开发的自由和开源的编程语言。它是JavaScript的一个超集,而且本质上TypeScript扩展了JavaScript的语法,这意味着他支持所有的 JavaScript 语法。
发展历程
-
2012-10:微软发布了TypeScript第一个版本(0.8)
-
2014-10:Angular发布了基于TypeScript的2.0版本
-
2015-04:微软发布了Visual Studio Code
-
2016-05:@types/react发布,TypeScript可发开React
-
2020-09:Vue发布了3.0版本,官方支持TypeScript
-
2021-11:v4.5版本发布
TypeScript特点:
- 可读性增强:基于语法解析TSDos,ide增强
- 可维护性增强:在编译阶段暴露大部分错误。(多人合作的大型项目中,获得更好的稳定性和开发效率)
- 包含于兼容所有JS特性,支持共存
- 支持渐进式引入与升级
TypeScript的使用
下载全局包,cmd下输入
npm i -g typescript
2.输入检查是否安全成功
tsc -v
3.打开编辑器创建后缀为.ts的文件
基本数据类型
- 任意类型any:声明为 any 的变量可以赋予任意类型的值。
- 数字类型 number:双精度 64 位浮点值。它可以用来表示整数和分数
- 字符串类型 string:一个字符系列,使用单引号( ’ )或双引号( " )来表示字符串类型。反引号( ` )来定义多行文本和内嵌表达式
- 布尔类型 boolean:表示逻辑值:true 和 false
- 数组类型 :声明变量为数组
- void类型:没有任何类型(声明一个void类型的变量没有什么大用,因为你只能为它赋予undefined和null)
对象类型:
interface Person {
// 只读属性
readonly id: string;
name: string;
sex: 'male' | 'female';
age: number;
// 可选属性
hobby?: string;
// 任意属性
[key: string]: any;
}
const p: Person = {
id: '1nahqgeusdhjqjjhqiaeeeee',
name: 'csy',
sex: 'male',
age: 25,
};
函数类型 在 TypeScript 中,有两种常见的定义函数的方式——函数声明(Function Declaration)和函数表达式Function Expression)。
function add(x: number, y: number): number { return x + y; } const mul: (x: number, y: number) => number = (x, y) => x * y;
数组类型
const arr1: number[] = [12, 34];
// 数组泛型表示
const arr2: Array<number | number> = [1, '2'];
// 元组
const arr3: [number, string, boolean] = [12, '3', true];
// 接口表示
const arr4: {
[key: number]: any;
} = ['1', 5, null, {}, []];
数组常用方法
-
every() 检测数值元素的每个元素是否都符合条件
-
some() 检测数组元素中是否有元素符合指定条件
-
concat() 连接两个或更多的数组,并返回结果
-
filter() 检测数值元素,并返回符合条件所有元素的数组
-
forEach() 数组每个元素都执行一次回调函数
-
indexOf() 搜索数组中的元素,并返回它所在的位置
-
join() 把数组的所有元素放入一个字符串
-
lastIndexOf() 返回一个指定的字符串值最后出现的位置,在一个字符串中的指定位置从后向前搜索
-
map() 通过指定函数处理数组的每个元素,并返回处理后的数组
-
pop() 删除数组的最后一个元素并返回删除的元素
-
push() 向数组的末尾添加一个或更多元素,并返回新的长度
-
reduce() 将数组元素计算为一个值(从左到右)
-
reduceRight() 将数组元素计算为一个值(从右到左)
-
reverse() 反转数组的元素顺序
-
shift() 删除并返回数组的第一个元素
-
slice() 选取数组的的一部分,并返回一个新数组
-
sort() 对数组的元素进行排序
-
splice() 从数组中添加或删除元素
-
toString() 把数组转换为字符串,并返回结果
-
unshift() 向数组的开头添加一个或更多元素,并返回新的长度