08 ES6 基本介绍

什么是ES6语法:

一、一个常见的问题是,ECMAScript 和 JavaScript 到底是什么关系?

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

该标准从一开始就是针对 JavaScript 语言制定的,但是之所以不叫 JavaScript,有两个原因。一是商标,Java 是 Sun 公司的商标,根据授权协议,只有 Netscape 公司可以合法地使用 JavaScript 这个名字,且 JavaScript 本身也已经被 Netscape 公司注册为商标。二是想体现这门语言的制定者是 ECMA,不是 Netscape,这样有利于保证这门语言的开放性和中立性。

因此,ECMAScript 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现(另外的 ECMAScript 方言还有 Jscript 和 ActionScript)。日常场合,这两个词是可以互换的。

二、ES6 与 ECMAScript 2015 的关系:

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

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

但是,因为这个版本引入的语法功能太多,而且制定过程当中,还有很多组织和个人不断提交新功能。事情很快就变得清楚了,不可能在一个版本里面包括所有将要引入的功能。常规的做法是先发布 6.0 版,过一段时间再发 6.1 版,然后是 6.2 版、6.3 版等等。

但是,标准的制定者不想这样做。他们想让标准的升级成为常规流程:任何人在任何时候,都可以向标准委员会提交新语法的提案,然后标准委员会每个月开一次会,评估这些提案是否可以接受,需要哪些改进。如果经过多次会议以后,一个提案足够成熟了,就可以正式进入标准了。这就是说,标准的版本升级成为了一个不断滚动的流程,每个月都会有变动。

标准委员会最终决定,标准在每年的 6 月份正式发布一次,作为当年的正式版本。接下来的时间,就在这个版本的基础上做改动,直到下一年的 6 月份,草案就自然变成了新一年的版本。这样一来,就不需要以前的版本号了,只要用年份标记就可以了。

ES6 的第一个版本,就这样在 2015 年 6 月发布了,正式名称就是《ECMAScript 2015 标准》(简称 ES2015)。2016 年 6 月,小幅修订的《ECMAScript 2016 标准》(简称 ES2016)如期发布,这个版本可以看作是 ES6.1 版,因为两者的差异非常小(只新增了数组实例的includes方法和指数运算符),基本上是同一个标准。根据计划,2017 年 6 月发布 ES2017 标准。

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

以上内容引用自《ECMAScript 6 入门》:http://es6.ruanyifeng.com/#docs/intro

三、一句话总结:

ES6ECMAScript 6的简写,ECMAScriptJavaScript的标准,ECMAScript 6泛指“下一代JavaScript语言”,具体每年发布的都有自己的专属名称,比如2015年发布的则为ESMAScript 2015.目前说的ES6语法,一般指的都是ESMAScript 2015版。

四、在小程序开发工具中开启ES6:

在微信开发者工具中->详情->ES6转ES5,勾选上就可以了!

ES6语法:

这里只是为了微信小程序的学习做一些铺垫,所以只介绍到一些常用的语法。

定义变量的新关键字:

let:

注意: 在小程序中使用 let 依然会存在变量提升情况,(原因不是 let 的问题,而是微信小程序 在转化的时候 还是将let 转为了var )

使用let 的话,就可以只在 当前代码块有效,

const:

函数:

默认参数:

箭头函数:

箭头函数总结:

1,使用 箭头将参数 和 函数体分开,

2,如果有一个参数,可以直接写这个参数,如果有多个参数,那么这多个参数 要用 ( ) 括起来,如果没有参数,那么直接写个括号即可,

3,如果只需要返回一个值,那么可以直接 将返回值   写在 箭头右侧

Promise 风格的调用:

promise 承诺的意思!!!

ES6 中有个类叫 Promise  ,它接收一个参数,参数是函数,

这个函数呢,有两个参数 resolve ,和 reject ,这两个参数分别都是函数, (这两个参数不需要我们自己传,js引擎会帮我们传,)

如果你调用了 resolve 的话,那么就会调用 then 中  的函数,如果你调用了 reject 函数,那么就会调用 catch 中    函数,

总结: resolve 接收 ,  reject 拒绝!!! --->  类似于 success  和 fail  

promise = new Promise(function (resolve ,reject){

  //如果执行了 resolve ,就会执行 下面的then 函数

  //如果执行了 reject ,就会执行 下面  的 catch 函数

})

promise.then( function(){

}).catch(function(){

})

注: resolve 和 reject 只可能 执行一个,

类:

例如:  

定义静态函数:

模块:

在传统的JS中,是没有办法在多个js文件中互相导入的,这对于大型项目来说很不方便。因此ES6提供了一个模块的功能。要学会使用模块,只要掌握两个关键字export以及import即可。

export:

默认在一个js文件中写好的代码或者变量,是不能够给其他的文件使用的,如果想要被外部使用,那么需要使用export关键字。

import:

以上文件进行export了,那么以后其他文件想要使用的,则需要从这个文件中把需要的进行import

原文地址:https://www.cnblogs.com/zach0812/p/12302348.html

时间: 2024-10-10 13:18:00

08 ES6 基本介绍的相关文章

Es6简单介绍(不限于)

# Es6简单介绍(不限于) # 一. let.const { let a = 1 } console.log(a) 1234 var let const 变量声明提升 1.不会提升;2.只在当前块级作用域生效 1,2同let,3.已声明的变量不可修改 # 二. 模板字符串 var str = '字' var str2 = `模板${str}符串` console.log(str2) // 模板字符串 123 # 三. 解构赋值 let o = { a: 1, b: 2, c: 3 } cons

<08>while循环介绍及基本格式+while循环使用陷阱+统计键盘输入字符个数+while循环使用注意+do-while循环介绍及语法格式+do-while和while的对比+for循环结构及执行过程+for循环的其他形式

while循环介绍及基本格式(掌握): 循环结构: 当条件满足的时候 ,程序会重复的执行某一个代码段 构成循环结构的条件: 1)循环控制条件 2)循环体 3)让循环控制条件为假的控制 while循环的格式: while(表达式){ 语句块; } 1 #include <stdio.h> 2 3 void test1(){ 4 5 int i=1; 6 7 // 1)循环控制条件 8 while(i<=1000){ 9 10 //2)循环体 11 printf("第%d次说:我爱

&lt;08&gt; while循环介绍及基本格式+while循环使用陷阱+统计键盘输入的字符数+

while循环介绍及基本格式(掌握): 循环结构: 当条件满足的时候 ,程序会重复的执行某一个代码段 构成循环结构的条件: 1)循环控制条件 2)循环体 3)让循环控制条件为假的控制 while循环的格式: while(表达式){ 语句块; } 1 #include <stdio.h> 2 3 void test1(){ 4 5 int i=1; 6 7 // 1)循环控制条件 8 while(i<=1000){ 9 10 //2)循环体 11 printf("第%d次说:我爱

es6简单介绍

1.ECMAScript 6 简介 2.let和const命令 3.变量的解构赋值 4.字符串的扩展之模板字符串 5.正则的扩展 6.数值的扩展 7.函数的扩展 8.数组的扩展 9.对象的扩展 10.类 1.ECMAScript 6 简介 ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了.它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言. ECMA:国际标准组织 2.l

Vue学习【第二篇】:ES6简单介绍

ECMAScript 6 简介 ECMAScript 6.0(以下简称 ES6)是 JavaScript 语言的下一代标准,已经在 2015 年 6 月正式发布了.它的目标,是使得 JavaScript 语言可以用来编写复杂的大型应用程序,成为企业级开发语言. ECMA:国际标准组织 let,var和const命令 const:是用来定义一个常量的 const a ='hello' //const就是定义一个常量 //常量是不能修改的 let:是用来定义一个块级作用域的变量 let和val都是用

ES6语法介绍

刚开始用vue或者react,很多时候我们都会把ES6这位大兄dei加入我们的技术栈中.但是ES6那么多那么多特性,我们真的需要全部都掌握吗?秉着二八原则,掌握好常用的.有用的这个可以让我们的开发快速起飞. 接下来我们就聊聊ES6那些可爱的新特性吧. 1.变量声明const和let 在ES6之前,我们都是用var关键字声明变量.无论声明在何处,都会被视为声明在函数的最顶部(不在函数内即在全局作用域的最顶部).这就是函数变量提升例如: function aa() { if(flag) { var

JavaScript、ES5和ES6的介绍和区别

什么是JavaScript JavaScript一种动态类型.弱类型.基于原型的客户端脚本语言,用来给HTML网页增加动态功能.(好吧,概念什么最讨厌了) 动态: 在运行时确定数据类型.变量使用之前不需要类型声明,通常变量的类型是被赋值的那个值的类型. 弱类: 计算时可以不同类型之间对使用者透明地隐式转换,即使类型不正确,也能通过隐式转换来得到正确的类型. 原型: 新对象继承对象(作为模版),将自身的属性共享给新对象,模版对象称为原型.这样新对象实例化后不但可以享有自己创建时和运行时定义的属性,

34.JS 开发者必须知道的十个 ES6 新特性

JS 开发者必须知道的十个 ES6 新特性 这是为忙碌的开发者准备的ES6中最棒的十个特性(无特定顺序): 默认参数 模版表达式 多行字符串 拆包表达式 改进的对象表达式 箭头函数 =&> Promise 块级作用域的let和const 类 模块化 注意:这个列表十分主观并且带有偏见,其他未上榜的特性并不是因为没有作用,我这么做只是单纯的希望将这份列表中的项目保持在十个. 首先,一个简单的JavaScript时间线,不了解历史的人也无法创造历史. 1995年:JavaScript以LiveS

const的使用和lES6的兼容处理|-ES6连载2

大家好,好久不见,经过上次ES6的介绍和let声明后,小编继续给大伙带来更精彩的ES6. 关键字const 的作用 const是constant(常量)的缩写,const和 let一样,也是用来声明变量的,但是const是专门用于声明一个常量的,顾名思义,常量的值是不可改变的. 常量的特点 不可修改 const Name = '张三'; Name = '李四';//错误,企图修改常量Name 只在块级作用域起作用,这点与let关键字一样. if(1){ const Name = '张三'; }