前言
相信做前端的朋友没有不知道 ECMAScript6 的, 都知晓 ES6 新增了不少新的特性, 但是你知道 ES6 是怎么来的吗? 今天就让闰土来带大家大话 ES6 的前世今生当然了, 这篇文章会以扫盲为主, 科普为辅, 大家就看着玩
那么接下来, 正文从这开始~
既然今天咱们文章的主旋律是 ES6, 那么就花点时间来介绍点关于它的花边新闻, 来看看 ES6 到底是一个怎么样的语言首先呢, 大家对 ECMAScript 应该有所了解, 它和 JavaScript 到底是什么关系呢? 其实你可以这么理解, ECMA 其实是一个组织, 一个标准化的组织, 就好比说有组织叫 W3C, 有人叫中南海一样它其实也是一个标准, 由 ECMAScript 诞生的一个标准, 有点类似于 html5 一样是标准, IE10,Chrome,FireFox 都是它的实现
换句话来讲, ECMAScript 理论上可以有很多种实现, 只不过目前这个时代来讲, 也没人去实现, 只有咱们的 JavaScript 是实现了的所以说在某种程度上来说, ECMAScript 就约等于咱们的 JavaScript 其实理论上大家应该明白, 可能我个人搞个 runtuJS, 可能也是遵循 ECMAScript 标准来实现的 (当然我没有那个本事)
其实, ECMAScript 有些人把它简称为 ECMA, 也有些人把它简称为 ES6, 怎么叫的都有, 就这么个语言, 只要咱们把它是怎么个叫法搞明白了就行
那接下来, 咱先不讲事儿, 继续讲讲 ES6 的花边新闻咱们来聊聊这门语言的历史版本的一个演进虽然你知道了这个事情对你的编程没有什么帮助, 但是公司里面哥几个出去吃串喝酒的时候可以聊聊当做谈资, 平时除了聊什么吐槽工作吐槽老板之外, 还能顺便吐槽下 ECMAScript 老不靠谱了, 哈哈~
基本上来说, 它的版本是有一个历史时间轴的, 最早可以追溯到 1996 年 11 月份, 我估计咱们童鞋里面当时有人甚至还没有出生呢! 在那个年代呢, ECMAScript 推出了所谓的 1.0, 这个版本还是蛮关键的, 标志着 JavaScript 这个脚本语言已经稳定了你可以理解为在之前, JavaScript 纯粹是瞎搞好吧, 想怎么搞怎么搞, 后来 ECMAScript 看这个事情不靠谱啊, 不能任由你 JS 瞎搞啊, 就推了标准 1.0, 然后呢这个 Netscape(俗名网景公司) 将 JavaScript 提交给了 ECMA 组织, 然后 ECMA 一看这个东西不错, 然后 ES 就正式出现了
1996 年之后又过了不到两年的时候, 这边又发布了 2.0, 接下来 1999 年又过了半年的时间, 又发布了 3.0, 可以这么说, ES 从诞生到正式被大众接受是从 ES3 开始才被广泛地支持之前可能是自己娱乐为主, 大家来旁观为辅
然而, 好景不长你知道的, 如果一个人的路走得太过于平坦的话, 十有八九, 接下来就要倒霉了你看 ECMAScript 刚刚乐呵没几年, 这个时候它又推出了一个新标准 4.0 但是 4.0 当时太过于激进了, 其实 4.0 放到现在倒没什么太大问题, 反正当年的时候太过于激进了, 然后大家都接受不了, 表示不行, 这事儿臣妾做不到最后怎么办呢结果就废弃一旁了, 废了之后也没人再提这个事儿
虽然没人再提这个事儿, 但是时代在发展, 事情总得有人做所以就有人提了一个 3.1, 就是在 3.0 的基础上做了一些简单的改进, 4.0 就直接退化到了 3.1 但是当时人们还是不乐意, 因为吵得太厉害, 所以 ES 干脆给 3.1 起了个代号: Harmony, 翻译成汉语就是和谐从这个事情上就可以看出, ES 还是挺有人情味的组织, 大家不要吵了, 都和谐点, 做人嘛最重要的就是开心撒, 为了这个事儿至于吗, 走, 一起撸个串去就没事了
再到后来呢, 09 年的时候, ES 又推了个 5.0, 然后 5.0 在 3.1 的基础上没有做太大的改进, 只是增加了几个小小的东西, 比方说, 就像是我们数组的 indexOf, 单纯地增加了一些小东西, 并且这个时候又另外发布了一样东西, JavaScript.next, 当然这名字是变动的, 不是定死的, 当年这个东西就是指向后来的 ES6.0
到后来又过了两年, ES5.1 又出来了, 5.1 也是进行了一些很简单的改进, 然后 ES5.1 正式成为了 ISO 的国际标准你就想想你们老家那个工厂大门口挂着牌子写着 IS9000 啥的老光彩了, 光宗耀祖的事情, 祖坟上估计都冒青烟了反正一旦被这个 ISO 组织接受了确实是一件挺好的事儿 5.1 是事实上的一个标准, 并且沿用了好多年后来 13 年的时候, ES6 草案算是基本定稿了, 话说是两拨人该掐掐完了该吵也吵完了, 没什么可吵的了, 草案算是最终定稿了基本上草案定稿了就没什么事儿了, 也就不会再出什么幺蛾子了然后过了那么 8,9 个月, 这帮人一看没人提什么意见, 就跟咱们现在办事得先在报纸上公示, 公示完一看, 哎没人反对, 于是 ES6 草案就直接发布了, 从这个时候算起, ES6 算是真的定稿了当然, 真正等它火起来, 也是 2015 年到 2016 年的事儿了, 那就是后话了
然后 15 年的时候, ECMA 组织又做了一件事儿, ES6 正式的发布了, 和草案没什么变化, 就是走个过场而已然后 JavaScript.next 也正式的指向了 ES7, 也就是现在所谓的下一代 JavaScript
后记
综上所述, ES6 的历史演进就是一个不断吵架不断趋于和谐的过程在这个过程中, 其实有几个比较重要的版本, 一个就是 5.1, 是国际上正式的标准, 基本上来说咱们用的比较多的就是它, 它跟 3.1 区别不是特别大, 几乎没什么区别还有一个比较大的版本就是 ES6, 它是 2015 年正式诞生的
反正聊聊这个关于 ES6 的小故事, 你说有多大作用呢, 大家就看着玩, 宋小宝的小品看腻了, 就来看看我的文章, 咱们就稍微那么一聊, 放心我不会要求大家请我吃串喝酒的, 哈哈总之一句话, 这篇文章的核心思想就是咱们知道了 ES6 的诞生, 是在 2015 年然后它里面到底包含什么内容呢, 就是咱们下一篇文章要讲的内容
大话前端系列文章较长, 未完待续
来源: https://www.cnblogs.com/running-runtu/p/8477207.html