跳到正文

TypeScript

中级通用

TypeScript 是在 JavaScript 基础上加入类型检查的编程语言,代码通常会转换成 JavaScript 再运行。它能让你在开发时发现字段用错、参数传错等问题,例如提前指出订单金额被当成文字处理。

你可能会说:「我想让 AI 写的网页代码在运行前就能发现字段和参数用错的问题。」

读之前建议先了解

动手看看

检查代码订单代码金额是文字类型检查核对类型转换后代码尚未转换结算页面尚未运行
1

我们要给订单金额加上运费。代码声明金额必须是数字,却把它写成了带引号的文字“100”,先送去检查。

要点

  1. 1

    先描述数据再检查用法

    做订单后台时,你可以把订单金额定义为数字、付款状态定义为几种固定取值。之后如果 AI 把金额当文字拼接,或者写出不存在的状态,类型检查就能指出来。

  2. 2

    很多类型可以从代码推断

    你不必给每个变量都手写类型。比如函数返回一个数字,TypeScript 通常能据此推断后续变量的类型。把类型写在接口、函数参数等关键位置,更方便你和 AI 对齐数据约定。

  3. 3

    检查发生在运行之前

    TypeScript 代码通常要转换成 JavaScript 才能运行;类型信息不会因此变成运行时的数据校验。比如接口返回了意料之外的字段值,程序仍要在接收数据时检查。

容易混淆的地方

TypeScript 和 JavaScript 不是两套互不相干的运行环境:TypeScript 扩展了 JavaScript 的写法,最终通常仍由 JavaScript 运行环境执行。它也不同于数据校验:类型检查依据代码中的类型约定找问题,不能保证用户输入或 API 响应实际符合约定。

什么时候用

适合用

  • 你在做字段较多的管理后台,订单、用户和权限数据会经过多个页面和函数,想让 AI 写代码时有明确的数据约定。
  • 你和 AI 协作维护一个不断迭代的网页应用,常改动函数参数或 API 数据结构,希望相关用法能在开发时一起暴露问题。

不适合用

  • 你只是要给网页加一小段临时脚本,代码很短且不会继续维护;直接用 JavaScript 更省去项目配置和转换步骤。
  • 你只需要保存一份供程序读取的静态配置数据,不需要写程序逻辑;用 JSON 等配置格式更贴合用途。

练一练

你让 AI 为订单后台写 TypeScript。接口文档说金额是数字,但服务端偶尔返回文字。哪种处理更能解决这个问题?

让 AI 帮你做

请用 TypeScript 实现订单列表页。先定义订单和接口响应的类型,让筛选、金额展示等函数的参数与返回值清楚可查;对接口返回的数据做运行时校验,不要把类型声明当作数据已经有效的证明。

接下来学什么