你知道 ES6~ES12等叫法是怎么来的吗?

前言

作为一名前端开发,学习 JavaScript 自是天经地义的事,但是,JavaScript 的发展历史是怎样的,恐怕有相当一部分人都不太了解。

我们常常听别人说并且自己也会说 ES6、ES7……ES12,那么,这些叫法到底是怎么来的?

今天,我们就来总结一下这些有关 JavaScript 的发展历程。

通过阅读本文,你将了解以下知识:

  • ECMA 是什么
  • ECMAScript 是什么
  • JavaScript 的由来
  • ES5 ~ ES12 的意义

关于 ECMA

ECMA 全称为 European Computer Manufacturers Association,翻译过来就是“欧洲计算机制造商协会”,是一个成立于 1961 年的、极具影响力的国际组织。

但是,因为计算机的国际化,ECMA 的标准牵涉到很多其他国家,因此于 1994 年改名为 Ecma国际,以表明其国际性。

Ecma国际 专门制定信息和通信系统的标准和报告,以促进和规范信息通信技术与消费电子产品。

迄今为止,Ecma国际 主动贡献了超过 400 个标准和 100 个技术报告,其中大约三分之二以上被定为国际标准,在国际上得到了广泛使用。

关于 JavaScript

JavaScript 在 1995 年由 Netscape (网景)公司的Brendan Eich(布兰登·艾奇),在网景导航者浏览器上首次设计实现而成,最初将其脚本语言命名为 LiveScript。

因为Netscape 与 Sun(升阳)合作,为了营销考虑,Netscape 与 Sun 微系统达成协议,希望它外观看起来像 Java(毕竟当时 Java 属于当红炸子鸡),因此取名为 JavaScript,但实际上它的语法风格与 Self 及 Scheme 较为接近。

JavaScript 发展之初,微软也推出了 JScript(主要用于 IE 浏览器)来迎战 JavaScript,当时还有 Adobe 的 ActionScript。为了统一标准,实现互用,1997年,在 Ecma国际 的协调下,由 Netscape、Sun、微软、Borland 组成的工作组确定统一标准——ECMA-262(ISO/IEC 16262),该标准定义了叫做ECMAScript 的全新脚本语言。

完整的 JavaScript 实现包含三个部分:

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

关于 ECMAScript

ECMAScript 是一种由 Ecma国际 在 1997 年通过 ECMA-262(ISO/IEC 16262) 标准化的脚本程序设计语言。它描述了 JavaScript的语法和基本对象,是 JavaScript 的标准。

ECMAScript 实际上是一种脚本在语法和语义上的标准,JavaScript,JScript 和 ActionScript 中声明变量,操作数组等语法完全一样,因为它们都是 ECMAScript。但是在操作浏览器对象等方面又有各自独特的方法,这些都是各自语言的扩展。

自 2015 年以来,ECMAScript 的发展及其版本如下所示:

通过这图,大家应该知道平常所说的 ES6 之类的是怎么来的了吧。

我们一般将 2015 年之前的版本统称为 ES5,不会详细去区分到底是 1~5 中的哪个。

符合ECMA-262 标准的实现有:

  • Microsoft 公司的 JScript。
  • Mozilla 的 JavaScript-C(C 语言实现),现名 SpiderMonkey。
  • Mozilla 的 Rhino(Java 实现)。
  • Digital Mars 公司的 DMDScript。
  • Google 公司的 V8。
  • WebKit。

总结

总结一下上面的内容:

  • JavaScript 最初是由网景公司的布兰登·艾奇所实现。
  • JavaScript 是甲骨文公司的注册商标。Ecma国际以 JavaScript 为基础制定了 ECMAScript 标准。
  • Ecma国际专门制定信息和通信系统的标准和报告,ECMAScript 只是它所制定标准中的一个。
  • ESCMScript 是 JavaScript 的标准,描述了 JavaScript 的语法和基本对象。
  • 完整的 JavaScript 实现包含三个部分:ECMAScript、DOM 和 BOM。

~

~本文完,感谢阅读!

~

学习有趣的知识,结识有趣的朋友,塑造有趣的灵魂!

大家好,我是〖编程三昧〗的作者 隐逸王,我的公众号是『编程三昧』,欢迎关注,希望大家多多指教!

你来,怀揣期望,我有墨香相迎! 你归,无论得失,唯以余韵相赠!

知识与技能并重,内力和外功兼修,理论和实践两手都要抓、两手都要硬!

你知道 ES6~ES12等叫法是怎么来的吗?相关推荐

  1. ES6~ES12新特性

    ES6新特性 let属性 <div class="item">记得刷卡</div> <script type="text/javascrip ...

  2. ES6~ES12——Array Includes、Object values、Object entries、Object fromEntries、flat、flatMap、空值合并运算符、可选链等

    一.ES7 - Array Includes 在ES7之前,如果我们想判断一个数组中是否包含某个元素,需要通过 indexOf 获取结果,并且判断是否为 -1. 在ES7中,我们可以通过include ...

  3. 一次性搞定JavaScript 从 ES6 到 ES12的基础框架知识

    Javascript 是前端三剑客技术最重要的技能之一.每个学习前端的人,这个JavaScript技术是必须要学的.随着技术不断更新迭代,所以现在有一些新的知识来支持我们去学习 ES6 ~ ES12. ...

  4. ES7、ES8、ES9、ES10、ES11、ES12、ES13、ES14(ES进阶之路二)

    简介 JavaScript是世界上发展最快的编程语言之一,不仅可以用于编写运行在浏览器的客户端程序,随着Node.js的发展,JavaScript也被广泛应用于编写服务端程序.而随着JavaScrip ...

  5. 2022年前端面试题整理,持续更新中

    端面试题整理 已同步到掘金.CSDN 掘金地址: https://juejin.cn/post/7075332630417244173 CSDN 地址:https://blog.csdn.net/z1 ...

  6. 一些可以参考的文档集合9

    之前的文章集合: 一些可以参考文章集合1_xuejianxinokok的博客-CSDN博客 一些可以参考文章集合2_xuejianxinokok的博客-CSDN博客 一些可以参考的文档集合3_xuej ...

  7. ES进阶之路二(ES7-ES12)

    简介 JavaScript是世界上发展最快的编程语言之一,不仅可以用于编写运行在浏览器的客户端程序,随着Node.js的发展,JavaScript也被广泛应用于编写服务端程序.而随着JavaScrip ...

  8. android studio安装插件查看db数据库

    一个插件即可解决android studio查看db文件的问题 插件名就是database 首先去setting找到plugings搜索database 点击蓝色的文字 选择我标记的这个 记住别下载错 ...

  9. 日更一文,今天来点干货!

    今天给大家介绍一个前端公众号:前端充电宝,干货很多,值得关注!公众号只分享原创文章,基本日更一文(周末.节假日休息),被小伙伴戏称高产似那啥~ 关于作者 作者 CUGGZ,掘金LV6,2021年度人气 ...

最新文章

  1. 心得丨如何快速上手疯狂上涨的Python?
  2. iOS开发-Protocol协议及委托代理(Delegate)传值
  3. python四十五:归一化继承
  4. CSS中盒模型的理解
  5. HDU4392(反素数强大的模版)
  6. 流言终结者- Flutter和RN谁才是更好的跨端开发方案?
  7. 使用Fiddler查看APP的请求接口、接口参数和返回值的方法
  8. 【codevs2144】砝码称重2,哈希什么的都去死吧
  9. 华强北二手手机卖不出去,闲鱼砸一亿现金帮扶
  10. count(1),count(*),count(rowid)
  11. BF2 战地风云2常见问题解答
  12. 关于CVE-2017-8890的一点细节
  13. 字符串(AC自动机):COCI 2015 round 5 divljak
  14. java基础-(二)-第一个java程序
  15. java表格数据导出到Excel案例
  16. C# 使用MemeryStream进行序列化
  17. 《惢客创业日记》2020.07.28(周二)因健忘症引发的痛点
  18. 《算法笔记》胡凡第二章笔记
  19. #navigation
  20. python中哪些是无序_关于无序集合:无序集合 – 在python中设置

热门文章

  1. 终端启动tomcat报错 command not found 解决方法 (含启动和关闭命令)
  2. windox与ubuntu18.04安装clion及导入qt库
  3. linux vnc端口映射,linux服务器配置docker+vnc,随时访问远程桌面
  4. unable to recognize ole stream是什么意思_洞彻状态管理,或者说为什么你永远做不到...
  5. Linux:(ubuntu)命令行下显示方框的问题
  6. c语言以空格分割字符串,C语言程序要读入一行文本,以空格分隔若干个单词,以‘.’结束。你要输出这行文本中每个单词的长度。...
  7. 从无到有axure原型设计_Axure|微信原型制作
  8. mybatis jar包_Spring4+SpringMVC+MyBatis整合思路
  9. 模拟京东按s键选中输入框
  10. 实验3-10 高速公路超速处罚 (15 分)