温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

ecmascript和typescript区别在哪

发布时间:2026-09-19 08:44:33 来源:亿速云 阅读:87 作者:小樊 栏目:编程语言

ECMAScript 和 TypeScript 的区别,可以从**“是什么”和“怎么用”**两个层面来理解。


一、基本概念

1. ECMAScript(ES)

  • ECMAScript 是 JavaScript 的语言标准
  • 由 ECMA 国际组织制定(规范编号 ECMA-262)
  • 我们平时说的:
    • ES5
    • ES6 / ES2015
    • ES2020、ES2023
      都是 ECMAScript 的不同版本
  • 浏览器和 Node.js 直接运行的是 ECMAScript(JavaScript)

✅ 简单说:
ECMAScript = JavaScript 的“语法规则说明书”


2. TypeScript(TS)

  • TypeScript 是 Microsoft 开发的一种“超集语言”
  • 它在 ECMAScript 的基础上:
    • ✅ 增加了类型系统
    • ✅ 增加了一些编译期特性
  • TypeScript 不能直接运行在浏览器
  • 需要先 编译(transpile)成 JavaScript(ECMAScript)

✅ 简单说:
TypeScript = JavaScript + 类型 + 编译检查


二、核心区别对比

对比项 ECMAScript TypeScript
本质 JavaScript 标准 JavaScript 的超集
是否可直接运行 ✅ 可以 ❌ 不可以
类型系统 ❌ 无(动态类型) ✅ 静态类型
编译 不需要 需要编译成 JS
报错时机 运行时 编写/编译时
适合场景 小型脚本、快速开发 中大型项目

三、语法上的直观区别

ECMAScript 示例

function add(a, b) {
  return a + b;
}
  • a、b 是什么类型?不知道
  • 传字符串、数字、对象都不会立刻报错

TypeScript 示例

function add(a: number, b: number): number {
  return a + b;
}
  • a、b 必须是 number
  • 传错类型,编辑器直接报错

四、TypeScript 能编译成不同 ES 版本

TypeScript 可以指定目标版本:

// tsconfig.json
{
  "target": "ES2017"
}

意思是:

用 TS 写代码 → 编译成 ES2017 的 JavaScript


五、一句话总结

ECMAScript 是 JavaScript 本身,TypeScript 是带类型的 JavaScript 编写方式。

如果你愿意,我也可以帮你:

  • 从 JS 快速过渡到 TS
  • 看一个真实项目里 TS 怎么用
  • 解释「为什么大厂都用 TypeScript」
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手