Loading... ## 简介 `typescript`是要给类型检查器,简单来说,就是会在编译运行钱检查语法错误,能够避免运行存在错误的代码。一般来说 `vscode` `webstorm`都支持检查类型错误,它们都能够在编写代码期间提示错误。 同时,`typescript`不会更改 `js`的运行代码,即使存在类型错误,也不是因此更改 `js`,这样的话可以保证 `js`的运行逻辑是按照原来的逻辑。 一旦TypeScript的编译器完成了对代码的检查,它就会_擦除_类型以生成生成的"编译"代码。这意味着一旦编译了代码,生成的普通 JS 代码就没有类型信息。 ## 基础类型 `TypeScript`支持与 `JavaScript`几乎相同的数据类型,此外还提供了实用的枚举类型方便我们使用。 - boolean - number - string - Array - number[] - `Array<number>` - 元组 ``` let x: [string, number]; x = ['hello', 10]; // OK x = [10, 'hello']; // Error ``` 当访问一个越界的元素,会使用联合类型替代: ``` x[3] = 'world'; // OK, 字符串可以赋值给(string | number)类型 console.log(x[5].toString()); // OK, 'string' 和 'number' 都有 toString x[6] = true; // Error, 布尔不是(string | number)类型 ``` - 枚举 枚举可以当作类型也可以当作值 ``` enum Color {Red, Green, Blue} ``` - any - void - null - undefined - never - object - 类型断言 ``` (<string>someValue).length (someValue as string).length ``` 以上的都是基本的类型,都能够在项目中遇到并且使用的,但显然,只有这些是肯定不够的,其中更加高级的特性联合类型,`type`, `interface`, 泛型等才是更加重要的存在。 ## 实际操作 ```typescript let num1: number num1 = 123 // OK num1 = "123" // Error //@ts-ignore num1 = "123" // OK(上一行代码会跳过这一行类型检查,就不会报错了,但不推荐这样) ``` 最后修改:2022 年 01 月 27 日 09 : 16 AM © 允许规范转载 赞赏 如果觉得我的文章对你有用,请随意赞赏 赞赏作者