你不知道的JavaScript(下卷) (Kyle Simpson 著)
第一部分 起步上路
第1章 深入编程
1.1 代码
1.2 表达式
1.3 实践
1.3.1 输出
1.3.2 输入
1.4 运算符
1.5 值与类型
1.6 代码注释
1.7 变量
1.8 块
1.9 条件判断
1.10 循环
1.11 函数
1.12 实践
1.13 小结
第2章 深入JavaScript
2.1 值与类型
2.1.1 对象
2.1.2 内置类型方法
2.1.3 值的比较
2.2 变量
2.3 条件判断
2.4 严格模式
2.5 作为值的函数
2.5.1 立即调用函数表达式
2.5.2 闭包
2.6 this标识符
2.7 原型
2.8 旧与新
2.8.1 polyfilling
2.8.2 transpiling
2.9 非JavaScript
2.10 小结
第3章 深入"你不知道的JavaScript"系列
3.1 作用域和闭包
3.2 this和对象原型
3.3 类型和语法
3.4 异步和性能
3.5 ES6及更新版本
3.6 小结
第二部分 ES6及更新版本
第1章 ES?现在与未来
1.1 版本
1.2 transpiling
1.3 小结
第2章 语法
2.1 块作用域声明
2.1.1 let声明
2.1.2 const声明
2.1.3 块作用域函数
2.2 spread/rest
2.3 默认参数值
2.4 解构
2.4.1 对象属性赋值模式
2.4.2 不只是声明
2.4.3 重复赋值
2.5 太多,太少,刚刚好
2.5.1 默认值赋值
2.5.2 嵌套解构
2.5.3 解构参数
2.6 对象字面量扩展
2.6.1 简洁属性
2.6.2 简洁方法
2.6.3 计算属性名
2.6.4 设定[[Prototype]]
2.6.5 super对象
2.7 模板字面量
2.7.1 插入表达式
2.7.2 标签模板字面量
2.8 箭头函数
2.9 for..of循环
2.10 正则表达式
2.10.1 Unicode标识
2.10.2 定点标识
2.10.3 正则表达式flags
2.11 数字字面量扩展
2.12 Unicode
2.12.1 支持Unicode的字符串运算
2.12.2 字符定位
2.12.3 Unicode标识符名
2.13 符号
2.13.1 符号注册
2.13.2 作为对象属性的符号
2.14 小结
第3章 代码组织
3.1 迭代器
3.1.1 接口
3.1.2 next()迭代
3.1.3 可选的return(..)和throw(..)
3.1.4 迭代器循环
3.1.5 自定义迭代器
3.1.6 迭代器消耗
3.2 生成器
3.2.1 语法
3.2.2 迭代器控制
3.2.3 提前完成
3.2.4 错误处理
3.2.5 Transpile生成器
3.2.6 生成器使用
3.3 模块
3.3.1 旧方法
3.3.2 前进
3.3.3 新方法
3.3.4 模块依赖项
3.3.5 模块加载
3.4 类
3.4.1 class
3.4.2 extends和super
3.4.3 new.target
3.4.4 static
3.5 小结
第4章 异步流控制
4.1 Promise
4.1.1 构造和使用Promise
4.1.2 Thenable
4.1.3 PromiseAPI
4.2 生成器+Promise
4.3 小结
第5章 集合
5.1 TypedArray
5.1.1 大小端(Endiannerss)
5.1.2 多视图
5.1.3 带类数组构造器
5.2 Map
5.2.1 Map值
5.2.2 Map键
5.3 WeakMap
5.4 Set
5.5 WeakSet
5.6 小结
第6章 新增API
6.1 Array
6.1.1 静态函数Array.of(..)
6.1.2 静态函数Array.from(..)
6.1.3 创建数组和子类型
6.1.4 原型方法copyWithin(..)
6.1.5 原型方法fill(..)
6.1.6 原型方法find(..)
6.1.7 原型方法findIndex(..)
6.1.8 原型方法entries(),values(),keys()
6.2 Object
6.2.1 静态函数Object.is(..)
6.2.2 静态函数Object.getOwnPropertySymbols(..)
6.2.3 静态函数Object.setPrototypeOf(..)
6.2.4 静态函数Object.assign(..)
6.3 Math
6.4 Number
6.4.1 静态属性
6.4.2 静态函数Number.isNaN(..)
6.4.3 静态函数Number.isFinite(..)
6.4.4 整型相关静态函数
6.5 字符串
6.5.1 Unicode函数
6.5.2 静态函数String.raw(..)
6.5.3 原型函数repeat(..)
6.5.4 字符串检查函数
6.6 小结
第7章 元编程
7.1 函数名称
7.2 元属性
7.3 公开符号
7.3.1 Symbol.iterator
7.3.2 Symbol.toStringTag和Symbol.hasInstance
7.3.3 Symbol.species
7.3.4 Symbol.toPrimitive
7.3.5 正则表达式符号
7.3.6 Symbol.isConcatSpreadable
7.3.7 Symbol.unscopables
7.4 代理
7.4.1 代理局限性
7.4.2 可取消代理
7.4.3 使用代理
7.5 Reflect API
7.6 特性测试
7.7 尾递归调用(Tail Call Optimization,TCO)
7.7.1 尾调用重写
7.7.2 非TCO优化
7.7.3 元在何处
7.8 小结
第8章 ES6之后
8.1 异步函数
8.2 Object.observe(..)
8.2.1 自定义改变事件
8.2.2 结束观测
8.3 幂运算符
8.4 对象属性与...
8.5 Array#includes(..)
8.6 SIMD
8.7 WebAssembly(WASM)
8.8 小结
你不知道的JavaScript(下卷) (Kyle Simpson 著)的更多相关文章
- 你不知道的JavaScript(上卷) (Kyle Simpson 著)
第一部分 作用域和闭包 第1章 作用域是什么 (已看) 1.1 编译原理 1.2 理解作用域 1.2.1 演员表 1.2.2 对话 1.2.3 编译器有话说 1.2.4 引擎和作用域的对话 1.2.5 ...
- 《你不知道的JavaScript下卷》知识点笔记
1. [1, 2, 3] == [1, 2, 3] 返回false [1, 2, 3] == “1, 2, 3” 返回true 2. 如果 < 比较的两个值都是字符串, 就像在b < c中 ...
- 你不知道的JavaScript下卷
阿喀琉斯之踵 学习编程最好的办法就是编写代码 比较 隐式类型转换 数字和字符串 比较 字符串会隐式转换为数字,再进行比较 == 类型转换 ecma
- 《你不知道的JavaScript》三卷读后感
本系列的作者是Kyle Simpson,上卷译者赵望野.梁杰,中卷译者单业,下卷译者单业.姜南. 我个人觉得第一卷是本系列最好的(必读),而第二卷虽然也讲解了很多知识点,但是对于异步和性能的那部分提及 ...
- <你不知道的JavaScript>读书笔记
近几天看了一本不错的 JavaScript 的书,是 Kyle Simpson 写的 <You Don't know JS>.这本书是 Kyle Simpson 在 Github 上的开源 ...
- 你不知道的JavaScript上卷笔记
你不知道的JavaScript上卷笔记 前言 You don't know JavaScript是github上一个系列文章 初看到这一标题的时候,感觉怎么老外也搞标题党,用这种冲突性比较强的题目 ...
- 《你不知道的 JavaScript 上卷》 学习笔记
第一部分: 作用域和闭包 一.作用域 1. 作用域:存储变量并且查找变量的规则 2. 源代码在执行之前(编译)会经历三个步骤: 分词/此法分析:将代码字符串分解成有意义的代码块(词法单元) 解析/语法 ...
- 《你不知道的JavaScript》整理(二)——this
最近在读一本进阶的JavaScript的书<你不知道的JavaScript(上卷)>,这次研究了一下“this”. 当一个函数被调用时,会创建一个活动记录(执行上下文). 这个记录会包含函 ...
- 《你不知道的JavaScript》整理(一)——作用域、提升与闭包
最近在读一本进阶的JavaScript的书<你不知道的JavaScript(上卷)>,里面分析了很多基础性的概念. 可以更全面深入的理解JavaScript深层面的知识点. 一.函数作用域 ...
随机推荐
- sass进阶 @if @else if @else @for循环
这种判断语句要配合混合宏来使用 定义下一混合宏 @mixin blockOrHidden($boolean:true) { @if $boolean { @debug "$boolean i ...
- 异步设备IO OVERLAPPED结构(设备内核对象 事件内核对象 可提醒IO)
同步IO是指:线程在发起IO请求后会被挂起,IO完成后继续执行. 异步IO是指:线程发起IO请求后并不会挂起而是继续执行.IO完毕后会得到设备驱动程序的通知. 一.异步准备与OVERLAPPED结构 ...
- js实现网页全屏切换(平滑过渡),鼠标滚动切换
实现效果为页面平滑过渡全屏切换,点击导航和鼠标滚动都可以切换. 效果图: html代码: <!DOCTYPE html> <html> <head lang=" ...
- python 爬虫newspaper3k 新闻爬去方法 利用第三方库
from newspaper import Article url = '你想要爬取的网站url' news = Article(url, language='zh') news .download( ...
- python中的pandas的两种基本使用
python中的pandas的两种基本使用2018年05月19日 16:03:36 木子柒努力成长 阅读数:480 一.pandas简介 pandas:panel data analysis(面板数据 ...
- Fedora 10编程开发工具
1请问Fedora 10编程开发工具有什么 编辑器就用vim,编译用gcc,当然个人爱好随意 IDE的话推荐eclipse,如果做C/C++的,用codeblocks也是个不错的选择 输入gcc -v ...
- C语言基础:数组 分类: iOS学习 c语言基础 2015-06-10 21:40 7人阅读 评论(0) 收藏
数组:是由一组具有相同数据类型的数据组合而来. 数组定义:元素类型修饰符 数组名[数组个数]={元素1,元素2....}; int arr[ 2 ]={1,2}; //正确 int arr[ ...
- 什么是虚拟DOM?为啥虚拟DOM可以提升性能?
现在流行的框架无论是React还是vue,都采用的是虚拟DOM 采用虚拟DOM的好处是,当数据变化的时候,无需像Backbone那样整体重新渲染,而是局部刷新变化部分 所谓虚拟DOM,其实就说用Jav ...
- Set和Map数据结构
1.Set ES6 提供了新的数据结构 Set.它类似于数组,但是成员的值都是唯一的,没有重复的值. Set 本身是一个构造函数,用来生成 Set 数据结构. 2.Map JavaScript 的对象 ...
- 一种简单的ELF加固方法
介绍一种ELF文件函数粒度的加固方法,可以有效防止对程序的静态分析.这是一种有源码加固方式,需要被加固程序中代码配合.加固流程如下: 1)读取ELF文件头,获取e_phoff和e_phnum2)通过E ...