简介

ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了。它的目 标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言。

https://es6.ruanyifeng.com/#README

ECMAScript 和 JavaScript 的关系

一个常见的问题是,ECMAScript 和 JavaScript 到底是什么关系? 要讲清楚这个问题,需要回顾历史。

1996 年 11 月,JavaScript 的创造者 Netscape 公司,决定将 JavaScript 提 交给标准化组织 ECMA,希望这种语言能够成为国际标准。次年,ECMA 发布 262 号标准文件(ECMA-262) 的第一版,规定了浏览器脚本语言的标准,并将这种语言称为 ECMAScript,这个版本就是 1.0 版。

因此,ECMAScript 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现(另外的 ECMAScript 方言还有 Jscript 和 ActionScript)

ES6 与 ECMAScript 2015 的关系

ECMAScript 2015(简称 ES2015)这个词,也是经常可以看到的。它与 ES6 是什么关系呢?

2011 年,ECMAScript 5.1 版发布后,就开始制定 6.0 版了。因此,ES6 这个词的原意,就是指 JavaScript 语言的下一个版本。

ES6 的第一个版本,在 2015 年 6 月发布,正式名称是《ECMAScript 2015 标准》(简称 ES2015)。

2016 年 6 月,小幅修订的《ECMAScript 2016 标准》(简称 ES2016)如期发布,这个版本可以看作是 ES6.1 版,因为两者的差异非常小,基本上是同一个标准。根据计划,2017 年 6 月发布 ES2017 标准。

因此,ES6 既是一个历史名词,也是一个泛指,含义是 5.1 版以后的 JavaScript 的下一代标准,涵盖了 ES2015、ES2016、ES2017 等等,而 ES2015 则是正式名称,特指该年发布的正式版本的语言标准。本书中提到 ES6 的地方,一般是指 ES2015 标准,但有时也是泛指“下一代 JavaScript 语言”。

let声明变量

var声明的变量没有局部作用域,let声明的变量,有局部作用域

var 可以声明多次值被覆盖,let 只能声明一次

const声明常量

const声明一个只读的常量。一旦声明,常量的值就不能改变。

一但声明必须初始化,否则会报错

解构赋值

ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring)。

数组解构

对象解构

模板字符串

模板字符串相当于加强版的字符串,用反引号**`**,除了作为普通字符串,还可以用来定义多行字符串,还可 以在字符串中加入变量和表达式。

字符串插入变量和表达式。变量名写在 中,{} 中,中,{} 中可以放入 JavaScript 表达式。

字符串中调用函数

声明对象简写

对象中属性名和属性值一样可以简写

定义方法简写

对象拓展运算符

拓展运算符...用于取出参数对象所有可遍历属性然后拷贝到当前对象。

拷贝多个就相当于起到合并的效果

箭头函数

https://www.kylin.show/45384.html

ECMAScript6语法相关推荐

  1. ECMAScript6语法检查规范错误信息说明

    项目中使用ECMAScript6的时候经查会使用语法检查,下面是常见错误信息的汇总: 1 "Missing semicolon." : "缺少分号.", 2 & ...

  2. webpack 环境安装

    2019独角兽企业重金招聘Python工程师标准>>> 1.首先要安装 Node.js, Node.js 自带了软件包管理器 npm,Webpack 需要Node.js v0.6 以 ...

  3. vue 多页面多模块分模块打包 分插件安装_Vue渲染方式

    Vue中的渲染方式总结可分四种: 原有模板语法,挂载渲染 使用render属性,createElement函数直接渲染 使用render属性,配合组件的template属性,createElement ...

  4. webpack--安装,使用

    1. webpack 1.1. webpack介绍 webpack是一个资源的打包工具,目前最新为webpack3,可以将 .js, .css , image等静态资源当做一个模块来进行打包,那么每一 ...

  5. 实验一段有趣的js代码。

    代码如下: [...Array(7).keys()].map(days => new Date(Date.now() + 86400000 * days)); 演示解说: 这段代码的作用是返回未 ...

  6. 你所需要了解的关于技术团队的要求

    基本要求:熟练掌握git版本控制.会用浏览器(比如在线调试).***(比如ss.duotai.org.云梯) 推荐学习APP:稀土掘金 Web开发 - 后端: 熟练掌握JavaScript.Node. ...

  7. 2019最新《后盾网Vue教程 向军Vue基础教程 共86课》

    1.向军老师Vue开发宝典-Vue.js介绍.mp4 2.向军老师Vue开发宝典-创建第一个应用.mp4 3.向军老师Vue开发宝典-操作元素属性.mp4 4.向军老师Vue开发宝典-Mustache ...

  8. Vuejs学习笔记(全)

    欢迎访问我的个人博客:guqing's blog 1.起步 创建一个html,然后通过如下方式引入 Vue: <!-- 开发环境版本,包含了有帮助的命令行警告 --> <script ...

  9. ECMAScript6 ES6语法

    2015年6月份,在es5的基础上扩展了很多新的功能, 称为es6/es2015, ES7将在2017年6月份出来.我们要学习的仅仅只是es6中的部分常用新功能,这些功能在使用的时候一定要慎重,因为他 ...

最新文章

  1. 关于DataGridView的数据源绑定字符串两个值得注意的问题
  2. 前端 input怎么显示null_小猿圈WEB前端之HTML5+CSS3面试题(一)
  3. 【算法设计与分析】16 分治策略:快速排序(快速排序的时间复杂度计算)
  4. php如何调用手机拨打电话,ionic调用手机系统的拨打电话
  5. 其实Go 1.17 就支持泛型了,具体该怎么用呢?
  6. 实现RPC就是这么简单
  7. 895计算机专业基础,2017北京工业大学895计算机学科专业基础考研入学考试大纲...
  8. Linux Shell 内建命令 : fg , bg , jobs 命令详解
  9. 多元均值不等式的简单证明(调和平均数与算术平均数)
  10. QCC3040---Local name module
  11. Asio Threads and Asio
  12. 有趣的海盗问题(完整版)
  13. Tomcat启动项目出现 javax.el.ELException
  14. 笔记本屏幕给另一台当扩展屏幕_chenjie的博客
  15. 免费下载英文文献的网站
  16. 英文论文写作排版-IEEE论文排版技巧
  17. 什么是有限状态机FSM
  18. php 时间加法函数_PHP 日期时间函数的高级应用技巧
  19. 杨辉三角——C语言实现
  20. TodoList反选

热门文章

  1. 深入理解 Linux 2.6 的 initramfs 機制 (上)
  2. Telegram-This phone number is banned.手机号被禁止解决方法
  3. 固态硬盘先装系统还是4k对齐?
  4. IOS 版 Opera 已不再更新
  5. Android模拟器没有键盘的解决方法,Android DPAD not enabled in AVD
  6. R语言学习系列教程及高级绘图工具使用
  7. 基于深度学习的人脸检测和关键点检测推理实践(OpenCV实现,含代码)
  8. Chrome浏览器IDM下载报错Error 0×80004002
  9. C-Lodop云打印服务系统存在任意文件读取漏洞
  10. 机器学习和数据比赛资料汇总(转载)