JavaScript是一种脚本语言,已广泛用于Web应用开发。本书就是一本引导读者深入学习JavaScript,并能成为JavaScript专家的书。
全书共10章,分别介绍了对象和原型、函数、闭包、术语、异步编程、JavaScript的IRL、编程风格、工作流程、代码质量、提高可测试性等内容。通过一系列内容和示例的讲解,本书进一步剖析了JavaScript的内部机制,为读者呈现更加全面的JavaScript。
本书适合有一定经验的JavaScript开发人员阅读,能够帮助读者更好地认识和运用JavaScript语言。
第1章对象和原型1
1.1鸟瞰JavaScript441
脚本设计2
1.2对象概述3
1.2.1对象化3
1.2.2原型编程20
1.3小结29
第2章函数30
2.1JavaScript中的代码块30
2.2小结44
第3章了解闭包45
3.1作用域的真相45
3.1.1理解this关键字46
3.1.2块级作用域48
3.2第一个闭包程序49
3.3为什么要用闭包50
对象工厂50
3.4小结53
第4章术语和俚语54
4.1Jargon.prototype=newSlang()54
什么是编程术语?55
4.2强转55
4.2.1转为String56
4.2.2转为数字56
4.2.3强转的陷阱57
4.3逻辑运算符61
4.3.1逻辑与(&&)61
4.3.2逻辑或(||)62
4.3.3逻辑非(!)62
4.4位变换65
4.4.1按位与(&)65
4.4.2按位或(|)67
4.4.3按位异或(;)68
4.4.4按位非(~~)69
4.4.5位移操作(<<,>>,>>>)69
4.5不易读代码71
4.5.1暗中的eval71
4.5.2各种进制71
4.5.3使用Unicode编码的变量72
4.5.4真正的WAT在这里72
4.6小结73
4.7补充参考资料74
第5章异步生活75
5.1理解JavaScript中的并发75
并发75
5.2理解JavaScript的事件循环77
5.2.1运行至完成77
5.2.2事件触发的设计77
5.2.3事件循环的内部77
5.3回调79
5.3.1感知性能80
5.3.2连续传递风格81
5.3.3回调地狱82
5.4Promise:从未来返回83
使用Promise84
5.5生成器和协程85
5.5.1生成器86
5.5.2协程的约定88
5.5.3可持续生成器89
5.6WebWorkers91
5.6.1并发91
5.6.2知道什么时候做一个工头91
5.6.3雇用worker92
5.7小结100
其他资源100
第6章JavaScript的IRL102
6.1硬件崇拜者日记102
6.1.1消防软管102
6.1.2每个人都可以玩的硬件103
6.1.3了解物理硬件103
6.2物理计算104
物联网105
6.3为什么要使用JavaScript105
6.3.1搭建桥梁106
6.3.2响应式编程范式106
6.4NodeBots:快速,廉价和伺服控制107
6.4.1REPL108
6.4.2为何要多此一举108
6.4.3前提条件109
6.4.4ArduinoIDE110
6.4.5Node串行端口112
6.4.6Firmata115
6.4.7Johnny—Five118
6.5Fauxbots123
6.6其他资源123
第7章风格124
7.1什么是风格124
7.2什么是编程风格125
7.2.1一致性125
7.2.2表达能力125
7.2.3简洁125
7.2.4约束性126
7.3JavaScript风格指南126
7.3.1视觉清晰度规则126
7.3.2计算效率规则134
7.4施行代码风格139
7.4.1Beautifiers139
7.4.2通过IDE执行140
7.5小结142
第8章工作流程144
8.1不要铲雪144
8.2什么是工作流程144
8.3合理的JavaScript开发流程145
8.4工具的选择145
8.4.1订购工具146
8.4.2依赖关系管理148
8.4.3保护升级路径149
8.5引导程序150
8.6开发153
CoffeeScript示例154
8.7测试157
8.7.1如何测试157
8.7.2Karma157
8.7.3PhantomJS159
8.7.4测试什么160
8.8构建163
8.8.1编译163
8.8.2分析163
8.8.3拼接163
8.8.4优化163
8.8.5测试164
8.8.6通知164
8.9支持164
8.9.1JavaScript中的错误报告165
8.9.2源码映射165
8.10小结165
第9章代码质量167
9.1定义代码质量167
9.1.1主观质量168
9.1.2客观质量168
9.2如何度量质量168
9.3为什么要度量代码质量169
9.4度量JavaScript代码质量170
静态代码分析170
9.5小结188
第10章提高可测试性189
10.1为什么测试无法测试189
10.1.1测试谬论190
10.1.2确认偏见193
10.2找到基线195
10.2.1语句覆盖196
10.2.2函数覆盖197
10.2.3分支覆盖197
10.2.4Istanbul198
10.2.5覆盖率偏见199
10.3偏见消除测试200
10.3.1模糊测试200
10.3.2JSCheck202
10.3.3自动测试206
10.4小结207
TheWebisincreasinglyhappeninginrealtime.WithsitessuchasFacebookandFriendFeedlead...
《清华时间简史:美术学院(110校庆)》内容简介:清华大学美术学院的前身是1956年成立的中央工艺美术学院,1999年并入清华大学,更
《Docker实践(第2版)》内容简介:本书由浅入深地讲解了Docker的相关内容,涵盖从开发环境到DevOps流水线,再一路到生产环境的整个
推荐系统技术.评估及高效算法 本书特色 本书主要介绍了国际市场营销环境、国际市场营销战略和国际市场营销策略。本书在第2版的基础上进行更新,具有如下特点:一是采取...
撰稿人毛丹青外号“阿毛”,中国国籍。北京大学毕业后进入中国社会科学院哲学所,1987年留日定居,做过鱼虾生意,当过商人,游历
◎中国工业圈“网红”,人民日报、新华社、工业评论、36氪特邀作者,千万级网络红文《闲话工业4.0六重天》作者兔哥主笔◎水月资本
《宗教与哲学的相遇》内容简介:本书从研究奥古斯丁和阿奎那的基督教哲学着手,着重探讨了基督教给哲学增加了什么新的东西。基督教
《时尚达人的服饰潮搭与网购指南》内容简介:本书是服饰穿搭与网购的指导手册。本书首先介绍了服装廓形、色彩及流行趋势,然后针对
《Java语言程序设计进阶篇》(原书第5版)的主要特点:基础篇介绍基础内容,进阶篇介绍高级内容,教师能够按需选择理想的教材。包括
PPT演示之道-写给非设计人员的幻灯片指南-第2版-畅销书升级版 本书特色 PPT设计好的两个重要原则:一目了然和视觉。由孙小小编著的《PPT演示之道——写给非...
《家装设计速通指南·居室风格详解》内容简介:本书对现代风格、工业风格、简约风格、古典中式风格、现代中式风格、欧式风格、乡村
ThelargestgroupwithanunsatisfieddemandforagoodbookonHTTPistheworldwidegroupofWeb...
Lookingforareliablewaytolearnhowtoprogramonyourown,withoutbeingoverwhelmedbyconf...
Websitedesignanddevelopmentcontinuestobecomemoresophisticated.Animportantpartoft...
《与共和国共成长:中国人民大学校友口述史(第二辑)》内容简介:2019年,我们将迎来中华人民共和国70周年华诞。自1937年成立以来
网页中的图形设计是在线内容用户体验的关键,尤其是现在的用户会使用多种设备访问网页,如智能手机、平板电脑、笔记本电脑、桌面
《图解电子学入门》内容简介:本套丛书系引进欧姆社版权翻译出版的中文版图书。它基本涵盖了有关电子学方面的全部知识。内容简洁
《法治建设新天地》内容简介:本书从改革开放40年党和国家发展大局的总体高度出发,对改革开放40年中国法治建设的理论与实践做了系
作者简介:SimonBrown全球知名软件架构独立咨询师、讲师,创办了专门讨论软件架构问题的网站“编码架构”(codingthearchitectur
EyetrackingWebUsabilityisbasedononeofthelargeststudiesofeyetrackingusabilityinex...