-
Typescript vs Javascript
TypeScript是一种基于JavaScript的编程语言,它扩展了JavaScript并添加了诸如静态类型、类、模块、接口等功能,以提高代码的可维护性、可读性和可扩展性。TypeScript可以看作是JavaScript的超集,它可以编译为JavaScript,并且可以在任何JavaScript运行环境中运行。TypeScript主要用于解决大型项目的代码复杂性,可以在编译期间发现并纠正一些错误,从而减少开发人员在运行时遇到的错误,提高开发效率和代码质量。与JavaScript不同的是,TypeScript是一种强类型语言,即变量必须声明类型,且不能改变变量的数据类型。
-
TS基础类型
- boolean、number、string:这是 TypeScript 基础数据类型之一。boolean 表示布尔类型,只有 true 和 false 两个取值;number 表示数字类型,包括整数和浮点数;string 表示字符串类型,可以包含任意字符
- undefined、null:这是 TypeScript 的特殊类型,表示不存在的值。undefined 表示一个变量未赋值,在代码执行时被默认赋值为 undefined;null 表示一个变量的值为空,需要显式地赋值为 null。
- any、unknown、void:这是 TypeScript 的类型注释,用来描述变量的类型。any 表示任意类型,可以赋任何值;unknown 表示未知类型,不允许直接使用,需要先进行类型检查;void 表示空类型,常用于表示函数没有返回值。
- never:这是 TypeScript 的特殊类型,表示与任何值不兼容的类型。通常用于表示永远不会发生的情况,如抛出异常或永远不会执行到的代码。
- 数组类型 []:表示一组同类型的数据集合,可以通过下标访问其中的元素。例如:let arr: number[] = [1, 2, 3];
- 元组类型 tuple:表示一组不同类型的数据集合,可以通过下标访问其中的元素,并且每个元素的类型可以不同。例如:let tup: [number, string] = [1, 'a']; 表示第一个元素为数字类型,第二个元素为字符串类型。