你不知道的JavaScript(中卷)
查字典图书网
当前位置: 查字典 > 图书网 > 编程> 你不知道的JavaScript(中卷)

你不知道的JavaScript(中卷)

8.9

作者: [美] Kyle Simpson
出版社: 人民邮电出版社
译者: 单 业  |  姜 南  |  单业  |  姜南
出版年: 2016-8
页数: 358
定价: 79.00元
装帧: 平装
ISBN: 9787115431165



推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

内容简介:

JavaScript这门语言简单易用,很容易上手,但其语言机制复杂微妙,即使是经验丰富的JavaScript开发人员,如果没有认真学习的话也无法真正理解。本套书直面当前JavaScript开发人员不求甚解的大趋势,深入理解语言内部的机制,全面介绍了JavaScript中常被人误解和忽视的重要知识点。本书是其中卷,主要介绍了类型、语法、异步和性能。

作者简介:

<作者介绍>

Kyle Simpson

作家、培训师、讲师、开源社区的活跃成员,推崇开放的互联网,对JavaScript、HTML5、实时/端对端通信和Web性能有深入研究。

<译者介绍>

单业

计算机专业硕士,软件工程师,曾供职于多家软件公司,从事软件开发工作,现居于上海。负责本书第二部分“异步和性能”的翻译。

姜南

从事过国内外金融、通信、移动互联网、数字出版等领域的IT系统开发工作,擅长的技术有Java、C#、HTML5、JavaScript、iOS、Android等。长期在独立技术博客——酷壳(coolshell.cn)发表翻译文章。负责本书第一部分“类型和语法”的翻译。

目录:

前言 XI

第一部分 类型和语法

序2

第1章  类型3

1.1 类型4

1.2 内置类型4

1.3 值和类型6

1.3.1 undefined 和undeclared6

1.3.2 typeof Undeclared7

1.4 小结10

第2章 值11

2.1 数组11

2.2 字符串13

2.3 数字15

2.3.1 数字的语法16

2.3.2 较小的数值18

2.3.3 整数的安全范围19

2.3.4 整数检测20

2.3.5 32 位有符号整数20

2.4 特殊数值21

2.4.1 不是值的值21

2.4.2 undefined21

2.4.3 特殊的数字23

2.4.4 特殊等式27

2.5 值和引用28

2.6 小结31

第3章 原生函数33

3.1 内部属性[[Class]]34

3.2 封装对象包装35

3.3 拆封36

3.4 原生函数作为构造函数37

3.4.1 Array(..)37

3.4.2 Object(..)、Function(..) 和RegExp(..)40

3.4.3 Date(..) 和Error(..)41

3.4.4 Symbol(..)42

3.4.5 原生原型43

3.5 小结45

第4章 强制类型转换46

4.1 值类型转换46

4.2 抽象值操作47

4.2.1 ToString48

4.2.2 ToNumber52

4.2.3 ToBoolean53

4.3 显式强制类型转换56

4.3.1 字符串和数字之间的显式转换57

4.3.2 显式解析数字字符串62

4.3.3 显式转换为布尔值65

4.4 隐式强制类型转换67

4.4.1 隐式地简化67

4.4.2 字符串和数字之间的隐式强制类型转换68

4.4.3 布尔值到数字的隐式强制类型转换71

4.4.4 隐式强制类型转换为布尔值72

4.4.5 || 和&&73

4.4.6 符号的强制类型转换76

4.5 宽松相等和严格相等77

4.5.1 相等比较操作的性能77

4.5.2 抽象相等

4.6 抽象关系比较89

4.7 小结91

第5章 语法92

5.1 语句和表达式92

5.1.1 语句的结果值93

5.1.2 表达式的副作用95

5.1.3 上下文规则99

5.2 运算符优先级104

5.2.1 短路107

5.2.2 更强的绑定107

5.2.3 关联108

5.2.4 释疑110

5.3 自动分号111

5.4 错误113

5.5 函数参数115

5.6 try..finally117

5.7 switch120

5.8 小结122

附录A 混合环境JavaScript123

第二部分 异步和性能

序136

第1章 异步:现在与将来138

1.1 分块的程序139

1.2 事件循环141

1.3 并行线程143

1.4 并发148

1.4.1 非交互150

1.4.2 交互150

1.4.3 协作154

1.5 任务156

1.6 语句顺序157

1.7 小结159

第2章 回调161

2.1 continuation162

2.2 顺序的大脑163

2.2.1 执行与计划164

2.2.2 嵌套回调与链式回调165

2.3 信任问题169

2.3.1 五个回调的故事170

2.3.2 不只是别人的代码171

2.4 省点回调173

2.5 小结176

第3章 Promise178

3.1 什么是Promise179

3.1.1 未来值179

3.1.2 完成事件183

3.2 具有then 方法的鸭子类型188

3.3 Promise 信任问题190

3.3.1 调用过早190

3.3.2 调用过晚191

3.3.3 回调未调用192

3.3.4 调用次数过少或过多193

3.3.5 未能传递参数/ 环境值193

3.3.6 吞掉错误或异常194

3.3.7 是可信任的Promise 吗195

3.3.8 建立信任197

3.4 链式流198

3.5 错误处理206

3.5.1 绝望的陷阱208

3.5.2 处理未捕获的情况209

3.5.3 成功的坑211

3.6 Promise 模式212

3.6.1 Promise.all([ .. ])212

3.6.2 Promise.race([ .. ])213

3.6.3 all([ .. ]) 和race([ .. ]) 的变体216

3.6.4 并发迭代217

3.7 Promise API 概述219

3.7.1 new Promise(..) 构造器219

3.7.2 Promise.resolve(..) 和Promise.reject(..)219

3.7.3 then(..) 和catch(..)220

3.7.4 Promise.all([ .. ]) 和Promise.race([ .. ])221

3.8 Promise 局限性222

3.8.1 顺序错误处理222

3.8.2 单一值223

3.8.3 单决议225

3.8.4 惯性227

3.8.5 无法取消的Promise230

3.8.6 Promise 性能231

3.9 小结233

第4章 生成器234

4.1 打破完整运行234

4.1.1 输入和输出236

4.1.2 多个迭代器239

4.2 生成器产生值243

4.2.1 生产者与迭代器243

4.2.2 iterable246

4.2.3 生成器迭代器247

4.3 异步迭代生成器250

4.4 生成器+Promise254

4.4.1 支持Promise 的Generator Runner256

4.4.2 生成器中的Promise 并发258

4.5 生成器委托262

4.5.1 为什么用委托264

4.5.2 消息委托264

4.5.3 异步委托268

4.5.4 递归委托268

4.6 生成器并发269

4.7 形实转换程序273

4.8 ES6 之前的生成器279

4.8.1 手工变换280

4.8.2 自动转换284

4.9 小结285

第5章 程序性能287

5.1 Web Worker288

5.1.1 Worker 环境290

5.1.2 数据传递291

5.1.3 共享Worker291

5.1.4 模拟Web Worker293

5.2 SIMD293

5.3 asm.js295

5.3.1 如何使用asm.js 优化295

5.3.2 asm.js 模块296

5.4 小结298

第6章 性能测试与调优299

6.1 性能测试99

6.1.1 重复300

6.1.2 Benchmark.js301

6.2 环境为王303

6.3 jsPerf.com305

6.4 写好测试309

6.5 微性能309

6.5.1 不是所有的引擎都类似312

6.5.2 大局314

6.6 尾调用优化316

6.7 小结318

附录A asynquence 库319

附录B 高级异步模式339

文章试读:JavaScript 有七种内置类型: 空值(null) 未定义(undefined) 布尔值( boolean) 数字(number) 字符串(string) 对象(object) 符号(symbol,ES6 中新增) 除对象之外,其他统称为“基本类型”。 我们可以用typeof 运算符来查...

(查看全部试读)

展开全文
热门标签:
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  •