青训营之TypeScript入门

114 阅读3分钟

这是我参与「第四届青训营 」笔记创作活动的的第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() 向数组的开头添加一个或更多元素,并返回新的长度