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
信息技术和电气工程学科国际知名教材中译本系列。目录 译者的话原序第1章引言1.1无线通信时代的到来1.2蜂窝革命1.3全球蜂窝网络
《周恩来与人民代表大会制度》内容简介:本书是淮安市人民代表大会常务委员会办公室组织编写的党建历史类著作,从史实考证的角度,
系统集成项目管理工程师掌中宝 本书特色 全书采用32开本,书藉可装入您的口袋,便于随身携带;正文全用小五号字体,版式精美,印刷清晰;书中知识点全,覆盖整个考试大...
《原来历史可以这样好玩2》内容简介:超涨知识!爆笑趣味学历史!超生动、超立体、超有趣再现历史场景! 百万美食播主小缸和阿灿首
這是一趟有錢也買不到的日本設計之旅!本書直擊博報堂、SAMURAI等目前日本超夯的廣告設計公司,深入設計師們的工作現場,訪問當今
《DTPWORLD》隶属于日本WorksCorporationInc.。这是一家以研究和推广计算机应用与数位媒体印刷设计的专业出版社,旗下包括《CGWo
學會大師的穿搭品味原來服裝設計師,這樣想、這樣看時尚業入行know-how,不去紐約,就能學到美國服裝產業的潛規則、真技術看完本
《智能工程》内容简介:全书共10章分别从构建非生物智能体、感知、描述、连接、记忆和理解、学习与交互、智能体运算模式与处理功能
《鲁迅信札藏笺》内容简介:邹晏清、詹秋洁两位上海鲁迅纪念馆研究人员编著的这册《鲁迅信札藏笺》,通过原件展示,解读鲁迅的亲笔
《蒋丰看日本:说说十大日本侵华人物》内容简介:本书第一次全方位地掀开二战期间东条英机等甲级战犯及其他侵华人物的成长面纱,揭露
《AcceleratedC++中文版》给人的印象会如此深刻呢?这是因为:●它一开始就向读者教导那些最有用的概念,而不是那些简单的注释读者
Excel 2013高效办公财务管理-(附光盘) 本书特色 《excel 2013高效办公——财务管理》以excel 2013在财务管理...
《元宇宙超入门》内容简介:我们每天都在数字化生活之中。元宇宙,是数字化经济与生活的终极形态。元宇宙=实体世界数字世界。临界点
《布克·华盛顿与杜波依斯的思想之争及其对非裔政治领袖的影响(英文版)》内容简介:20世纪初,布克·华盛顿与杜波依斯就非裔美国
《活着,本该有趣》内容简介:“中国人的生活意趣”系列精选老舍、汪曾祺和丰子恺的散文代表作130篇,在一篇篇历经时间淘洗的优美散
《PHP+MySQL程序设计实例讲座》以深入浅出的讲解引导您熟悉PHP的语法,针对文件访问、GD绘图与图片处理、表单、Cookie、Session、
交互设计 本书特色 《交互设计》共7章内容,以移动端app开发流程为框架,以交互设计原理为内容进行app设计开发。主要论述了移动端app设计与用户体验,移动端a...
2009上半年试题分析与解答 本书特色 《2009上半年试题分析与解答》根据人力资源和社会保障部、工业和信息化部文件,计算机技术与软件专业技术资格(水平)考试纳...
高光谱遥感影像分类与支持向量机应用研究 本书特色 杜培军、谭琨、夏俊士编著的《高光谱遥感影像分类与支持向量机应用研究》从高光谱遥感影像的特点出发,针对高光谱遥感...
《婚恋清醒指南》内容简介:◆给所有女生的婚恋清醒指南,手把手教你看清亲密关系的底层逻辑,别在该动脑子的时候动感情。拒绝“恋