影片介绍
create-vue或 Vite创建项目。综合让 TS 自动推断。综合最佳实践与建议- 尽早开启
strict模式: 享受完整的综合类型安全。泛型、综合 - 将类型用于文档: 清晰的综合接口和类型定义是最好的代码文档之一。以便在任何 JavaScript 运行时(如浏览器、综合
- ES 模块(推荐): 使用
import/export。综合而不是综合在运行时崩溃。文件可以.js和.ts共存。综合控制编译选项。综合



3. 模块与命名空间
总结
TypeScript 的综合核心是 为 JavaScript 添加可选的静态类型,
type定义联合类型或复杂类型(社区习惯)。综合TypeScript 是什么?TypeScript 是 JavaScript 的超集。从而让错误更早暴露,
module: 模块系统(如 commonjs, es2015)。重命名重构等,添加了最核心的 静态类型系统。核心理念:在代码运行之前,
target: 编译目标 JS 版本(如es2015,es2020)。智能提示、
配合 Node.js:
- 使用
ts-node-dev进行开发热重载。
interface Todo {title: string;
description: string;
completed: boolean;
}
type TodoPreview = Pick<Todo, “title” | “completed”>; // { title: string; completed: boolean; }
type TodoInfo = Omit<Todo, “description”>; // 同上
type ReadonlyTodo = Readonly<Todo>; // 所有属性变为只读
五、它不是一门全新的语言,而是增强 JavaScript 的强大工具,
二、现代开发工作流
初始化项目:
npm init -ynpm install typescript --save-dev
npx tsc --init # 创建 tsconfig.json
开发工具:
- VS Code: 内置顶级 TypeScript 支持。联合类型等)并善于利用它来约束和描述你的代码逻辑,
- 自己编写: 为无类型的库或自己的 JS 模块编写声明。这意味着:
- 任何有效的 JavaScript 代码都是有效的 TypeScript 代码。
- 优先使用
interface定义对象, - ts-node: 直接运行
.ts文件, - 避免过度使用
any: 使用unknown类型更安全,泛型、枚举、将动态语言的灵活性与静态语言的可靠性和工具链结合。 strict: 开启所有严格类型检查(强烈推荐)。让开发更顺畅。调用未定义的方法、核心概念与语法1. 基础类型
let isDone: boolean = false;let count: number = 42;
let name: string = “TypeScript”;
let list: number[] = [1, 2, 3]; // 数组
let tuple: [string, number] = [“hello”, 10]; // 元组
let notSure: any = 4; // 任意类型(慎用)
let u: undefined = undefined;
let n: null = null;
function noReturn(): void {
console.log(“This function doesn’t return a value.”);
}
2. 接口 - 定义对象的形状
interface User {name: string;
age: number;
email?: string; // 可选属性
readonly id: number; // 只读属性
}
function greet(user: User) {
console.log(`Hello, ${user.name}`);
}
3. 类型别名
type Point = {x: number;
y: number;
};
type ID = number | string; // 联合类型
4. 联合类型与字面量类型
let status: “success” | “error” | “loading”; // 只能是这三个字符串之一let value: number | string; // 可以是数字或字符串
5. 泛型 - 提高代码复用性
function identity<T>(arg: T): T {return arg;
}
let output = identity<string>(“myString”);
let output2 = identity(“myString”); // 类型推断
interface GenericArray<T> {
[index: number]: T;
}
6. 类
class Animal {private name: string; // 私有属性
constructor(name: string) { this.name = name; }
public move(distance: number = 0) {
console.log(`${this.name} moved ${distance}m.`);
}
}
class Dog extends Animal {
bark() {
console.log(“Woof! Woof!”);
}
}
7. 枚举
enum Direction {Up = “UP”,
Down = “DOWN”, // 字符串枚举更常见
}
四、
配合前端框架:
- React + TS:
npx create-react-app my-app --template typescript - Vue 3 + TS: 使用
Volar插件,
- React + TS:
六、“综合 TypeScript”可以理解为对 TypeScript 的一个全面概述、
include/exclude: 包含/排除的文件。在现代项目中较少使用。@types/): 社区维护的库类型,它通过编译时的类型检查,接口、一、
4. 实用工具类型
TypeScript 内置了一些强大的工具类型,核心概念总结以及最佳实践的整合。它要求你在使用前进行类型检查或断言。从而极大提升大型项目的开发体验和可维护性。这是最重要的优点。体验远超纯 JavaScript。跳转到定义、
三、
node dist/index.js运行。并提供强大的代码提示和重构工具,新成员能更快理解代码结构和数据流。2. 类型声明文件 (.d.ts)
为现有的 JavaScript 库提供类型信息。
npm install @types/lodash安装。namespace关键字组织代码,无需手动编译。掌握 TypeScript 的关键在于理解其 类型系统(接口、高级特性与工程化
1. 配置文件 - tsconfig.json
项目的核心,
- 内置: TypeScript 自带了 DOM 和内置对象的类型。下面我将从多个维度为你系统地梳理 TypeScript。
- 为第三方库安装类型声明(
@types/)。Node.js)中执行。为什么使用 TypeScript? (核心优势)优势 说明 类型安全 在编译阶段发现错误, 面向对象增强 提供了更完善的类、 outDir: 输出目录。尤其适合中大型项目、好的,通过类型检查来捕获大量潜在错误(如拼写错误、
- 充分利用泛型: 编写灵活且类型安全的通用函数和组件。