
JavaScript遵循的ECMAScript标准在ECMAScript第6版(ES 6)之后有了大幅变化,尤其在变量声明、语法优化、解构赋值及非同步技术方面都有令人惊艳的新功能。
本书分为两部分,共16章。第一部分(第1~9章)为JavaScript精要,内容主要包括:认识JavaScript,JavaScript基础语法,流程控制结构,JavaScript内建的标准对象,集合对象,函数与作用域,对象、方法与属性,RegExp对象、异步与事件循环。第二部分(第10~16章)为JavaScript在Web程序的应用,内容主要包括:认识HTML、认识CSS、JavaScript与HTML DOM、JavaScript事件与事件处理、前端数据存储、JavaScript在多媒体的应用、网页保护密技与记忆力考验游戏。
本书适合JavaScript初学者、网页程序设计相关从业人员、大专院校网页程序设计相关专业的师生阅读。
前 言
JavaScript具有易学、快速、功能强大的特点,是开发网页程序时被广泛使用的程序设计语言,在目前大部分的网页程序中都可以发现JavaScript的踪迹。另外,大部分的浏览器都支持JavaScript,而且它的语法不断推陈出新,功能越来越强大。由于JavaScript可以配合HTML及CSS设计出动态网页,正好弥补HTML的缺憾,使得JavaScript成为制作网页不可或缺的一部分。
一般传统的观念认为设计程序是计算机高手才会的工作,因而望之却步,不敢轻易尝试,宁愿选择从网络上复制现有的JavaScript程序来使用,顺利执行还好,不顺利的话只能放弃,继续在浩瀚的网海寻觅合适的程序。如果能够学会JavaScript,就可以自己编写合用的程序,即使取得他人开源的程序代码也能够看得懂,并找出导致程序无法执行的错误或缺陷。本书尽量以浅显易懂的叙述,让读者了解其实JavaScript是很容易学习的程序设计语言,经过适当的学习,自己完全可以动手来编写程序。
事实上,只学习JavaScript语言尚无法在网页前端技术上如鱼得水,还必须具备HTML DOM模型概念与CSS语言知识,才算具备网页前端工程师的基本技能,本书除了详细解说 JavaScript语言,同时也加入了HTML DOM与CSS的教学与应用。
由于JavaScript程序是在客户端执行的,因此可以在后端数据库进行存取之前的数据验证的协助工作,这样可以大大降低服务器的负担,这也是网页程序设计人员爱用JavaScript开发网页程序的主要原因。
本书每章在编写程序之前都先介绍概念、原理及其功能,紧接着佐以实例操作,以循序渐进的方式说明JavaScript语言的语法,让读者可以将语法与实践相结合。
本书内容力求完善翔实,但疏漏在所难免,敬请读者多多指正、包涵。
陈婉凌
目 录
第一部分 JavaScript精要
第1章 认识JavaScript 3
1.1 JavaScript的特色与用途 3
1.1.1 JavaScript的基本概念 3
1.1.2 JavaScript的用途 5
1.2 设置JavaScript开发环境 8
1.2.1 JavaScript运行环境 8
1.2.2 如何选择文本编辑器 12
1.2.3 纯文本编辑器Notepad++ 16
1.2.4 浏览器控制台 26
第2章 JavaScript基础语法 34
2.1 语法架构 34
2.2 变量与数据类型 39
2.2.1 数据类型 39
2.2.2 变量声明与作用域 43
2.2.3 强制转换类型 49
2.3 表达式与运算符 51
第3章 流程控制结构 59
3.1 选择结构 59
3.1.1 if…else条件语句 59
3.1.2 switch…case语句 62
3.2 重复结构 66
3.2.1 for 循环 66
3.2.2 for…in循环 67
3.2.3 forEach与for…of循环 69
3.2.4 while循环 71
3.2.5 do…while循环 72
3.2.6 break 和continue语句 73
3.3 错误与异常处理 75
3.3.1 错误类型 75
3.3.2 异常处理 77
第4章 JavaScript内建的标准对象 80
4.1 日期对象 80
4.1.1 对象的属性与方法 80
4.1.2 日期对象 83
4.2 字符串对象与数值对象 84
4.2.1 字符串对象 84
4.2.2 模板字符串 92
4.2.3 数值对象 96
4.2.4 数学运算对象 102
第5章 集合对象 109
5.1 数组 109
5.1.1 声明数组对象 109
5.1.2 数组的属性与方法 112
5.1.3 数组的迭代方法 116
5.2 Map对象与Set对象 121
5.2.1 Map对象 121
5.2.2 Set对象 123
第6章 函数与作用域 125
6.1 自定义函数 125
6.1.1 函数的定义与调用 125
6.1.2 函数参数 126
6.1.3 函数返回值 128
6.2 函数的多重用法 129
6.2.1 函数声明 130
6.2.2 函数表达式 130
6.2.3 立即调用函数表达式 133
6.2.4 箭头函数与this 135
6.2.5 作用域链与闭包 136
第7章 对象、方法与属性 140
7.1 对象的基本概念 140
7.1.1 认识面向对象 140
7.1.2 JavaScript的面向对象 143
7.2 JavaScript三大对象 145
7.2.1 JavaScript的对象 145
7.2.2 用户自定义对象 145
7.2.3 this关键字 147
7.3 原型链与扩展 148
7.3.1 原型链 149
7.3.2 扩展 150
7.3.3 ES 6的扩展 153
第8章 RegExp对象 156
8.1 认识正则表达式 156
8.1.1 正则表达式 156
8.1.2 建立正则表达式 157
8.2 使用RegExp对象 161
8.2.1 RegExp对象的属性 162
8.2.2 字符串提取与分析 164
8.2.3 常用的正则表达式 167
第9章 异步与事件循环 169
9.1 认识同步与异步 169
9.1.1 同步与异步的概念 169
9.1.2 定时器:setTimeout()与setInterval() 171
9.1.3 事件循环 174
9.2 异步流程控制 176
9.2.1 Callback异步调用 176
9.2.2 使用Promise对象 178
第二部分 JavaScript在Web程序的应用
第10章 认识HTML 185
10.1 HTML的基本概念 185
10.1.1 HTML架构 185
10.1.2 HTML 5声明与编码设置 187
10.2 HTML常用标签 188
10.2.1 文字格式与排版相关标签 188
10.2.2 项目列表 191
10.2.3 表格 193
10.2.4 插入图片 196
10.2.5 超链接 198
10.2.6 框架 200
10.2.7 窗体与窗体组件 203
10.3 div标签与span标签 207
10.3.1 认识div标签 207
10.3.2 认识span标签 208
第11章 认识CSS 210
11.1 使用CSS样式表 210
11.1.1 套用CSS 210
11.1.2 CSS选择器 213
11.2 CSS样式语法 216
11.2.1 文字与段落样式 216
11.2.2 颜色相关样式 220
11.2.3 背景图案 224
11.2.4 边框 224
11.2.5 图文混排 225
11.3 掌握CSS定位 228
11.3.1 网页组件的定位 228
11.3.2 立体网页的定位 232
11.3.3 calc()函数 234
第12章 JavaScript与HTML DOM 236
12.1 文档对象模型 236
12.1.1 DOM简介 236
12.1.2 DOM的节点 237
12.1.3 获取对象信息 237
12.1.4 处理对象节点 239
12.1.5 属性的读取与设置 241
12.2 DOM对象的操作 243
12.2.1 Window对象 243
12.2.2 DOM集合 244
12.3 DOM风格样式 246
12.3.1 查询元素样式 246
12.3.2 设置组件样式 248
第13章 JavaScript事件与事件处理 251
13.1 事件与事件处理程序 251
13.1.1 事件处理模式 251
13.1.2 冒泡与捕获 253
13.2 常用的HTML事件 256
13.2.1 Load与Unload的处理 256
13.2.2 鼠标触发事件 258
13.2.3 鼠标按键事件 260
13.2.4 键盘事件 261
第14章 前端数据存储 265
14.1 认识Web Storage 265
14.1.1 Web Storage的概念 265
14.1.2 检测浏览器是否支持Web Storage 266
14.2 localStorage和sessionStorage 266
14.2.1 存取localStorage 266
14.2.2 清除localStorage 270
14.2.3 存取sessionStorage 272
14.3 Web Storage实例练习 273
14.3.1 操作步骤 273
14.3.2 隐藏<div>及<span>组件 275
14.3.3 登录 276
14.3.4 注销 276
第15章 JavaScript在多媒体的应用 278
15.1 网页图片使用须知 278
15.1.1 图片的尺寸与分辨率 278
15.1.2 图片的来源 279
15.1.3 网页路径表示法 279
15.2 加入影音特效 281
15.2.1 在网页中加入音乐 281
15.2.2 加入影音动画 284
15.2.3 iframe嵌入优酷视频 286
15.3 JavaScript控制影音播放——实现一个音乐播放器 288
15.3.1 制作歌曲选单列表 288
15.3.2 歌曲的click事件——事件指派委托 290
15.3.3 随机播放 291
第16章 网页保护密技与记忆力考验游戏 296
16.1 检测浏览器信息 296
16.2 禁止复制与选取网页内容 298
16.2.1 取消鼠标右键功能 298
16.2.2 取消键盘特殊键功能 299
16.2.3 禁止选取网页文字与图片 301
16.3 字符串加密与解密 302
16.3.1 URL与字符串加密 302
16.3.2 URL与字符串解密 305
16.4 “记忆力考验”游戏 308
16.4.1 界面和程序功能概述 308
16.4.2 程序代码重点说明 310
16.4.3 CSS重点说明 311
本书,涵盖Web/App前端开发三大必学技术:JavaScript(ES 6) + HTML 5 + CSS 3,结合丰富的范例程序,培养读者的程序设计素养,编写适合自己的网页(Web)应用程序,也能读懂他人编写的程序代码,无论是开发、调试、升级或维护程序都能从容应对
陈婉凌,网页技术的资深软件工程师,并拥有多年讲授计算机课程的丰富经验,擅长编写HTML、CSS、JavaScript、jQuery、PHP方面的书籍,在出版的书籍中入自身多年教学经验与职场实战经验,内容充实,难易度适中,适合大众读者。