TypeScript 是一种由微软开发的编程语言,它是 JavaScript 的严格超集,意味着任何合法的 JavaScript 代码都是合法的 TypeScript 代码。
TypeScript = JavaScript + 静态类型系统 + 面向对象特性 + 编译时检查
| 时间 | 事件 |
|---|---|
| 2012年 | 微软公开发布 TypeScript 0.8 |
| 2013年 | TypeScript 0.9 发布,支持泛型 |
| 2014年 | TypeScript 1.0 正式版发布 |
| 2015年 | 支持 ES6 模块和装饰器 |
| 2018年 | TypeScript 3.0 发布 |
| 2020年 | TypeScript 4.0 发布 |
| 至今 | 持续更新迭代 |
let name: string = "张三"
let age: number = 25
let isActive: boolean = true
name = 123 // 错误:不能将 number 赋值给 string
interface User {
id: number
name: string
email?: string
}
function getUser(user: User) {
console.log(user.name)
}
class Animal {
constructor(public name: string) {}
move(distance: number = 0) {
console.log(`${this.name} 移动了 ${distance} 米`)
}
}
class Dog extends Animal {
bark() {
console.log("汪汪!")
}
}
function identity<T>(arg: T): T {
return arg
}
let output = identity<string>("hello")
TypeScript 代码不能直接运行,需要编译成 JavaScript:
.ts 文件 → TypeScript 编译器 → .js 文件
编译过程会:
TypeScript 不是一门全新的语言,而是 JavaScript 的增强: