TypeScript 30 分钟上手:零基础也能写的前端代码

青山不改需求改
2026-01-02 20:51
阅读 1885

大家好,我是阿哲,一名在大厂干了三年前端开发的工程师,平时也在 B 站分享技术干货。最近很多刚入门的朋友私信问我:“TypeScript 到底难不难?要不要学?”其实我当初学的时候也一脸懵,文档一堆术语,配置复杂得像解谜游戏。但后来我发现——只要用对方法,30 分钟就能写出第一个 TS 程序!

今天这篇教程,就是专门为你——完全零基础的新手量身打造的。不讲理论堆砌,只带你动手写代码、跑起来、看到结果。全程实践导向,跟着敲一遍,你就能理解 TypeScript 的核心价值。


为什么你需要 TypeScript?

简单说:TypeScript 是 JavaScript 的“超集”,意思是你写的 JS 代码在 TS 里都能直接运行,但 TS 多了“类型检查”这个超能力。

举个例子:
你在 JS 里写 user.name,如果 usernull,程序会突然报错崩溃。但在 TS 里,编辑器会提前告诉你:“嘿,user 可能是空的,小心点!”——这能帮你避免大量线上 bug。

我在大厂项目里,90% 的新项目都强制使用 TS。它就像给你的代码装了个“安全气囊”。


第一步:环境准备(5 分钟搞定)

别担心,现在搭建 TS 环境比泡面还快!

1. 安装 Node.js

  • 访问 https://nodejs.org,下载 LTS 版本(长期支持版)
  • 安装时一路“下一步”即可
  • 安装完成后,打开终端(Windows 用 PowerShell 或 CMD,Mac 用 Terminal),输入:
    node -v
    npm -v
    
    如果看到版本号(比如 v18.x.x),说明安装成功!

2. 初始化 TypeScript 项目

在你想放代码的文件夹里(比如桌面新建一个 ts-demo 文件夹),执行以下命令:

# 初始化 npm 项目(生成 package.json)
npm init -y

# 安装 TypeScript 开发依赖
npm install -D typescript

# 生成 tsconfig.json 配置文件
npx tsc --init

💡 小贴士:-D 表示“开发依赖”,意思是上线时不需要这些包,只在你本地开发用。

3. 创建你的第一个 TS 文件

在项目根目录新建一个 index.ts 文件,随便写点东西:

console.log("Hello, TypeScript!");

4. 编译并运行

在终端运行:

npx tsc index.ts

你会看到生成了一个 index.js 文件!接着运行:

node index.js

输出:Hello, TypeScript! —— 恭喜你,第一个 TS 程序跑通了!

🚨 注意:每次改 .ts 文件后,都要重新 npx tsc 编译成 .js 才能运行。后面我们会教你怎么自动编译。


核心概念:类型、接口、函数(10 分钟掌握)

TypeScript 的核心就是 给变量、函数、对象加上“类型标签”,让代码更清晰、更安全。

1. 基础类型(最常用 5 种)

类型 示例 说明
string "hello" 字符串
number 42, 3.14 数字(不分整数浮点)
boolean true, false 布尔值
null null 空值
undefined undefined 未定义

代码示例:

let name: string = "Alice";
let age: number = 25;
let isActive: boolean = true;

// ❌ 错误!TS 会报错:不能把 number 赋给 string
// name = 123;

✅ 小技巧:TS 能自动推断类型!所以通常可以省略类型声明:

let name = "Alice"; // 自动推断为 string

2. 数组和对象

数组:

// 写法1:元素类型 + []
let fruits: string[] = ["apple", "banana"];

// 写法2:Array<类型>
let scores: Array<number> = [90, 85, 95];

对象(用 interface 定义结构):

// 定义一个“用户”结构
interface User {
  name: string;
  age: number;
  email?: string; // ? 表示可选属性
}

const user: User = {
  name: "Bob",
  age: 30
  // email 可以不写,因为是可选的
};

💡 我当初学的时候总混淆 typeinterface,其实新手用 interface 就够了,它专门用来描述对象形状。

3. 函数:参数和返回值也要有类型!

function greet(name: string): string {
  return "Hello, " + name;
}

// 调用
greet("Charlie"); // ✅ 正确
// greet(123);     // ❌ 报错:参数应为 string

箭头函数也一样:

const add = (a: number, b: number): number => a + b;

实战项目:做一个简单的待办事项列表(12 分钟)

现在,我们把上面的知识串起来,写一个控制台版 Todo 应用!

步骤 1:定义数据结构

index.ts 中添加:

interface Todo {
  id: number;
  text: string;
  completed: boolean;
}

let todos: Todo[] = [];
let nextId = 1;

步骤 2:添加任务函数

function addTodo(text: string): void {
  todos.push({
    id: nextId++,
    text,
    completed: false
  });
}

void 表示函数没有返回值。

步骤 3:标记完成 & 列出所有任务

function toggleTodo(id: number): void {
  const todo = todos.find(t => t.id === id);
  if (todo) {
    todo.completed = !todo.completed;
  }
}

function listTodos(): void {
  todos.forEach(todo => {
    const status = todo.completed ? "[✓]" : "[ ]";
    console.log(`${status} ${todo.id}: ${todo.text}`);
  });
}

步骤 4:测试一下!

在文件末尾添加:

// 添加两个任务
addTodo("学习 TypeScript");
addTodo("写博客");

// 标记第一个任务为完成
toggleTodo(1);

// 打印所有任务
listTodos();

步骤 5:编译并运行

npx tsc index.ts
node index.js

输出:

[✓] 1: 学习 TypeScript
[ ] 2: 写博客

🎉 恭喜!你已经用 TS 写了一个有逻辑的小程序!


新手常见问题解答(避坑指南)

Q1:为什么我改了 .ts 文件,但 node 运行的还是旧代码?

A:因为你忘了重新编译!TS 不是直接运行的,必须先 npx tsc 生成 .js 文件。

🔧 解决方案:安装 ts-node,可以直接运行 TS 文件:

npm install -D ts-node
npx ts-node index.ts  # 直接运行,无需手动编译

Q2:报错 “Cannot find name ‘xxx’” 怎么办?

A:通常是拼写错误,或者变量没声明。TS 对大小写敏感,userNameusername 是两个东西!

Q3:类型太严格了,老报错,能不能关掉?

A:可以,但不建议!TS 的价值就在于提前发现问题。如果你确定某个地方没问题,可以用 // @ts-ignore 临时跳过检查(慎用!)。

Q4:怎么在浏览器里用 TS?

A:需要配合打包工具(如 Vite、Webpack)。新手建议先用 Node.js 练手,后面再学前端框架集成。


下一步学习建议 + 免费资源推荐

你已经跨过了最难的第一步!接下来:

📚 推荐学习路径

  1. 深入类型系统:联合类型(string | number)、泛型(Array<T>
  2. 工程化:用 Vite 创建 TS + React/Vue 项目
  3. 类型定义文件:理解 @types/xxx 是什么

🌟 免费优质资源(我都亲自用过!)

资源类型 名称 地址
官方文档 TypeScript Handbook https://www.typescriptlang.org/docs/
GitHub 示例 ts-examples https://github.com/microsoft/TypeScript/tree/main/samples
中文教程 TypeScript 入门教程(阮一峰) https://ts.xcatliu.com/
视频课程 B站:TypeScript 零基础实战 搜索“阿哲 TypeScript”(就是我!)

💬 最后说一句:不要怕报错! TS 的报错信息其实是在“教你写正确的代码”。我当初每天看几十条红标,现在反而觉得那是最贴心的“编程教练”。


结语

30 分钟很短,但足够让你亲手写出第一个 TypeScript 程序。记住:编程不是背概念,而是动手做。今天你写的 Todo 列表,就是未来大型项目的起点。

如果你觉得这篇教程帮到了你,欢迎去 B 站关注我(搜“前端阿哲”),我会持续更新更多“人话版”技术教程。下期见!

评论 0

最热最新
暂无评论
青山不改需求改Lv.1
0
影响力
0
文章
0
粉丝