产品特色
编辑推荐
JavaScript语言有很多复杂的概念,但却用简单的方式体现出来(比如回调函数),因此,JavaScript开发者无需理解语言内部的原理,就能编写出功能全面的程序。然而,JavaScript的这些复杂精妙的概念才是语言的精髓,即使是经验丰富的JavaScript开发者,如果没有认真学习,也无法真正理解语言本身的特性。正是因为绝大多数人不求甚解,一遇到出乎意料的行为就认为是语言本身有缺陷,进而把相关的特性加入黑名单,久而久之就排除了这门语言的多样性,人为地使它变得不完整、不安全。
“你不知道的JavaScript”系列就是要让不求甚解的JavaScript开发者迎难而上,深入语言内部,弄清楚JavaScript每一个零部件的用途。本书介绍了该系列的两个主题:“类型和语法”以及“异步和性能”。掌握了这些知识之后,无论什么技术、框架和流行词语,你都能轻松理解。
内容简介
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 和undeclared 6
1.3.2 typeof Undeclared 7
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 undefined 21
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 ToString 48
4.2.2 ToNumber 52
4.2.3 ToBoolean 53
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..finally 117
5.7 switch 120
5.8 小结 122
附录A 混合环境JavaScript 123
第二部分 异步和性能
序 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 continuation 162
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 章 Promise 178
3.1 什么是Promise 179
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 无法取消的Promise 230
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 iterable 246
4.2.3 生成器迭代器 247
4.3 异步迭代生成器 250
4.4 生成器+Promise 254
4.4.1 支持Promise 的Generator Runner 256
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 Worker 288
5.1.1 Worker 环境 290
5.1.2 数据传递 291
5.1.3 共享Worker 291
5.1.4 模拟Web Worker 293
5.2 SIMD 293
5.3 asm.js 295
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.js 301
6.2 环境为王 303
6.3 jsPerf.com 305
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 中卷 下载 mobi epub pdf txt 电子书 格式
评分
☆☆☆☆☆
书质量不错,内容不错,正在看,期待收获
评分
☆☆☆☆☆
东西不错,可以再次买,给几个朋友看了一下,都觉得很值。物流师傅很辛苦,我们这边天气很差,还是很负责的送了过来,很感动。质量非常好,与卖家描述的完全一致,非常满意,真的很喜欢,完全超出期望值,发货速度非常快,包装非常仔细、严实,物流公司服务态度很好,运送速度很快,很满意的一次购物,谢谢!!!
评分
☆☆☆☆☆
哈哈哈真是太好了,肯定有10个字了
评分
☆☆☆☆☆
看了上中,讲的不错,下已经入手,非常适合懂一丢丢js,又不是太熟的人看,收获挺多
评分
☆☆☆☆☆
很好,是正版,值得购买,书香四溢,美味美味,以后买书都在京东了,谢谢
评分
☆☆☆☆☆
吾消费京东商城数年,深知各产品琳琅满目。然,唯此宝物与众皆不同,为出淤泥之清莲。使吾为之动容,心驰神往,以至茶饭不思,寝食难安,辗转反侧无法忘怀。于是乎紧衣缩食,凑齐银两,倾吾之所有而能买。东哥之热心、快递员之殷切,无不让人感激涕零,可谓迅雷不及掩耳盗铃儿响叮当仁不让世界充满爱。待打开包裹之时,顿时金光四射,屋内升起七彩祥云,处处皆是祥和之气。吾惊讶之余甚是欣喜若狂,呜呼哀哉!此宝乃是天上物,人间又得几回求!遂沐浴更衣,焚香祷告后与人共赏此宝。人皆赞叹不已,故生此宝物款型及做工,超高性价比之慨,且赞吾独具慧眼与时尚品位。产品介绍果然句句实言,毫无夸大欺瞒之嫌。实乃大家之风范,忠义之商贾!哈哈哈
评分
☆☆☆☆☆
吾消费京东商城数年,深知各产品琳琅满目。然,唯此宝物与众皆不同,为出淤泥之清莲。使吾为之动容,心驰神往,以至茶饭不思,寝食难安,辗转反侧无法忘怀。于是乎紧衣缩食,凑齐银两,倾吾之所有而能买。东哥之热心、快递员之殷切,无不让人感激涕零,可谓迅雷不及掩耳盗铃儿响叮当仁不让世界充满爱。待打开包裹之时,顿时金光四射,屋内升起七彩祥云,处处皆是祥和之气。吾惊讶之余甚是欣喜若狂,呜呼哀哉!此宝乃是天上物,人间又得几回求!遂沐浴更衣,焚香祷告后与人共赏此宝。人皆赞叹不已,故生此宝物款型及做工,超高性价比之慨,且赞吾独具慧眼与时尚品位。产品介绍果然句句实言,毫无夸大欺瞒之嫌。实乃大家之风范,忠义之商贾。
评分
☆☆☆☆☆
图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)图灵程序设计丛书:你不知道的JavaScript(上卷)
评分
☆☆☆☆☆
这本书非常不错很好