引言
TypeScript 是一种由微软开发的开源、跨平台的编程语言,它是 JavaScript 的超集,为 JavaScript 添加了静态类型系统和其他高级功能。随着 TypeScript 在前端开发领域的广泛应用,掌握 TypeScript 已经成为很多开发者必备的技能之一。本文将整理一系列常见的 TypeScript 面试题,帮助准备面试的开发者们复习和巩固知识。
1. TypeScript 基础
1.1 TypeScript 是什么?
TypeScript 是一种静态类型的、面向对象的编程语言,它可以编译成纯净的 JavaScript 代码。
它是 JavaScript 的超集,意味着任何有效的 JavaScript 代码也是有效的 TypeScript 代码。
1.2 TypeScript 和 JavaScript 有什么区别?
TypeScript 添加了静态类型系统,可以在编译阶段捕获类型错误。
TypeScript 支持类、接口、枚举等面向对象编程概念。
TypeScript 提供了更强大的工具支持,如自动完成、智能感知等功能。
1.3 如何安装 TypeScript?
通过 npm 安装 TypeScript:
bash
深色版本
1npm install -g typescript
1.4 如何编译 TypeScript?
- 使用 tsc 命令编译 TypeScript 文件:bash
深色版本
1tsc filename.ts
2. 类型与接口
2.1 TypeScript 中有哪些基本类型?
string, number, boolean, null, undefined, void, never, any, unknown。
2.2 如何定义联合类型和交叉类型?
联合类型:使用 | 符号表示多种类型之一。
typescript
深色版本
1let value: string | number;
交叉类型:使用 &
符号表示多个类型的组合。typescript
深色版本
1type Person = {
2 name: string;
3};
4
5type Developer = {
6 skill: string;
7};
8
9type DevPerson = Person & Developer;
2.3 接口和类型别名的区别是什么?
- 接口(Interface)用于描述对象的形状,可以扩展和合并。typescript
深色版本
1interface Person {
2 name: string;
3 age: number;
4}
2.4 如何实现泛型?
- 使用
<T>
定义泛型类型参数。typescript
深色版本
1function identity<T>(arg: T): T {
2 return arg;
3}