ES6标准——学习及应用 1

代码隐修院
• 阅读 1281

一、历史问题

ESMAScript 的名称

1、JavaScript的制定者公司是Netscape,该公司为了让JavaScript能够成为一个中标准化的语言, 就将JavaScript交由ESMS来管理,其实ECMA是一个组织, 就是标准化组织。所以后面说的ECMA标准就是在这制定的。但是之所以不叫 JavaScript,有两个原因。一是商标,Java 是 Sun 公司的商标,根据授权协议,只有 Netscape 公司可以合法地使用 JavaScript 这个名字,且 JavaScript 本身也已经被 Netscape 公司注册为商标。二是想体现这门语言的制定者是 ECMA,不是 Netscape,这样有利于保证这门语言的开放性和中立性。
2、那么ECMA2015又是什么呢?其实是ECMA约定了每年都要退出一个新的标准,并且以年号命名,恰好因为ECMA2015这个标准是ECAMScript的第六个版本的第一个标准,也就是ES6的第一个版本,所以就被大家重视了,并且也搞的很混淆。所以说ES6其实包含了ECMA2015、ECMA2016、ECMA2017这样的版本。随着时间的推移,支持度已经越来越高了,超过 90%的 ES6 语法特性都实现了。并且大多数的现代浏览器都已经支持ES6了,但是有个问题, 就是大家往往都不愿意讨论的IE这个奇葩, 在早些年代里IE可是浏览器里的霸主了, 微软也真是成也萧何败萧何,话说微软不是声称1年半一个新的系统吗,咋没消息了,有点跑题了,嘻嘻。

Node

以后要是有时间在写, 理解的太浅了。

ES6的块级作用域

我们都知道,在ES5中顶级作用域是全局作用域,而顶层对象对应的应该是window, 子集作用域实际上也是函数级作用域,使用var定义的变量在这相应的作用域内不会消失,也就是var定义的变量在出了块而没出函数的时候是不会被回收掉的, 然而这样也就出现了这样的问题, 在变量在相应的块中使用完成后, 而是在相应的作用域内成了一个遗留的变量, 这在我一个java开发者的角度来看,起码是不可思议的。ES6中意识到了这个问题,讲作用域限制在了块级,这也就像java一样了, 在相应的块中程序结束后,变量也随即消失,同时内存回收。 并且ES6中使用let定义变量,也推荐非常量和函数及类级别的变量使用let定义。let变量使用需要提前定义,这与大多数的类c语言一致,而在ES5中却不会这样使用。

系统学习推荐

ECMAScript 6 入门-阮一峰

点赞
收藏
评论区
推荐文章
Karen110 Karen110
3年前
一篇文章带你了解JavaScript日期
日期对象允许您使用日期(年、月、日、小时、分钟、秒和毫秒)。一、JavaScript的日期格式一个JavaScript日期可以写为一个字符串:ThuFeb02201909:59:51GMT0800(中国标准时间)或者是一个数字:1486000791164写数字的日期,指定的毫秒数自1970年1月1日00:00:00到现在。1\.显示日期使用
待兔 待兔
1年前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Sherwei Sherwei
2年前
JavaScript学习资源大全
在线文档类|名称及链接|特点|评分||||||现代JavaScript教程(https://zh.javascript.info/)|是React与MDN并列推荐的JavaScript学习教程,以最新的JavaSc
Stella981 Stella981
3年前
GitHub上的7个热门TypeScript项目,要不要学一下呢?
TypeScript是JavaScript的一个超集,支持ECMAScript6标准(ES6教程)由微软开发的自由和开源的编程语言。设计目标是开发大型应用,它可以编译成纯JavaScript,编译出来的JavaScript可以运行在任何浏览器上。语言特性TypeScript是一种
Stella981 Stella981
3年前
ECMAScript 6 新特性简介
简介ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,正式发布与2015年6月。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。今天我们将会讲解一下ES6中引入的语法新特性。ECMAScript和JavaScript的关系
Stella981 Stella981
3年前
JavaScript的 基本数据类型
第一:Javascript对象是第二:Javascript中第三:Javascript的对象是数据;第四:JavaScript中的对象可以简单理解成"名称:值"对(name:value)。名称(name):"名称"部分是一个JavaScript字符串参考https://www
Stella981 Stella981
3年前
ECMAScript 6新特性简介
简介ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,正式发布与2015年6月。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。今天我们将会讲解一下ES6中引入的语法新特性。ECMAScript和JavaScript的关系
Wesley13 Wesley13
3年前
9个常用ES6特性归纳(一般用这些就够了)
ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。ES6给我们带来很多令人意想不到的功能,在这里我们一起来学习一下9个超级实用的ES6特性。1、展开操作符
Stella981 Stella981
3年前
ECMAScript 6.0 简介
ECMAScript6.0(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。ECMAScript和JavaScript的关系一个常见的问题是,EC
Stella981 Stella981
3年前
ECMAScript6入门 学习之简介
1.什么是ECMAScript6?ECMAScript6(以下简称ES6)是JavaScript语言的下一代标准,已经在2015年6月正式发布了。它的目标,是使得JavaScript语言可以用来编写复杂的大型应用程序,成为企业级开发语言。可能大家会疑惑ECMAScript和JavaScript是什么关系?为什么不
跨端轻量JavaScript引擎的实现与探索
一、JavaScript1.JavaScript语言JavaScript是ECMAScript的实现,由ECMA39(欧洲计算机制造商协会39号技术委员会)负责制定ECMAScript标准。ECMAScript发展史:|时间|版本|说明||||||1997