es6阮一峰教程官网入口 阮一峰JavaScript

es6阮一峰教程官网入口:https://es6.ruanyifeng.com/

阮一峰JavaScript标准参考教程(alpha)首页:https://javascript.ruanyifeng.com/

前端开发必读书目系列之Javascript篇——阮一峰的《ES6 标准入门》

随着移动端浏览器性能和兼容性不断提升,以及各类 Javascript Native 框架的日渐成熟,Web 前端开发的确实越来越明朗和清晰。本系列文章为大家整理推荐一些前端开发的经典书籍,大家可根据自身实际情况选择阅读,希望对大家学好前端开发,提升自己的能力,找到心仪的工作有所帮助。

《ES6 标准入门》

  • 作者:阮一峰
  • 页数:336
  • 出版: 电子工业出版社 2016年版

 

简要评价

学习前端开发的人,大概都听过大名鼎鼎的阮一峰,他写的博客开门见山、深入浅出,将复杂的概念和技术用非常舒服的结构和节奏写出来,非常适合入门学习。这本《ES6 标准入门》,同样秉承了这样的特点,既通俗易读又不失技术深度,是我看过的最好的 ES6 入门教材,强烈推荐给大家看。

当然,这本书并不从头讲 Javascript,需要读者已经有一定的 Javascript 语言基础。另外这本书我看的是第二版,貌似9月份已经出第三版了,大家可以关注。如果不想买书,在阮一峰老师的博客上,可以看到这本书的电子版。地址为:http://es6.ruanyifeng.com 。

主要内容

ES6(又名 ES2105)是 JavaScript 语言的新标准,2015 年 6 月正式发布后,得到了迅速推广,是目前业界超级活跃的计算机语言。《ES6标准入门》对标准进行了彻底的解读,所有新增的语法知识(包括即将发布的 ES7)都给予了详细介绍,并且紧扣业界开发实践,给出了大量简洁易懂、可以即学即用的示例代码。《ES6标准入门》为中级难度,适合对 JavaScript 语言或 ES5 已经有所了解的读者,用来提高水平,了解这门语言的最新发展;也可当作参考手册,查寻 ES6/ES7 新增的语法点。

书籍目录

第1章 ECMAScript 6简介

  • 1.1 ECMAScript和JavaScript的关系
  • 1.2 ECMAScript的历史
  • 1.3 部署进度
  • 1.4 Babel转码器
  • 1.5 Traceur转码器
  • 1.6 ECMAScript 7

第2章 let和const命令

  • 2.1 let命令
  • 2.2 块级作用域
  • 2.3 const命令
  • 2.4 跨模块常量
  • 2.5 全局对象的属性

第3章 变量的解构赋值

  • 3.1 数组的解构赋值
  • 3.2 对象的解构赋值
  • 3.3 字符串的解构赋值
  • 3.4 数值和布尔值的解构赋值
  • 3.5 函数参数的解构赋值
  • 3.6 圆括号问题
  • 3.7 用途

第4章 字符串的扩展

  • 4.1 字符的Unicode表示法
  • 4.2 codePointAt()
  • 4.3 String.fromCodePoint()
  • 4.4 字符串的遍历器接口
  • 4.5 at()
  • 4.6 normalize()
  • 4.7 includes(),startsWith(),endsWith()
  • 4.8 repeat()
  • 4.9 padStart(),padEnd()
  • 4.10 模板字符串
  • 4.11 实例:模板编译
  • 4.12 标签模板
  • 4.13 String.raw()

第5章 正则的扩展

  • 5.1 RegExp 构造函数
  • 5.2 字符串的正则方法
  • 5.3 u 修饰符
  • 5.4 y 修饰符
  • 5.5 sticky 属性
  • 5.6 flags 属性
  • 5.7 RegExp.escape()

第6章 数值的扩展

  • 6.1 二进制和八进制数值表示法
  • 6.2 Number.isFinite(), Number.isNaN()
  • 6.3 Number.parseInt(), Number.parseFloat()
  • 6.4 Number.isInteger()
  • 6.5 Number.EPSILON
  • 6.6 安全整数和Number.isSafeInteger()
  • 6.7 Math 对象的扩展
  • 6.8 指数运算符

第7章 数组的扩展

  • 7.1 Array.from()
  • 7.2 Array.of()
  • 7.3 数组实例的copyWithin()
  • 7.4 数组实例的find() 和findIndex()
  • 7.5 数组实例的fill()
  • 7.6 数组实例的entries()、keys() 和values()
  • 7.7 数组实例的includes()
  • 7.8 数组的空位
  • 7.9 数组推导

第8章 函数的扩展

  • 8.1 函数参数的默认值
  • 8.2 rest 参数
  • 8.3 扩展运算符
  • 8.4 name 属性
  • 8.5 箭头函数
  • 8.6 函数绑定
  • 8.7 尾调用优化
  • 8.8 函数参数的尾逗号

第9章 对象的扩展

  • 9.1 属性的简洁表示法
  • 9.2 属性名表达式
  • 9.3 方法的name 属性
  • 9.4 Object.is()
  • 9.5 Object.assign()
  • 9.6 属性的可枚举性
  • 9.7 属性的遍历 098
  • 9.8 proto 属性, Object.setPrototypeOf(), Object.getPrototypeOf()
  • 9.9 对象的扩展运算符

第10 章 Symbol

  • 10.1 概述
  • 10.2 作为属性名的Symbol
  • 10.3 实例:消除魔术字符串
  • 10.4 属性名的遍历
  • 10.5 Symbol.for(),Symbol.keyFor()
  • 10.6 内置的Symbol 值

第11 章 Proxy 和Reflect

  • 11.1 Proxy 概述
  • 11.2 Proxy 实例的方法
  • 11.3 Proxy.revocable()
  • 11.4 Reflect 概述
  • 11.5 Reflect 对象的方法

第12 章 二进制数组

  • 12.1 ArrayBuffer 对象
  • 12.2 TypedArray 视图
  • 12.3 复合视图
  • 12.4 DataView 视图
  • 12.5 二进制数组的应用

第13 章 Set 和Map 数据结构

  • 13.1 Set
  • 13.2 WeakSet
  • 13.3 Map
  • 13.4 WeakMap

第14 章 Iterator 和for…of 循环

  • 14.1 Iterator 的概念
  • 14.2 数据结构的默认Iterator 接口
  • 14.3 调用Iterator 接口的场合
  • 14.4 字符串的Iterator 接口
  • 14.5 Iterator 接口与Generator 函数
  • 14.6 遍历器对象的return()、throw()
  • 14.7 for…of 循环

第15 章 Generator 函数

  • 15.1 简介
  • 15.2 next 方法的参数
  • 15.3 for…of 循环
  • 15.4 Generator.prototype.throw()
  • 15.5 Generator.prototype.return()
  • 15.6 yield* 语句
  • 15.7 作为对象属性的Generator 函数
  • 15.8 Generator 函数的this
  • 15.9 Generator 函数推导
  • 15.10 含义
  • 15.11 应用

第16 章 Promise 对象

  • 16.1 Promise 的含义
  • 16.2 基本用法 208
  • 16.3 Promise.prototype.then()
  • 16.4 Promise.prototype.catch()
  • 16.5 Promise.all()
  • 16.6 Promise.race()
  • 16.7 Promise.resolve()
  • 16.8 Promise.reject()
  • 16.9 两个有用的附加方法

第17 章 异步操作和async 函数

  • 17.1 基本概念
  • 17.2 Generator 函数
  • 17.3 Thunk 函数
  • 17.4 co 模块
  • 17.5 async 函数

第18 章 Class

  • 18.1 Class 基本语法
  • 18.2 Class 的继承
  • 18.3 原生构造函数的继承
  • 18.4 Class 的取值函数(getter)和存值函数(setter
  • 18.5 Class 的Generator 方法
  • 18.6 Class 的静态方法
  • 18.7 Class 的静态属性
  • 18.8 new.target 属性
  • 18.9 Mixin 模式的实现

第19 章 修饰器

  • 19.1 类的修饰
  • 19.2 方法的修饰
  • 19.3 为什么修饰器不能用于函数
  • 19.4 core-decorators.js
  • 19.5 使用修饰器实现自动发布事件
  • 19.6 Mixin
  • 19.7 Trait
  • 19.8 Babel 转码器的支持

第20 章 Module

  • 20.1 严格模式
  • 20.2 export 命令
  • 20.3 import 命令
  • 20.4 模块的整体加载
  • 20.5 module 命令
  • 20.6 export default 命令
  • 20.7 模块的继承
  • 20.8 ES6 模块加载的实质
  • 20.9 循环加载
  • 20.10 ES6 模块的转码

第21 章 编程风格

  • 21.1 块级作用域
  • 21.2 字符串
  • 21.3 解构赋值
  • 21.4 对象
  • 21.5 数组
  • 21.6 函数
  • 21.7 Map 结构
  • 21.8 Class
  • 21.9 模块
  • 21.10 ESLint 的使用

第22 章 读懂ECMAScript 规格

  • 22.1 概述
  • 22.2 相等运算符
  • 22.3 数组的空位
  • 22.4 数组的map 方法

第23 章 参考链接

  • 23.1 官方文件
  • 23.2 综合介绍
  • 23.3 let 和const
  • 23.4 解构赋值
  • 23.5 字符串
  • 23.6 正则
  • 23.7 数值
  • 23.8 数组
  • 23.9 函数
  • 23.10 对象
  • 23.11 Proxy 和Reflect
  • 23.12 Symbol
  • 23.13 二进制数组
  • 23.14 Set 和Map
  • 23.15 Iterator
  • 23.16 Generator
  • 23.17 Promise 对象
  • 23.18 Class
  • 23.19 Decorator
  • 23.20 Module
  • 23.21 工具
版权声明