2019独角兽企业重金招聘Python工程师标准>>>

谈谈神秘的ES6——(一)初识ECMAScript

在《零基础入门JavaScript》我们就说过,ECMAScript是JavaScript的核心,是JavaScript语法和语义的解释器,同时也是一个标准。而ECMAScript标准其实也有一个发展的历程,每一代,它都更新了一些东西,让JavaScript更强大。这一节课,我们就来了解一下ECMAScript。

ECMAScript的发展历史

  • 1995年,那时候的浏览器还只支持html和简单的css,这时候有一个浏览器巨头企业——网景,它不甘于做静态网站,于是呢,招了个大咖Brendan,开发了一个可供浏览器使用的函数式语言,经过近一年时间的迭代,慢慢形成了JavaScript的祖先。这时候微软跑出来了,捆绑IE3.0发布了一个JScript跟JavaScript形成竞争关系。ECMA国际觉得说太混乱了,于是以ECMAScript的名字,被标准化到ECMA-262规范中,规范指定者,是ECMA下一个叫TC39的技术委员会。在1996年11月开始,TC39不断完善规范,并于1997年6月,发布了ECMA-262的第一版。
  • 之后一年中,规范依据ISO / IEC 16262国际标准进行了改进,并由ISO认证机构大量审查,1998年6月正式发布第二版。
  • 1999年12月,第三版也发布了,这一版的规范带来了正则表达式、switch、do..whie、try..catch、Object#hasOwnProperty以及其它的一些改变,同时新增的大部分规范在网景的新版浏览器SpiderMonkey中也得以实现。此版本成为了JavaScript的通行标准,得到了广泛支持。

  • 过了好长一段时间,在2007年10月,ES4的草案被提出,对3.0版做了大幅升级,预计次年8月发布正式版本。草案发布后,由于4.0版的目标过于激进,各方对于是否通过这个标准,发生了严重分歧。这使规范制定的工作停滞不前。这在Web标准指定史上是一个非常尴尬且奇妙的时刻,当时微软掌握着主动权,但是它对规范的改进却没太大的兴趣。

  • 与此同时进行的,是ES3的渐进加强版ES3.1标准的制定,其实ES3.1是ES4的一个缩水版,它将ES4涉及现有功能改善的一小部分,制定成ES3.1,由于会议的气氛,该版本的项目代号起名为Harmony(和谐),并于2007年10月正式发布。

  • 不久,ECMAScript 3.1就改名为ECMAScript 5,并在2009年12月正式发布,这个版本把十年来各浏览器中已有的普遍实践标准化了,改进了数组原型的函数式特征,原生支持了JSON的解析,提出了严格模式。Harmony项目则一分为二,一些较为可行的设想定名为JavaScript.next继续开发,后来演变成ECMAScript 6;一些不是很成熟的设想,则被视为JavaScript.next.next,在更远的将来再考虑推出。

  • 2011年6月,ECMAscript 5.1版发布,并且成为ISO国际标准(ISO/IEC 16262:2011)。

  • 2013年3月,ECMAScript 6草案冻结,不再添加新功能。新的功能设想将被放到ECMAScript 7。

  • 2013年12月,ECMAScript 6草案发布。然后是12个月的讨论期,听取各方反馈。

  • 2015年6月,也就是ES5.1发布的四年后,TC39公布了JS语言有史以来最大的更新 ES6(即2015),其中包含了很多ES4中提出草案。JavaScript.next指向了ES7.0。

如果想跟着振丹继续学习,可以微信关注【振丹敲代码】(微信号:JandenCoding)

新博文微信同步推送,还附有讲解视频哦~

也可直接扫描下方二维码关注。

转载于:https://my.oschina.net/JandenMa/blog/1858514

谈谈神秘的ES6——(一)初识ECMAScript相关推荐

  1. [ECMAScript] 谈谈你对es6的module体系的理解

    [ECMAScript] 谈谈你对es6的module体系的理解 es5的模块规范出来之前,前端也实现了比如AMD CMD模块规范,对前端模块进行管理. es6的模块规范在语言层面实现了模块功能 为什 ...

  2. 谈谈ES5和ES6的区别

    我们都知道JavaScript是由三部分组成: 1. ECMAScript(核心):规定了语言的组成部分=>语法.类型.语句.关键字.保留字.操作符.对象 2. BOM(浏览器对象模型): 支持 ...

  3. ES6简介与发展历史(ES笔试题、简介、ECMAScript 背景、ECMAScript 历史)

    目录 ES6简介与发展历史 1.简介 2.ECMAScript 背景 3.ECMAScript 历史 ES6简介与发展历史 1.简介 ES6, 全称 ECMAScript 6.0 ,是 JavaScr ...

  4. ECMAScript 6.0基础入门教程(一)-ES6基础入门教程

    ECMAScript 6.0基础入门教程(一) 1.ES6简介 1.1 ES6的历史 ECMAScript简称ECMA或ES ECMAScript与JavaScript的关系 ECMA是Europea ...

  5. JavaScript前端经典面试题之ES6面试题汇总es6

    推荐阅读: vue3面试题:最新vue3.0前端经典面试试题及答案(持续更新中--)_南北极之间的博客-CSDN博客打包大小减少41%初次渲染快55%, 更新渲染快133%内存减少54%......使 ...

  6. ECMAScript 和 JavaScript 的未来

    本文摘自<深入理解JavaScript特性>,本书将JavaScript新特性融入简单易懂的示例中,包括ES6及后续更新,助你大幅提升代码表达能力. JavaScript之父Brendan ...

  7. ES6新特性之了解ES6以及其发展历史

    ES6 新特性 现在使用主流的前端框架中,如ReactJS.Vue.js.angularjs等,都会使用到ES6的新特性,作为一名高级工程师而言,ES6也就成为了必修课,所以本套课程先以ES6的新特性 ...

  8. JS高级进阶之ECMAScript 常见面试题

    1.es5和es6的区别,说一下你所知道的es6 ECMAScript5,即ES5,是ECMAScript的第五次修订,于2009年完成标准化 ECMAScript6,即ES6,是ECMAScript ...

  9. ECMAScript 6新特性介绍

    箭头函数 箭头函数使用=>语法来简化函数,在语句结构上和C#.Java 8 和 CoffeeScript类似,支持表达式和函数体..=>`操作符左边为输入的参数,而右边则是进行的操作以及返 ...

最新文章

  1. 织梦html地图插件,织梦dede网站地图xml生成插件(图文教程)
  2. 使sqoop能够启用压缩的一些配置
  3. linux then命令不识别,Linux终端提示符(prompt)不如期生效的原因分析与解决
  4. 数学之路(2)-数据分析-R基础(5)
  5. mysql show timestamp_mysql中 datatime与timestamp的区别说明
  6. 异步SOCKET与同步SOCKET
  7. matplotlib tricks(一)—— 多类别数据的 scatter(cmap)
  8. pip 安装tensorflow==2.1太慢怎么办?(pip安装超时Read timed out)
  9. redis数据类型之String入门
  10. Java集合框架类图
  11. 【语音处理】基于matlab GUI语音信号综合处理平台【含Matlab源码 290期】
  12. Linux虚拟机中vim编辑器常用命令介绍(二)
  13. matlab无穷积分求解_matlab编程求无穷限定积分
  14. 2021中国统计摘要
  15. SqlMap免Python环境绿色版下载
  16. RS-232C接口定义(DB9)
  17. 75道程序员逻辑思维面试题答案
  18. 1. 对输入的数组正序输出
  19. 网络工程师----成长之路
  20. java 对接第三方接口

热门文章

  1. 从Android的结构看HarmonyOS
  2. JNI编程支持X86处理器的步骤
  3. 基于double-check模式尝试将消息放到batch中
  4. Glide DiskCache 原理分析
  5. Android中设置组件多进程
  6. SwiftUI 发展现状和学习指南
  7. (0047)iOS开发之nil/Nil/NULL的区别
  8. linux编译树莓派内核,编译树莓派 4B Linux 5.9 内核
  9. mysql 导入导出 csv_mysql 导出导入数据 -csv
  10. postgre sql 括字段_SQL-约束(cnostraints)