类型系统
- 在开发过程中找错
- 使用“类型注解”来分析代码
- 仅存在于开发阶段
不会提供性能优化,
JavaScript写完可以通过工具进行性能优化编译过程
TypeScript代码TypeScript编译器JavaScript代码- 机器码
-
安装
npm install -g typescript ts-node
测试是否安装成功
tsc --help
返回:tsc: The TypeScript Compiler - Version 4.5.5
初始化
npm initnpm install axios
TS代码
import axios from 'axios'const url = "https://jsonplaceholder.typicode.com/todos/1";console.log(axios.get(url).then(res=>{console.log(res);}));
typescript转JavaScripttsc .\index.tsnode index.js
或者直接转换并执行
ts-node .\index.ts
类型注解
import axios from 'axios'const url = "https://jsonplaceholder.typicode.com/todos/1";// 接口interface Todo {id: number;title: string;completed: boolean;}// 请求axios.get(url).then(res => {// 类型 interface Todoconst todo = res.data as Todo;const id = todo.id;const title = todo.title;const completed = todo.completed;logTodo(id, title, completed);});// 模板打印const logTodo = (id: number, title: string, completed: boolean) => {console.log(`这个todo的ID为:${id},它的标题是:${title},是否完成:${completed}`);}
类型分类
元类型
primitive types numberbooleanundefinedvoidstringsymbol-
对象类型
object types functionarraysclassesobjects类型的副作用
typescript中如果你未设置类型,那么会根据你定义的数据进行类型审查,帮你选择一个类型。
