ES6标准入门略读笔记
编辑于2018年1月6日
一、let命令
1、let声明的变量只在其所在代码块内有效;
2、let声明的变量在声明前使用会报错ReferenceError;
3、暂时性死区;
4、let不允许在相同的作用域内重复声明同一个变量。
二、块级作用域
1、let外层代码块不受内层代码块的影响;
2、使用do表达式使块级作用域中的值能够返回。
三、const
1、const声明一个只读常量;
四、ES6中全局变量将逐步与顶层对象的属性隔离
五、变量的解构赋值
1、解构不成功,变量的值就等于undefined;
2、解构赋值允许指定默认值;
3、解构也可用于对象;
4、字符串的解构赋值:const[a,b,c,d,e]="hello";
5、数值和布尔值也可使用解构赋值;
6、函数的参数也可以使用解构赋值,函数参数的解构也可以使用默认值;
7、建议在模式中不要放置圆括号;
8、用途:
a、变换变量的值;
b、从函数返回多个值;
c、函数参数的定义;
d、提取JSON数据;
e、函数参数的默认值;
f、遍历Map解构。
四、字符串的扩展
1、字符的Unicode表示法:ES6中只要将码点放入大括号,就能正确解读该字符;
2、'abc'.at(0);//"a" '?'.at(0);//"?"
而ES5中'abc'.charAt(0);//"a" '?'.charAt(0);//"\uD842"
3、常见方法
a、includes()、startsWith()、endsWith()
b、repeat()
c、padStart()、padEnd()//ES2017引入了字符串补全长度功能,'x'.padStart(4,'ab');//'abax'
4、模板字符串。
七、函数的拓展
1、函数的默认值;
2、应用:
function throwIfMissing(){throw new Error('Missing parameter');
}
function foo(mustBeProvided = throwIfMissing()){return mustBeProvided;
}
foo;//Error:Missing parameter
3、ES6引入了reset参数(形式为“...变量名”);
4、name属性:ES6的name属性会返回实际的函数名;
5、箭头函数;
6、函数绑定运算符是并排的双冒号(::),双冒号左边是一个对象,右边是一个函数;
7、尾调用优化。
八、数组的拓展
1、扩展运算符(spread)是三个点(...),他如同reset参数的逆运算;
2、Arrayfrom():将两类对象转为真正的数组:
a、类似数组的对象
b、可遍历对象
3、Arrayof()方法用于将一组值转换为数组;
4、copyWithin();
5、find()和findIndex();
6、fill()方法使用给定值填充一个数组;
7、entries()、keys()、values();
8、includes()。
十二、Proxy
函数Proxy接受两个参数,第一个参数是所要代理的目标对象,即如果没有Proxy介入,操作原来要访问的就是这个对象;第二个参数是一个配置对象,对于每一个被代理的操作,需要提供一个对应的处理函数,该函数将拦截对应的操作。
十四、Promise对象
1、两个特点:
a、对象的状态不受外界影响,三种状态:Pending(进行中)、Fulfilled(已成功)、Rejected(已失败);
b、一旦状态改变就不会再变
2、Promise.prototype.then()
Promise.prototype.catch();
3、Promise.all()
Promise.race();
4、Promise.resolve()
Promise.reject();
5、done()
finally()。
十五、Iterator和for...of循环
1、集中遍历:
a、for;
b、forEach;
c、for...in;
d、for...of。
十九、class的基本语法:ES6中的class可以看作只是一个语法糖。
二十一、修饰器
1、修饰器本质就是编译时执行的函数;
2、修饰器只能用于类和类的方法。
二十二、Module的语法
1、ES6模块不是对象,而是通过export命令显式指定输出的代码,再通过import命令输入;
2、ES6的模块自动采用严格模式,不管有没有在模块头部加上"use strict"。
二十四、编程风格
1、ESLint的使用(语法规则和代码风格的检查工具)。
ES6标准入门略读笔记相关推荐
- ES6标准入门(第二版)pdf
下载地址:网盘下载 内容简介 · · · · · · ES6(又名 ES2105)是 JavaScript 语言的新标准,2015 年 6 月正式发布后,得到了迅速推广,是目前业界超级活跃的计算机语 ...
- ES6 标准入门(第二版)阮一峰学习
现在前端环境中,每一位程序员都要求熟练ES6语法,但是大部分ES6的文档都不太完整,接下来的时间,我将为童鞋们分享阮一峰老师第二版的ES6标准.让我们一起来学习一下!!! 本期先说一下学习的目录 1: ...
- 《ES6标准入门》学习笔记
//1,声明关键字:const.letconst plus1 = a => a + 1;const mult2 = b => b * 2;console.log(mult2(plus1(1 ...
- js -- ES6(一)-- 简介(根据阮一峰ES6标准入门整理)
目前正在学习ES6,根据阮一峰的ES6入门2,学到哪更新到哪里,都是基本的知识,复杂的目前还不会,涉及的代码都是亲自运行过的,若发现错误请指正. ES6 提供了许多新特性,但是并不是所有的浏览器都能够 ...
- 《ES6标准入门》49~68Page 数值的拓展 数组的拓展
1.数值拓展 ES6提供的二进制和八进制表示法分别是二进制: 0B111110111(0b111110111) 八进制: 0O767(0o767) ES6提供了新的Number.isFinite()和 ...
- 《es6标准入门》 阮一峰
2 let和const命令 2.1 let命令 2.1.1 基本用法 2.1.2 不存在变量提升 2.1.3 暂时性死区 2.1.4 不允许重复声明 2.2 块级作用域 2.2.1 为什么需要块级作用 ...
- es6标准入门第3版pdf_最详细,快速入门Web前端开发的正确姿势
入门标准 入门标准很简单,就一条:达到能参与 Web 前端实际项目的开发水平.请注意,是实际项目,这就需要了解如今的实际项目开发都用了哪些技术栈.HTML/CSS/JavaScript 这三大基础技术 ...
- 阮一峰ES6入门读书笔记(十六):Moudle
阮一峰ES6入门读书笔记(十六):Moudle 在 ES6 之前,社区制定了一些模块加载方案,最主要的有 CommonJS 和 AMD 两种.前者用于服务器,后者用于浏览器.ES6 在语言标准的层面上 ...
- 阮一峰ES6入门读书笔记(七):运算符的拓展
阮一峰ES6入门读书笔记(七):运算符的拓展 1. 指数运算符 ES6新增了一个指数运算符(**). 2 ** 2 // 4 2 ** 3 // 8 这个运算符的一个特点是右结合,而不是常见的左结合. ...
- Crypto++入门学习笔记(DES、AES、RSA、SHA-256)
Crypto++入门学习笔记(DES.AES.RSA.SHA-256) 背景(只是个人感想,技术上不对后面的内容构成知识性障碍,可以skip): 最近,基于某些原因和需要,笔者需要去了解一下Crypt ...
最新文章
- STM32中关于串口通信的printf()函数重定向问题
- hashset hastable dictionary concurrentdictionary区别
- 一个支持Abort的BackgroundWorker
- 把第三方jar包放入本地私服
- WorkerMan源码分析(resetStd方法,PHP中STDIN, STDOUT, STDERR的重定向)
- websocket实现多屏互动_纸笔互动课堂应用场景到底有些什么呢?
- Java成神之路技术整理
- Android 基于监听的事件处理机制
- 一个令你颤抖的flutter动画:Basic Animations
- html网页特效代码笔记,一个js实现的网页鼠标点击特效代码
- java public aspect_ASPECT Java的使用
- 二项式系数表--杨辉三角形
- 运筹说 第77期 | 算法介绍之图与网络分析(一)
- 8款最好用的固定资产管理软件
- Day050--jQuery表单事件 轮播图 插件库 ajax
- 目前机器翻译,发展到哪个阶段了?
- 单品销量破百万+,登顶天猫类目第一!摇滚动物园的爆品打造攻略你学会了吗?
- Bootstrap03
- 《程序员养成记》第1集 做程序员需要天赋吗?
- 小小的宏 大大的世界