TypeScript 的类型是编译时约束

TypeScript 的类型检查发生在编译阶段,编译后的 JavaScript 代码不包含类型信息。

核心理解

  • 编译时:TS → JS,类型被擦除
  • 运行时:纯 JS 代码,无类型检查
  • 目的:开发阶段发现错误,提升代码质量

示例

// TypeScript
function greet(name: string): string {
  return "Hello, " + name;
}
 
// 编译后的 JavaScript
function greet(name) {
  return "Hello, " + name;
}

注意事项

  • 不能依赖类型来做运行时逻辑
  • 需要类型断言时要考虑边界情况

关联