内容简介 · · · · · ·
本书不仅帮助读者迅速掌握JavaScript基础知识和核心技术,而且通过实例讲解如何将这些知识和技术理解应用到实际工作中,提升编程能力,以简洁、优美的代码开发出功能强大且更易于维护和扩展的应用程序。
全书共16章和两个附录,可以分为两个部分。第一部分包括第1章到第7章,侧重介绍JavaScript语言的核心概念,为读者学习后续内容打下牢固基础;这部分介绍了JavaScript的对象、函数、数组、正则表达式、闭包等主题,以及相关的重要知识点。 第二部分包括第8章到第16章,着重讨论了JavaScript支持的编程范式、核心概念的延伸、JavaScript的前端开发框架、测试框架、JavaScript引擎、JavaScript在Java,C、C++等应用中的使用,以及服务器端的JavaScript应用。这部分内容更注重实例,帮助读者将核心概念引用...
本书不仅帮助读者迅速掌握JavaScript基础知识和核心技术,而且通过实例讲解如何将这些知识和技术理解应用到实际工作中,提升编程能力,以简洁、优美的代码开发出功能强大且更易于维护和扩展的应用程序。
全书共16章和两个附录,可以分为两个部分。第一部分包括第1章到第7章,侧重介绍JavaScript语言的核心概念,为读者学习后续内容打下牢固基础;这部分介绍了JavaScript的对象、函数、数组、正则表达式、闭包等主题,以及相关的重要知识点。 第二部分包括第8章到第16章,着重讨论了JavaScript支持的编程范式、核心概念的延伸、JavaScript的前端开发框架、测试框架、JavaScript引擎、JavaScript在Java,C、C++等应用中的使用,以及服务器端的JavaScript应用。这部分内容更注重实例,帮助读者将核心概念引用到实际工作中。附录A介绍了一些常用JavaScript技巧;附录B简单介绍了jQuery并给出了一个应用实例。
本书可以供JavaScript初学者阅读,以快速学习和掌握这门语言的核心内容:对于有一定经验的JavaScript程序员,则可以通过本书加深和拓展对JavaScript的认识,提升应用开发能力。
作者简介 · · · · · ·
邱俊涛,ThoughtWorks软件工程师。喜欢编程,尤其喜欢编程带来的成就感。对动态语言、函数式编程等有浓厚的兴趣。喜欢开源软件,喜欢知识分享,并从他人的分享中学习。崇尚简单、轻量的设计和模式。个人主页:http://icodeit.org。微博:@正反反长。
目录 · · · · · ·
第1章 概述 1
1.1 JavaScript简史 1
1.1.1 动态网页 1
1.1.2 浏览器之战 2
1.2 JavaScript语言特性 3
1.2.1 动态性 3
1.2.2 弱类型 5
1.2.3 面向对象 6
1.2.4 解释与编译 7
1.3 JavaScript应用范围 7
1.3.1 客户端JavaScript 7
1.3.2 服务器端JavaScript 10
1.3.3 其他应用中的JavaScript 12
第2章 基本概念 16
2.1 数据类型 16
2.1.1 数据类型 16
2.1.2 对象类型 17
2.1.3 基本类型与对象间的转换 18
2.1.4 类型的判断 20
2.2 变量 21
2.2.1 基本类型和引用类型 21
2.2.2 变量的作用域 22
2.3 运算符 23
2.3.1 中括号运算符([]) 23
2.3.2 点运算符(.) 24
2.3.3 相等与等同运算符 25
第3章 对象 28
3.1 JavaScript对象 28
3.1.1 对象的属性 29
3.1.2 属性与变量 29
3.1.3 原型对象及原型链 30
3.1.4 this指针 32
3.2 使用对象 33
3.3 对象字面量 34
3.4 JSON 36
第4章 函数 38
4.1 函数对象 38
4.1.1 创建函数 38
4.1.2 函数的参数 40
4.2 函数作用域 41
4.2.1 词法作用域 41
4.2.2 调用对象 43
4.3 函数上下文 44
4.4 call和apply 44
4.5 使用函数 45
4.5.1 赋值给一个变量 45
4.5.2 赋值为对象的属性 46
4.5.3 作为参数传递 46
4.5.4 作为函数的返回值 47
第5章 数组 48
5.1 数组的特性 48
5.2 使用数组 50
5.2.1 数组的基本方法使用 50
5.2.2 删除数组元素 53
5.2.3 遍历数组 55
第6章 正则表达式 57
6.1 正则表达式基础概念 57
6.1.1 元字符与特殊字符 58
6.1.2 范围及重复 58
6.1.3 分组与引用 61
6.2 使用正则表达式 62
6.2.1 创建正则表达式 62
6.2.2 String中的正则表达式 64
6.3 实例:JSFilter 65
第7章 闭包 67
7.1 闭包的特性 67
7.2 闭包的用途 69
7.2.1 匿名自执行函数 69
7.2.2 缓存 70
7.2.3 实现封装 71
7.3 应该注意的问题 72
7.3.1 内存泄漏 72
7.3.2 上下文的引用 73
第8章 面向对象的JavaScript 75
8.1 原型继承 75
8.1.1 引用 77
8.1.2 new操作符 78
8.2 封装 79
8.3 工具包Base 80
8.4 实例:事件分发器 83
第9章 函数式的JavaScript 92
9.1 匿名函数 93
9.2 高阶函数 93
9.2.1 JavaScript中的高阶函数 94
9.2.2 C语言中的高阶函数 95
9.2.3 Java中的高阶函数 96
9.3 闭包与柯里化 97
9.3.1 柯里化的概念 98
9.3.2 柯里化的应用 98
9.4 一些例子 99
9.4.1 函数式编程风格 99
9.4.2 Y-结合子 101
9.4.3 其他实例 103
第10章 核心概念深入 104
10.1 原型链 104
10.1.1 原型对象与原型链 104
10.1.2 构造器 107
10.2 执行期上下文 108
10.3 活动对象 111
10.4 作用域链 111
10.5 this值 113
10.5.1 词法作用域 113
10.5.2 this的上下文 114
第11章 客户端的JavaScript 116
11.1 客户端JavaScript执行环境 116
11.2 文档对象模型(DOM) 117
11.3 事件驱动模型 118
11.4 与服务器端交互(Ajax) 119
11.5 调试 122
11.5.1 FireFox 122
11.5.2 Chrome 124
11.6 客户端的MVC 126
11.7 JavaScript/Ajax框架 128
第12章 客户端的MVC框架:Backbone.js 130
12.1 Backbone背景简介 130
12.1.1 Backbone模型 131
12.1.2 Backbone集合 132
12.1.3 Backbone视图 133
12.1.4 Backbone路由 134
12.2 Backbone实例1:使用客户端本地存储 135
12.2.1 客户端存储 135
12.2.2 运行结果 136
12.2.3 数据模型 137
12.2.4 视图及模板 137
12.3 Backbone实例2:与服务器端交互 141
12.3.1 后台服务 141
12.3.2 客户端代码修改 142
第13章 JavaScript测试 144
13.1 单元测试框架QUnit 144
13.1.1 QUnit简介 144
13.1.2 QUnit示例 144
13.2 Jasmine 150
13.2.1 Jasmine基本概念 151
13.2.2 Jasmine的spy 155
13.2.3 Jasmine 实例 159
13.2.4 测试复杂的场景 162
第14章 JavaScript引擎 165
14.1 使用SpiderMonkey 165
14.1.1 SpiderMonkey简介 165
14.1.2 JavaScript对象与C对象间的转换关系 166
14.1.3 基本代码模板 167
14.1.4 执行JavaScript代码 170
14.1.5 C程序调用JavaScript函数 172
14.1.6 JavaScript程序调用C函数 173
14.1.7 在C程序中定义JavaScript对象 175
14.2 SpiderMonkey的实现简介 177
14.2.1 虚拟机概述 177
14.2.2 SpiderMonkey体系结构 177
14.2.3 jsval类型 178
14.2.4 对象 179
14.3 V8引擎概览 179
14.3.1 V8引擎基本概念 179
14.3.2 V8引擎使用示例 181
14.3.3 使用C++变量 181
14.3.4 调用C++函数 183
14.3.5 使用C++类 184
第15章 Java应用中的JavaScript 188
15.1 脚本化基础 188
15.2 使用Rhino引擎 189
15.2.1 直接对脚本求值 189
15.2.2 传递Java对象 190
15.2.3 调用脚本内的函数 191
15.2.4 在脚本中使用Java资源 193
15.2.5 实现Java接口 194
15.3 实例:sTodo 195
15.3.1 sTodo简介 195
15.3.2 sTodo的插件机制 197
15.3.3 sTodo中的脚本 199
15.4 实例:可编程计算器phoc 201
15.4.1 phoc简介 201
15.4.2 phoc中的脚本 203
第16章 服务器端的JavaScript 207
16.1 node.js 207
16.1.1 node.js简介 207
16.1.2 node.js 使用示例 208
16.1.3 node.js实例 211
16.1.4 使用Jasmine测试 215
16.2 CouchDB 217
16.2.1 CouchDB简介 217
16.2.2 CouchDB使用 218
16.2.3 CouchDB实例 220
16.3 MongoDB 227
16.3.1 基本操作 227
16.3.2 map/reduce 230
附录A 一些JavaScript技巧 232
A.1 创建对象 232
A.2 访问对象的属性 232
A.3 遍历对象 233
A.4 名称空间 234
附录B 前端JavaScript框架:jQuery 236
B.1 jQuery简介 236
B.2 jQuery基础 239
B.2.1 jQuery选择器 239
B.2.2 对DOM的操作 241
B.2.3 对CSS的操作 242
B.2.4 事件处理 244
B.2.5 实用函数 246
B.3 jQuery实例 247
· · · · · · (收起)
喜欢读"JavaScript核心概念及实践"的人也喜欢的电子书 · · · · · ·
喜欢读"JavaScript核心概念及实践"的人也喜欢 · · · · · ·
-
- Clojure程序设计 7.5
-
- 编写可维护的JavaScript 8.1
-
- UNIX系统编程 8.6
-
- HTML5经典实例 8.4
-
- Unix内核源码剖析 8.0
-
- C语言接口与实现 8.2
-
- jQuery实战 7.9
JavaScript核心概念及实践的书评 · · · · · · ( 全部 3 条 )

一本难得的、完全原创的专著

从更大的视角看待JavaScript
> 更多书评 3篇
论坛 · · · · · ·
在这本书的论坛里发言在哪儿借这本书 · · · · · ·
以下书单推荐 · · · · · · ( 全部 )
- web前端工程师读书单 (小王)
- Full Stack Web Developer (小镇)
- 前端 (cowboy)
- JavaScript (whg)
- ThoughtWorks的书 (透明)
谁读这本书? · · · · · ·
二手市场
· · · · · ·
订阅关于JavaScript核心概念及实践的评论:
feed: rss 2.0
0 有用 Yuanjie 2016-10-19 15:43:10
书中的知识点比较全面,讲解也很到位。 下面是自己简单梳理的内容: JavaScript是动态语言、弱类型、基于原型的 JavaScript的MVC模式,降低整个前端开发端的耦合度,提高事个前端的开发效率。Backbone.js框架 单元测试框架:QUnit,Jasmine:测试框架,支持BDD
0 有用 小小 2014-07-02 20:48:38
新手值得一读
0 有用 风声 2014-12-05 17:12:07
这本书还是不错的。没有从基础语法开始介绍,介绍的真正是“核心概念”,看得出是作者的经验总结。另外,实践部分介绍了一些框架与库,虽然不是很详细,但对他们也能有个大体的认识,知道他们是干什么用的。 对 Ch06(正则表达式),CH12(客户端的MVC框架 Backbone.js),Ch13(单元测试框架QUnit和Sasmine),Ch15(Java应用中的JavaScript),Ch16(服务器端的... 这本书还是不错的。没有从基础语法开始介绍,介绍的真正是“核心概念”,看得出是作者的经验总结。另外,实践部分介绍了一些框架与库,虽然不是很详细,但对他们也能有个大体的认识,知道他们是干什么用的。 对 Ch06(正则表达式),CH12(客户端的MVC框架 Backbone.js),Ch13(单元测试框架QUnit和Sasmine),Ch15(Java应用中的JavaScript),Ch16(服务器端的JavaScript Node.js),附录B(前段JavaScript框架 jQuery)。只大概浏览了一下,具体实例没有阅读,感觉这些内容,在需要的时候可以找专门的书籍阅读,可能介绍的更详细。 (展开)
0 有用 小修奥良 2015-10-21 20:03:21
首先作者很帅,其次书中章节划分也不错。但是仔细一看,会发现里面有很多的印刷错误,感觉校对工作很欠缺;某些知识点的讲解不够清晰,深入。
1 有用 2015-12-09 20:05:21
http://abruzzi.iteye.com/blog/646947
1 有用 正和 2018-01-29 11:47:22
邱老师,偶像
0 有用 Yuanjie 2016-10-19 15:43:10
书中的知识点比较全面,讲解也很到位。 下面是自己简单梳理的内容: JavaScript是动态语言、弱类型、基于原型的 JavaScript的MVC模式,降低整个前端开发端的耦合度,提高事个前端的开发效率。Backbone.js框架 单元测试框架:QUnit,Jasmine:测试框架,支持BDD
1 有用 2015-12-09 20:05:21
http://abruzzi.iteye.com/blog/646947
0 有用 小修奥良 2015-10-21 20:03:21
首先作者很帅,其次书中章节划分也不错。但是仔细一看,会发现里面有很多的印刷错误,感觉校对工作很欠缺;某些知识点的讲解不够清晰,深入。
0 有用 风声 2014-12-05 17:12:07
这本书还是不错的。没有从基础语法开始介绍,介绍的真正是“核心概念”,看得出是作者的经验总结。另外,实践部分介绍了一些框架与库,虽然不是很详细,但对他们也能有个大体的认识,知道他们是干什么用的。 对 Ch06(正则表达式),CH12(客户端的MVC框架 Backbone.js),Ch13(单元测试框架QUnit和Sasmine),Ch15(Java应用中的JavaScript),Ch16(服务器端的... 这本书还是不错的。没有从基础语法开始介绍,介绍的真正是“核心概念”,看得出是作者的经验总结。另外,实践部分介绍了一些框架与库,虽然不是很详细,但对他们也能有个大体的认识,知道他们是干什么用的。 对 Ch06(正则表达式),CH12(客户端的MVC框架 Backbone.js),Ch13(单元测试框架QUnit和Sasmine),Ch15(Java应用中的JavaScript),Ch16(服务器端的JavaScript Node.js),附录B(前段JavaScript框架 jQuery)。只大概浏览了一下,具体实例没有阅读,感觉这些内容,在需要的时候可以找专门的书籍阅读,可能介绍的更详细。 (展开)