TypeScript 相比 JavaScript 解决了什么问题?类型推断是什么?
TS 在 JS 之上加了静态类型系统,核心价值:
- 编译期发现错误(如调用未定义方法、传错参数类型)
- IDE 智能提示 / 重构安全(改名、跳转定义)
- 可读性:类型即文档
类型推断:TS 能在不显式标注时自动推导类型:
const n = 1 // 推断为 number
let s = 'hello' // 推断为 string
const arr = [1, 2, 3] // 推断为 number[]
function add(a: number, b: number) { return a + b } // 返回值推断 number原则:变量初始化、返回值等能推断处就不写冗余标注;函数参数必须显式标注(无法推断)。