前言
置信很多前端小伙伴都对ECMAScript
,JavaScript
,TypeScript
这几个词相当相熟,能够说是咱们工作的核心技术,但如果具体问起来这三者到底是什么关系,有什么区别,恐怕很多小伙伴和小黑一样,很难对其进行精确的形容,所以小黑决定和大家一起彻底搞明确他们的关系与区别
三者关系
ECMAScript
ECMAScript
,即ECMA-262
定义的语言,并不局限于Web浏览器。事实上,这门语言没有输出和输入之类的办法。
ECMA-262
将这门语言作为一个基准来定义,以便在它之上再构建更持重的脚本语言。如果不波及浏览器的话,ECMA-262
在根本的层面,它形容这门语言的如下局部:
- 语法
- 类型
- 语句
- 关键字
- 保留字
- 操作符
- 全局对象
ECMAScript
只是对实现这个标准形容的所有方面的一门语言的称说,其实也能够了解为一个语言规范,JavaScript
实现了ECMAScript
,而Adobe ActionScript
同样也实现了ECMAScript
,只有你想,也能够构建一门脚本语言如XXScript
来实现ECMAScript
JavaScript
尽管JavaScript
和ECMAScript
在平时应用时基本上是同义词,但JavaScript远远不限于ECMA-262所定义的哪些局部。残缺的JavaScript实现蕴含以下几个局部:
- 外围(ECMAScript)
- 文档对象模型(DOM)
- 浏览器对象模型(BOM)
能够了解为ECMAScript
是造成JavaScript
语言根底的脚本语言,再加上DOM
和BOM
形成了残缺的JavaScript
实现
TypeScript
TypeScript
是JavaScript
的超集,增加了可选的动态类型零碎、很多尚未正式公布的ECMAScript
新个性(如装璜器)等,最终会被编译为JavaScript
代码。
小结
如果用三句话概括他们的关系,那就是,ECMAScript
是规范语言,JavaScript
是ECMAScript
的实现,TypeScript
是JavaScript
的超集。
小黑程度无限,如有有余与谬误之处,敬请赐教!
本篇文章由一文多发平台ArtiPub主动公布
发表回复