美文网首页
一文搞清JS、ES、TS的关系

一文搞清JS、ES、TS的关系

作者: 黑面书生94614 | 来源:发表于2020-10-13 09:44 被阅读0次

    前言

    相信很多前端小伙伴都对ECMAScript,JavaScript,TypeScript这几个词相当熟悉,可以说是我们工作的核心技术,但如果具体问起来这三者到底是什么关系,有什么区别,恐怕很多小伙伴和小黑一样,很难对其进行准确的描述,所以小黑决定和大家一起彻底搞明白他们的关系与区别

    image

    三者关系

    ECMAScript

    ECMAScript,即ECMA-262定义的语言,并不局限于Web浏览器。事实上,这门语言没有输入和输出之类的方法。

    ECMA-262将这门语言作为一个基准来定义,以便在它之上再构建更稳健的脚本语言。如果不涉及浏览器的话,ECMA-262在基本的层面,它描述这门语言的如下部分:

    • 语法
    • 类型
    • 语句
    • 关键字
    • 保留字
    • 操作符
    • 全局对象

    ECMAScript只是对实现这个规范描述的所有方面的一门语言的称呼,其实也可以理解为一个语言标准,JavaScript实现了ECMAScript,而Adobe ActionScript同样也实现了ECMAScript,只要你想,也可以构建一门脚本语言如XXScript来实现ECMAScript

    JavaScript

    虽然JavaScriptECMAScript在平时使用时基本上是同义词,但JavaScript远远不限于ECMA-262所定义的哪些部分。完整的JavaScript实现包含以下几个部分:

    • 核心(ECMAScript)
    • 文档对象模型(DOM)
    • 浏览器对象模型(BOM)

    可以理解为ECMAScript是形成JavaScript语言基础的脚本语言,再加上DOMBOM构成了完整的JavaScript实现

    TypeScript

    TypeScriptJavaScript的超集,添加了可选的静态类型系统、很多尚未正式发布的ECMAScript新特性(如装饰器)等,最终会被编译为JavaScript代码。

    小结

    如果用三句话概括他们的关系,那就是,ECMAScript是标准语言,JavaScriptECMAScript的实现,TypeScriptJavaScript的超集。

    小黑水平有限,如有不足与错误之处,敬请赐教!

    相关文章

      网友评论

          本文标题:一文搞清JS、ES、TS的关系

          本文链接:https://www.haomeiwen.com/subject/wkompktx.html