TypeScript
2025/12/3大约 2 分钟
TypeScript
TypeScript 的优势
- 类型系统:TypeScript 提供了静态类型检查,可以在编译时发现潜在的类型错误,从而减少运行时错误。
- 面向对象编程:TypeScript 支持类、接口、继承等面向对象编程的特性,使得代码更加模块化和可维护。
- 丰富的工具支持:TypeScript 拥有强大的编辑器支持,如自动补全、重构和导航等功能,提高了开发效率。
- 广泛的社区支持:TypeScript 拥有庞大的社区和丰富的第三方库,开发者可以方便地找到所需的资源和支持。
- 与 JavaScript 兼容:TypeScript 是 JavaScript 的超集,现有的 JavaScript 代码可以直接使用 TypeScript 编译器进行编译,无需修改。
TypeScript 基础语法
1. 类型注解
在 TypeScript 中,可以为变量、函数参数和返回值添加类型注解,以指定它们的类型。例如:
let num: number = 10;
let str: string = "hello";
let isTrue: boolean = true;
function add(a: number, b: number): number {
return a + b;
}2. 接口
接口用于定义对象的类型,可以包含属性和方法。例如:
interface Person {
name: string;
age: number;
sayHello(): void;
}
const person: Person = {
name: "Alice",
age: 25,
sayHello() {
console.log(`Hello, my name is ${this.name}`);
},
};3. 类
类用于定义对象的蓝图,可以包含属性和方法。例如:
class Animal {
name: string;
constructor(name: string) {
this.name = name;
}
sayHello() {
console.log(`Hello, my name is ${this.name}`);
}
}
const dog = new Animal("Buddy");
dog.sayHello();4. 泛型
泛型用于定义可重用的组件,可以接受任意类型的参数。例如:
function identity<T>(arg: T): T {
return arg;
}
const result = identity<string>("hello");5. 枚举
枚举用于定义一组命名的常量。例如:
enum Color {
Red,
Green,
Blue,
}
const color: Color = Color.Red;
console.log(color); // 输出 06. 类型断言
类型断言用于告诉编译器变量的实际类型。例如:
const element = document.getElementById("myElement") as HTMLInputElement;
element.value = "hello";7. 类型别名
类型别名用于为类型定义一个新名称。例如:
type Point = {
x: number;
y: number;
};
function printPoint(point: Point) {
}