具体描述
本书由资深软件开发专家撰写,凝聚其多年开发经验,系统、深入、全面地阐释JavaScript,内容涉及流行的Web开发实践,结合实际案例进行讲解,授人以渔。
本书内容并不局限于某个具体功能的使用方法,而是系统深入地讲解JavaScript的本质与结构,清晰阐释ECMAScript、DOM和BOM三部分内容的关系及重要性,以帮助开发人员全面深入了解前端开发技术。本书讲解的内容通俗易懂、深入浅出,特别是书中所用示例的设计,它们不仅可以让读者理解某个知识点的用法,更能让读者明白具体知识点所使用的场景,从而更深入地理解具体内容。
本书内容安排合理,架构清晰,注意理论与实践相结合,适合那些希望学习Web编程语言的初、中级程序员和希望精通JavaScript的程序员阅读。
作者简介
目录信息
第1章 JavaScript怎么学 2
1.1 三种学习方法 2
1.2 JavaScript的学习方法 3
第2章 JavaScript简介 6
2.1 ECMAScript概述 7
2.2 DOM概述 8
2.3 BOM概述 8
2.4 HTML5概述 9
第3章 JavaScript的本质 10
3.1 工具介绍 10
3.2 JavaScript的结构 15
3.3 JavaScript的内存模型 17
第4章 function类型对象 20
4.1 创建function 20
4.2 用作对象 23
4.3 处理业务 23
4.4 创建对象 49
4.5 三种子类型 57
第5章 object类型对象 62
5.1 创建object类型对象的三种方式 62
5.2 对象的属性 66
5.3 属性的描述 74
第6章 直接量及其相关对象 79
6.1 直接量的保存方式 79
6.2 直接量的封包与解包 80
6.3 直接量的包装对象 81
第7章 点运算符与this关键字 90
7.1 点运算符 90
7.2 this的含义 90
7.3 关联方法后的this 91
7.4 内部函数中的this 91
7.5 对象的属性不可以继承 93
第8章 Global与Window对象 94
8.1 Global对象 94
8.2 Window对象的特殊性 94
第二篇 ECMAScript 2015中的新特性
第9章 类 98
9.1 新类型class 98
9.2 class的用法 98
第10章 模块 100
10.1 模块的基本用法 100
10.2 导入后重命名 101
10.3 默认导出 102
10.4 导入为命名空间 103
10.5 打包导出 103
第11章 新增语法 105
11.1 let和const 105
11.2 字符串模板 106
11.3 函数参数默认值 106
11.4 参数扩展 107
11.5 箭头函数 107
11.6 for-of遍历 108
第12章 新增对象 111
12.1 Symbol 111
12.2 容器对象 112
12.3 缓存对象 121
12.4 异步处理 128
12.5 GeneratorFunction和Generator 132
12.6 反射与代理 134
第13章 原有对象的新增属性 140
13.1 Object 140
13.2 String 143
13.3 Number 150
13.4 Array 150
13.5 Math 154
13.6 RegExp 155
第三篇 DOM
第14章 DOM概述 162
14.1 DOM标准的结构 162
14.2 DOM标准的特点 163
第15章 DOM核心 164
15.1 文档对象 164
15.2 异常对象 177
15.3 辅助对象 178
第16章 DOM中的HTML标准 182
16.1 HTMLCollection 182
16.2 HTMLOptionsCollection 184
16.3 HTMLDocument 184
16.4 HTMLElement 186
第17章 DOM事件 187
17.1 事件流 187
17.2 EventTarget 189
17.3 EventListener 190
17.4 Event 190
17.5 DOM0级事件 199
第18章 DOM样式和视图 201
18.1 Views 201
18.2 StyleSheets 202
18.3 CSS 204
第19章 DOM遍历和范围 215
19.1 遍历 215
19.2 范围 219
第四篇 BOM
第20章 window对象 228
20.1 窗口、框架相关属性 228
20.2 窗口操作相关属性 230
20.3 弹出窗口相关属性 231
20.4 浏览器对象相关属性 231
20.5 定时器相关属性 231
20.6 其他属性 234
第21章 location对象 235
21.1 8个读写属性 235
21.2 三个方法属性 237
第22章 其他对象 238
22.1 history对象 238
22.2 navigator对象 238
第五篇 HTML5
第23章 本地存储 242
23.1 本地存储的分类 242
23.2 Storage存储 243
23.3 StorageEvent 245
23.4 IndexedDB数据库 248
第24章 canvas作图 271
24.1 绘制矩形 272
24.2 绘制路径 274
24.3 组合与剪切 282
24.4 坐标检测 285
24.5 修改颜色和样式 286
24.6 插入文本 290
24.7 插入图片 292
24.8 环境的保存和恢复 292
24.9 移动坐标原点 293
24.10 旋转坐标系 294
24.11 缩放 295
24.12 自由转换 297
24.13 阴影 298
24.14 动画 299
24.15 游戏 300
第25章 WebSocket 306
25.1 网络传输的原理和底层协议 306
25.2 WebSocket简介 307
25.3 WebSocket的优势 308
25.4 基本应用 308
25.5 RESTful应用 312
25.6 在线聊天系统 313
25.7 传输对象和二进制数据 318
第26章 多线程处理 335
26.1 单线程与多线程的概念 335
26.2 线程与进程的概念 337
26.3 JavaScript中的多线程 338
第27章 获取位置信息 347
27.1 geolocation对象 347
27.2 Position接口 348
27.3 PositionError接口 349
27.4 PositionOptions接口 350
27.5 显示到地图上 353
第28章 富文本编辑器与公式编辑器 356
28.1 富文本编辑器的原理 356
28.2 公式编辑器 364
第29章 总结 380
29.1 ECMAScript 380
29.2 DOM和BOM 381
29.3 HTML5 382
附录 ExcelibIDB源代码 384
· · · · · · (收起)
读后感
用户评价
这本书的结构松散得让人心焦。它更像是一本技术博客的合集,被强行装订成册。每个章节之间的关联性微乎其微,仿佛作者写完一个点子就立刻扔掉了,赶着去挖掘下一个不相干的热点。我试着从头到尾按顺序阅读,结果发现自己像是在一个巨大的信息集市上游荡,到处都是叫卖声,却没有一家是真正提供稳定货源的。没有明确的章节导引,没有清晰的知识点递进关系,你很难建立起一个稳固的知识体系框架。如果我只想深入了解异步编程,翻开相关章节,里面可能混杂着一些关于性能调优的无关代码片段。如果你希望通过这本书构建起对这门语言的整体认知,这本书提供的只会是无数个孤立的、漂浮着的知识点,它们之间缺乏必要的连接件,无法形成一个坚固的桥梁。这种阅读体验,实在是对时间的一种无情消耗。
这本书的排版简直是一场视觉灾难,字体选择古板不说,段落之间的留白也少得可怜,让人在阅读时总有种喘不过气的感觉。更别提那些插图,模糊不清的截图和过时的图表,完全无法起到辅助理解的作用,反而让人分神。我本来是冲着一个“新锐”的视角来的,结果拿到的却是像从上个世纪的杂志上撕下来的内容。而且,书中对于一些关键概念的解释,总是那种蜻蜓点水式的,你以为快要触及核心了,结果笔锋一转就跑到了不相干的八卦上。那种“我知道很多,但我就不告诉你”的态度,对于一个渴望系统学习的读者来说,简直是最大的折磨。我花了大量时间试图在这些看似丰富的文字中梳理出一条清晰的学习路径,结果发现自己只是在走一个巨大的迷宫,出口遥遥无期。如果这本书真的想在技术类图书市场占有一席之地,光有内容堆砌是远远不够的,外在的呈现和内在逻辑的严谨性才是决定性的因素。
书中对于版本迭代的追踪工作做得非常不到位。许多代码示例,尤其是依赖于特定运行时环境或第三方库的部分,明显已经过时了。我花费了宝贵的时间去尝试运行那些代码块,结果不是报错就是警告,最后不得不花费更多时间去查阅官方文档,将书中的示例“考古”修复。这种错误带来的挫败感,远超出了我能从书中获取的任何微小知识点。一个关于现代编程语言的教程,如果不能跟上其生态系统的发展步伐,那么它的存在价值就大打折扣了。我需要的不是一本历史资料集,而是一本能指导我当前项目实践的工具书。这种对细节的疏忽,让人不禁怀疑作者在撰写过程中,是否真正进行了充分的实践验证,或者只是停留在理论构想的层面。对于一个追求精确和高效的开发者来说,这样的不负责任是无法容忍的。
我得说,作者在某些章节的处理上表现出了惊人的跳跃性思维,但这种“跳跃”很多时候更像是“失联”。比如,前一页还在深入探讨闭包的底层机制,分析引用计数和标记清除的微妙差异,下一页突然就跳到了如何使用某个框架的最新特性去“优雅地”解决一个前端的UI问题。这种上下文的错位感,让我的阅读体验极其割裂。就好比你在看一个精密的机械构造图,突然被要求想象一下这台机器的主人喜欢什么颜色的汽车。技术深度与应用浅显的结合,本来是好事,但这里明显失衡了。更令人困惑的是,书中对一些已经被社区公认为“反模式”的写法,居然还用一种近乎推崇的口吻来描述,并声称这是“另辟蹊径”的解决方案。对于新手来说,这无疑是埋下了巨大的认知陷阱,而对于老手而言,这又显得既不专业又不负责任。我感觉作者似乎更热衷于展示自己知道“很多不同的东西”,而不是专注于把一个主题“讲明白”。
坦白讲,这本书的语言风格过于口语化,甚至有些许的傲慢。很多地方的表述,与其说是技术讲解,不如说是作者在向读者“炫耀”自己的经验。诸如“稍微有点脑子的人都知道……”或者“这个问题只有初学者才会纠结……”这类充满评判性的语句,极大地降低了阅读的亲和力。技术书籍的价值在于引导和启发,而非居高临下的教导。我购买技术书籍,是为了学习一种严谨的思维模式,而不是来听一位“资深前辈”的训斥。此外,书中频繁使用网络热词和模因(meme),虽然在某些语境下或许能活跃气氛,但在严肃的技术论述中,它们显得格格不入,并且注定会随着时间的推移而迅速过时,大大削弱了书籍的长期参考价值。我期待的是一种经得起时间考验的、扎实的论述,而不是一时的潮流追逐。
解析的很彻底,我看过的最好的JavaScript书,不建议0基础小白 第二篇将ES6 的部分很浅,我是看完《深入理解ES6》再来看这篇的,之前都是跳过看后面的章节的 大致看完《深入理解ES6》看这第二篇,在对照地翻ES6算是巩固吧
当时在书店看了几页就决定买了很好的书
当时在书店看了几页就决定买了很好的书
解析的很彻底,我看过的最好的JavaScript书,不建议0基础小白 第二篇将ES6 的部分很浅,我是看完《深入理解ES6》再来看这篇的,之前都是跳过看后面的章节的 大致看完《深入理解ES6》看这第二篇,在对照地翻ES6算是巩固吧
解析的很彻底,我看过的最好的JavaScript书,不建议0基础小白 第二篇将ES6 的部分很浅,我是看完《深入理解ES6》再来看这篇的,之前都是跳过看后面的章节的 大致看完《深入理解ES6》看这第二篇,在对照地翻ES6算是巩固吧