什么是 TypeScript?
TypeScript 是一种强类型编程语言,通过添加可选的静态类型注解来构建在 JavaScript 之上。由 Microsoft 开发,它编译为纯 JavaScript,可以在任何 JavaScript 运行的地方运行。
快速了解
| 全称 | TypeScript 编程语言 |
|---|---|
| 创建时间 | 2012 年由 Microsoft 开发 |
| 规范文档 | 官方规范 |
TypeScript 工作原理
TypeScript 于 2012 年由 Microsoft 发布,旨在解决构建大规模 JavaScript 应用程序的挑战。它为 JavaScript 添加了接口、枚举、泛型和类型推断等功能,同时保持完全兼容性。TypeScript 代码被转译为 JavaScript,允许它在浏览器、Node.js 和其他 JavaScript 环境中运行。类型系统在编译时而不是运行时捕获错误,提高了代码质量和开发人员生产力。TypeScript 已成为 Angular 等大型前端框架的标准,并在行业中被广泛采用。
主要特点
- 带有静态类型的 JavaScript 超集
- 编译为纯 JavaScript
- 支持接口、枚举和泛型
- 类型推断减少注解负担
- 出色的 IDE 支持和工具
- 渐进式采用 - 可以与 JavaScript 混合使用
常见用途
- 大规模 Web 应用程序
- React、Angular、Vue.js 项目
- Node.js 后端开发
- 库和框架开发
- 企业应用程序开发
示例
// 类型注解
let name: string = '张三';
let age: number = 30;
let isActive: boolean = true;
// 接口
interface User {
id: number;
name: string;
email?: string; // 可选
}
// 带类型的函数
function greet(user: User): string {
return `你好,${user.name}!`;
}
// 泛型
function identity<T>(arg: T): T {
return arg;
}
// 类型推断
const numbers = [1, 2, 3]; // 推断为 number[]
const doubled = numbers.map(n => n * 2);
// 联合类型
type Status = 'pending' | 'approved' | 'rejected';
// 带类型的类
class Person {
constructor(
public name: string,
private age: number
) {}
}