你知道 ES6~ES12等叫法是怎么来的吗?
你知道 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等叫法是怎么来的吗?的更多相关文章
- 简述ES5 ES6
很久前的某一天,一位大神问我,你知道ES6相对于ES5有什么改进吗? 我一脸懵逼的反问,那个啥,啥是ES5.ES6啊. 不得不承认与大神之间的差距,回来深思了这个问题,结合以前的知识,算是有了点眉目. ...
- ES6还是ES2015?
遇到了一个困惑 原来称作es6的现在突然变成es2015 了 原因是这个事ecma-262 的第六次变更,所有以前按照惯例称为es6. 但是为了更小版本频繁发布,现在 标准叫法是: esmasc ...
- 听闰土大话前端之ES6是怎么来的
前言 相信做前端的朋友没有不知道ECMAScript6的,都知晓ES6新增了不少新的特性,但是你知道ES6是怎么来的吗?今天就让闰土来带大家大话ES6的前世今生.当然了,这篇文章会以扫盲为主,科普为辅 ...
- 前端入门21-JavaScript的ES6新特性
声明 本篇内容全部摘自阮一峰的:ECMAScript 6 入门 阮一峰的这本书,我个人觉得写得挺好的,不管是描述方面,还是例子,都讲得挺通俗易懂,每个新特性基本都还会跟 ES5 旧标准做比较,说明为什 ...
- ES6躬行记(1)——let和const
古语云:“纸上得来终觉浅,绝知此事要躬行”.的确,不管看了多少本书,如果自己不实践,那么就很难领会其中的精髓.自己研读过许多ES6相关的书籍和资料,平时工作中也会用到,但在用到时经常需要上搜索引擎中查 ...
- [Web 前端 ] ES6 == ES 2015
cp from : https://www.cnblogs.com/ricoliu/p/5996149.html 遇到了一个困惑 原来称作es6的现在突然变成es2015 了 原因是这个事ecma ...
- ES6在工作中会用到的核心知识点讲解
一.var, let, const 谈到ES6,估计大家首先肯定会想到var,let,const 咱就先谈谈这三者的区别 var a = 3; { var a = 4; } console.log(a ...
- 简单说说ES6新特性
ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了. 它的目标,是使得 JavaScript 语言可以用来编写复杂的大型 ...
- 《深入理解ES6》笔记——扩展对象的功能性(4)
变量功能被加强了.函数功能被加强了,那么作为JavaScript中最普遍的对象,不加强对得起观众吗? 对象类别 在ES6中,对象分为下面几种叫法.(不需要知道概念) 1.普通对象 2.特异对象 3.标 ...
随机推荐
- mysql实现主从复制、读写分离的配置方法(一)
1. 测试环境 两个CentOS7虚拟机 mysql 5.5-MariaDB master_ip:192.168.1.109 slave_ip:192.168.1.118 2. 配置主服务器 2.1 ...
- 【搜索】单词接龙 luogu-1019
题目描述 单词接龙是一个与我们经常玩的成语接龙相类似的游戏,现在我们已知一组单词,且给定一个开头的字母,要求出以这个字母开头的最长的"龙"(每个单词都最多在"龙" ...
- js 正序、倒序、按字段排序方法
js 基础--sort方法: arrayObject.sort(sortby); 参数:定义排序规则(正序.倒序.按字段排序)的函数: 返回值:对数组的引用.请注意,数组在原数组上进行排序,不生成副本 ...
- PGSQL基础语句汇总
一.pgsql里面的数据类型不再介绍:https://www.runoob.com/postgresql/postgresql-data-type.html 二.常用基本语句 2.1.CREATE D ...
- NetCoreMvc系列文章02---依赖注入
.netCore自带依赖注入,支持构造函数注入,如不了解IOC 和DI 思想的请看我其它文章中关于这主面的介绍.如Startup.cs类中的Configure方法其中IApplicationBuild ...
- Kubernetes全栈架构师(资源调度上)--学习笔记
目录 Replication Controller和ReplicaSet 无状态服务Deployment概念 Deployment的创建 Deployment的更新 Deployment的回滚 Dep ...
- js学习笔记之排序算法的原理及代码
冒泡排序 比较任何两个相邻的项,如果第一个比第二个大,则交换它们 重复这样的操作,直到排序完成,具体代码如下: let arr = [67,23,11,89,45,76,56,99] function ...
- 利用swagger和API Version实现api版本控制
场景: 在利用.net core进行api接口开发时,经常会因为需求,要开发实现统一功能的多版本的接口.比如版本V1是给之前用户使用,然后新用户有新需求,这时候可以单独给这个用户写接口,也可以在V1基 ...
- 微软内推常见问题 Q&A
很高兴,已经成功内推 59 人拿到了微软 offer! 两年前,我就已经写过一篇微软面经,帮助到了不少人: 微软面经分享:如何更好地做好面试准备 在这两年的内推过程中,往往会有不少候选人来问我有关微软 ...
- Android面试6家一线大厂,这个问题是必问!
年后面了六家大厂,每家都会问的一个问题就是Android的消息机制!可见Android的消息机制是多么重要! 消息机制之所以这么重要是因为Android应用程序是通过消息来驱动的,Android某种意 ...