【前端--面试】常见面试题(十一)—— TypeScript

3,253 阅读2分钟

这是我参与8月更文挑战的第23天,活动详情查看:8月更文挑战

TypeScript 是 Microsoft 开发的JavaScript 的开源超集,用于在不破坏现有程序的情况下添加附加功能。由于其独特的优势,例如,静态类型和许多速记符号,TypeScript 现在被前端和全栈开发人员广泛用于大型项目。

TypeScript 的主要特点

  • 跨平台: TypeScript 编译器可以安装在任何操作系统上,包括 Windows、macOS 和 Linux。
  • ES6 特性: TypeScript 包含计划中的 ECMAScript 2015 (ES6) 的大部分特性,例如箭头函数。
  • 面向对象的语言: TypeScript 提供所有标准的 OOP 功能,如类、接口和模块。
  • 静态类型检查: TypeScript 使用静态类型并帮助在编译时进行类型检查。因此,你可以在编写代码时发现编译时错误,而无需运行脚本。
  • 可选的静态类型: 如果你习惯了 JavaScript 的动态类型,TypeScript 还允许可选的静态类型。
  • DOM 操作: 您可以使用 TypeScript 来操作 DOM 以添加或删除客户端网页元素。

TypeScript的优点

  • TypeScript 更具表现力,语法混乱更少。
  • 由于高级调试器专注于在编译时之前捕获逻辑错误,调试很容易。
  • 静态类型使 TypeScript 比 JavaScript 的动态类型更易于阅读和结构化。
  • 由于通用的转译,它可以跨平台使用,在客户端和服务器端项目

TypeScript 与 JavaScript 的关系?

TypeScript 是 JavaScript 的开源语法超集,可编译为 JavaScript。所有原始 JavaScript 库和语法仍然有效,但 TypeScript 增加了 JavaScript 中没有的额外语法选项和编译器功能。

TypeScript 还可以与大多数与 JavaScript 相同的技术接口,例如 Angular 和 jQuery。

TypeScript 的内置数据类型有哪些

  • 数字类型: 用于表示数字类型的值。TypeScript 中的所有数字都存储为浮点值。

  • 布尔类型: 一个逻辑二进制开关,包含true或false

  • Null 类型: Null 表示值未定义的变量。

  • 未定义类型: 一个未定义的字面量,它是所有变量的起点。

  • void 类型: 分配给没有返回值的方法的类型。

TypeScript 中的 JSX 是什么?

JSX 是一种可嵌入的类似于 XML 的语法,允许你创建 HTML。TypeScript 支持嵌入、类型检查和将 JSX 直接编译为 JavaScript。

TypeScript 支持哪些 JSX 模式?

TypeScript有内置的支持preservereactreact-native

  • preserve 保持 JSX 完整以用于后续转换。

  • react不经过 JSX 转换,而是react.createElement作为.js文件扩展名发出和输出

  • react-native结合起来preservereact因为它维护所有 JSX 和输出作为.js扩展。