TypeScript快速入门:30分钟上手指南
🚀 开篇:什么是TypeScript,它有什么用?

在开始之前,先让我们简单介绍一下 TypeScript。
TypeScript 是 JavaScript 的一个“加强版”。它是在 JavaScript 基础上加了一层「类型系统」。你可以理解为:
TypeScript = JavaScript + 类型检查系统
通俗地说,JavaScript是自由的,TypeScript是有纪律的。
比如你在 JavaScript 中写:
let age = "18";
这在 JS 里没问题,但在 TypeScipt 中会报错,因为它期望 age 是一个数字(number)而不是字符串(string)。这种严格的类型检查能帮我们提前发现错误,避免运行时崩溃。
🧠 学完你能做什么?
- 编写更健壮、易维护的代码
- 在大型项目中提高代码安全性
- 更好地使用现代前端框架(如 React/Vue/Angular)
- 提升团队协作效率
🧰 环境准备:搭建你的第一个TypeScript开发环境

我们不需要安装一大堆工具,只需要两个小工具即可:
Step 1: 安装 Node.js 和 npm
👉 官网下载地址:https://nodejs.org/zh-cn/
安装完成后,在命令行中输入以下命令查看版本:
node -v
npm -v
如果有版本号输出(如 v18.16.0 和 9.x.x),说明安装成功!
Step 2: 安装 TypeScript
打开终端或命令行,执行:
npm install -g typescript
验证是否安装成功:
tsc -v
你会看到类似这样的输出:Version 5.x.x
Step 3: 创建你的第一个 .ts 文件
新建一个文件夹,比如叫 my-ts-project,然后在里面新建一个文件:hello.ts
写入如下代码:
console.log("Hello, TypeScript!");
保存后,在终端进入该目录并执行:
tsc hello.ts
这时你会发现在同一个目录下多了一个 hello.js 文件 —— 这就是 TypeScript 编译后的 JavaScript 文件!
再运行一下看看效果:
node hello.js
你应该能看到输出:Hello, TypeScript!
🌟 核心概念:五个最基础的知识点

我们来逐步学习 TypeScript 的核心基础知识,并结合代码示例帮助你理解。
① 变量声明与类型注解
在 JavaScript 中我们可以这样写变量:
let name = 'Tom';
let age = 25;
而在 TypeScript 中,我们可以给变量加上类型注解:
let name: string = 'Tom';
let age: number = 25;
也可以直接简写:
let isStudent: boolean = true;
let score: number = 90.5;
💡 如果你漏掉类型注解,TS也会根据赋值自动推断类型,但我们建议一开始就写明类型!
❗常见错误:
如果你这样写,TS会报错:
age = "30"; // 错误:不能将类型 "string" 分配给类型 "number"
② 函数参数和返回值类型
函数也要标注参数类型和返回类型:
function greet(name: string): string {
return "Hello, " + name;
}
let message = greet("Alice");
console.log(message);
如果没写返回值类型,TS也能帮你判断,但显式写出更好:
function add(a: number, b: number): number {
return a + b;
}
③ 数组的类型定义
数组有两种写法:
let numbers: number[] = [1, 2, 3];
// 或者
let names: Array<string> = ["Lucas", "Ethan"];
不兼容的例子:
names.push(42); // 报错:类型“number”不能添加到类型“string[]”
④ 对象类型的定义(type)
可以用 type 自定义对象类型:
type Person = {
name: string;
age: number;
isStudent?: boolean; // ? 表示可选属性
};
let user: Person = {
name: "Bob",
age: 20
};
这样你就知道这个对象应该长什么样,不会遗漏关键字段。
⑤ 联合类型 |(Union Types)
有时候变量可以是多个类型中的一个,用 | 符号表示:
let id: string | number;
id = 123; // OK
id = "abc"; // 也OK
id = true; // 报错:类型“boolean”不可赋值
联合类型非常适合处理不确定数据来源的情况。
🏗️ 实战项目:写一个“计算器小程序”
我们现在来实战演练一下,做一个简单的“加减乘除”计算器吧!
Step 1: 新建文件 calculator.ts
内容如下:
type Operation = "add" | "subtract" | "multiply" | "divide";
function calculate(a: number, b: number, op: Operation): number {
switch (op) {
case "add":
return a + b;
case "subtract":
return a - b;
case "multiply":
return a * b;
case "divide":
if (b === 0) {
throw new Error("不能除以0!");
}
return a / b;
default:
throw new Error("无效的操作");
}
}
let result = calculate(10, 5, "divide");
console.log("结果是:" + result);
Step 2: 编译并运行
在终端运行:
tsc calculator.ts
node calculator.js
你应该看到输出:
结果是:2
🎉 太棒了!你已经完成了第一个带类型系统的 TS 小程序!
❓常见问题解答(FAQ)
Q1:TypeScript必须编译吗?可以直接运行吗?
是的。TypeScript 需要被编译成 JavaScript 才能在浏览器或 Node.js 中运行。不过有一种方式可以跳过手动编译:安装 ts-node
npm install -g ts-node
然后直接运行:
ts-node calculator.ts
这样就不用每次执行 tsc 编译啦!
Q2:TypeScript会不会限制灵活性?
不会。TS 是渐进增强式的,支持所有 JS 语法。你可以先用 JS 写,再逐步加入类型检查。
Q3:我以前学过 JS,TS 怎么过渡?
很棒!JS 是基础。你只需要记住在变量和函数上加类型标注就好,其他都是一样的。
Q4:能否把旧 JS 项目改成 TS?
完全可以!步骤是:
- 修改
.js文件名成.ts - 给关键变量/函数加上类型
- 慢慢完善类型系统
TypeScript 支持「渐进迁移」,所以不必担心重写成本。
📚 下一步学习路径建议
恭喜你,你现在已经是 TypeScript 的入门玩家啦!
下面是你可以继续深入的方向:
✅ 建议一:掌握基本类型系统
- 接口 Interface vs type
- 泛型 Generic
- 元组 Tuple、枚举 Enum
✅ 建议二:学会使用类型推断
- 让TS自己分析类型的能力
- 使用联合类型、交叉类型等高级特性
✅ 建议三:搭配React或Vue使用
✅ 推荐资源
- TypeScript 官方中文手册:https://www.typescriptlang.org/docs/handbook/intro.html
- 实战网站:TypeScript Playground
- 推荐书籍:《TypeScript入门教程》by 张鑫旭
📝 总结
在这篇教程中,我们做了这些事:
✅ 介绍了 TypeScript 是什么,为什么要学
✅ 搭建了开发环境
✅ 学习了基本语法和五大核心知识点
✅ 实战编写了一个简易计算器
✅ 解答了初学者常问的问题
✅ 规划了下一步的学习路线
只要每天坚持实践一点 TypeScript,你会发现它真的能让你写出更好的代码,成为更专业的开发者!
📘 文末小彩蛋:一句话记住 TS 的本质
“TypeScript 是 JavaScript 的加强版,就像穿上了盔甲的士兵。”
如果你喜欢这篇文章,欢迎分享给更多想入门的同学,一起进步,一起成长!
🔚 END ✅

评论 0