万本电子书0元读

万本电子书0元读

顶部广告

JavaScript编程思想:从ES5到ES9电子书

本书从基础到高级,介绍JavaScript的语法、概念以及从ES6到ES9的新特性 使用具有创意的示例讲解JavaScript的编程方法,提供详尽的代码注释 各章精心设计了丰富的编程练习题,便于读者检验学习效果

售       价:¥

纸质售价:¥93.20购买纸书

65人正在读 | 0人评论 6.9

作       者:柯霖廷

出  版  社:清华大学出版社

出版时间:2019-05-01

字       数:65.7万

所属分类: 科技 > 计算机/网络 > 程序设计

温馨提示:此类商品不支持退换货,不支持下载打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
本书从基础到高级,主要阐释JavaScript编程各层面的语法、观念、实战示例与习题。其内容深浅出,主要内容包括:表达式与运算符,数据类型,条件和循环语句,函数与方法,处理数值、字符串、数组、自定义对象与日期和时间,DOM的事件处理和元素实例,Reflect、Proxy和Intl对象,window.navigator、window.document和BOM的多个对象实例,类,错误处理,数据的验证与传输,响应式机制与源代码加密。 本书含有充足且具有创意的实战示例,利于读者学习、理解和实际运用。另外,各章末的习题也是用来演练学习成果的良方,可起到事半功倍的奇效。本书既适合业界的程序发者阅读,也可作为大中专院校与培训机构的教学参考书。 本书从基础到高级,主要阐释JavaScript编程各层面的语法、观念、实战示例与习题。其内容深浅出,主要内容包括:表达式与运算符,数据类型,条件和循环语句,函数与方法,处理数值、字符串、数组、自定义对象与日期和时间,DOM的事件处理和元素实例,Reflect、Proxy和Intl对象,window.navigator、window.document和BOM的多个对象实例,类,错误处理,数据的验证与传输,响应式机制与源代码加密。 本书含有充足且具有创意的实战示例,利于读者学习、理解和实际运用。另外,各章末的习题也是用来演练学习成果的良方,可起到事半功倍的奇效。本书既适合业界的程序发者阅读,也可作为大中专院校与培训机构的教学参考书。
【推荐语】
本书从基础到高级,介绍JavaScript的语法、概念以及从ES6到ES9的新特性 使用具有创意的示例讲解JavaScript的编程方法,提供详尽的代码注释 各章精心设计了丰富的编程练习题,便于读者检验学习效果
【作者】
柯霖廷,javaScript资深发工程师,前端发讲师,拥有十余年前端及Web发经验。
目录展开

封面页

书名页

版权页

内容简介

前言

第1章 ECMAScript简介

1.1 概述

1.1.1 ECMAScript各版本

1.1.2 关于JavaScript

1.1.3 其他脚本语言

1.2 语法的实现

1.2.1 源代码

1.2.2 语句

1.2.3 表达式

1.2.4 子程序

1.2.5 注释

1.2.6 关键字

1.3 开发环境

1.3.1 浏览器

1.3.2 Node.js

1.3.3 其他JavaScript Shell

1.4 练习题

第2章 表达式与运算符

2.1 操作数

2.1.1 常量(ES6)

2.1.2 变量(ES6)

2.1.3 子表达式

2.1.4 函数的返回值

2.2 运算符

2.2.1 算术运算符(ES7)

2.2.2 赋值运算符

2.2.3 比较运算符

2.2.4 逻辑运算符

2.2.5 条件运算符

2.2.6 类型运算符

2.2.7 按位运算符

2.2.8 括号运算符

2.2.9 扩展运算符(ES6)

2.2.10 逗号运算符

2.2.11 删除运算符

2.2.12 运算符的优先级(ES6)

2.3 练习题

第3章 数据类型

3.1 数值类型

3.1.1 2进制的字面量(ES6)

3.1.2 数值的比较(ES6)

3.1.3 数值的正负符号(ES6)

3.1.4 数值的截断(ES6)

3.1.5 数值的特殊格式(ECMA-402)

3.1.6 整数值的安全范围(ES6)

3.2 布尔类型

3.3 数组类型

3.4 对象类型

3.5 字符串类型

3.5.1 一般字符串

3.5.2 格式化字符串(ES6)

3.5.3 日期与时间格式的字符串(ES6)

3.6 集合与地图类型

3.6.1 集合类型(ES6)

3.6.2 地图类型(ES6)

3.7 数据类型的转换(ES6)

3.8 练习题

第4章 条件和循环语句

4.1 条件语句

4.1.1 if语句

4.1.2 switch语句

4.2 循环语句

4.2.1 for相关语句(ES6)

4.2.2 while相关语句

4.2.3 break与continue语句

4.3 练习题

第5章 函数与方法

5.1 函数的定义

5.1.1 不同形式的函数(ES6)

5.1.2 函数名称(ES6)

5.1.3 参数(ES6)

5.1.4 主体

5.1.5 返回数据与void关键字(ES6)

5.1.6 定义的位置(ES6)

5.1.7 函数的调用形式(ES6)

5.2 生成器

5.2.1 迭代器协议与生成器(ES6)

5.2.2 生成器函数的定义和用法(ES6)

5.3 搭配Promise对象

5.3.1 Promise对象的用法(ES6、ES9)

5.3.2 聚集多个Promise对象(ES6)

5.3.3 异步函数与等待表达式(ES8)

5.4 练习题

第6章 处理数值

6.1 Number对象的内置属性

6.1.1 最大的正数和安全整数(ES6)

6.1.2 最小的正数和安全整数(ES6)

6.1.3 正负无穷值

6.1.4 非数值的判断(ES6)

6.1.5 浮点数运算的误差值(ES6)

6.2 Number对象的内置函数

6.2.1 转换为特定进制的数码字符串

6.2.2 处理小数格式

6.2.3 转换为数值

6.2.4 判断是否为整数或有限数(ES6)

6.3 Math对象

6.3.1 Math对象的常量属性

6.3.2 Math对象的函数(ES6)

6.4 练习题

第7章 处理字符串

7.1 String对象

7.1.1 子字符串的索引值

7.1.2 特定模式的子字符串的搜索(ES6)

7.1.3 子字符串的获取

7.1.4 子字符串的替换

7.1.5 字符串的大小写转换

7.1.6 不同字符串的连接

7.1.7 字符串的重复连接

7.1.8 字符串的分割

7.1.9 特定字符和Unicode数码的双向转换(ES6)

7.1.10 重复填充子字符串于扩充后的字符串中(ES8)

7.2 将冗长的字符串分割为多行(ES6)

7.3 字符串的扩展运算(ES6)

7.4 字符串的插值格式化(ES6)

7.5 原始字符串(ES6)

7.6 正则表达式与黏性匹配(ES6)

7.7 万国码字面量(ES6)

7.8 练习题

第8章 处理数组

8.1 Array对象

8.1.1 创建特定数组的副本(ES6)

8.1.2 创建来自可迭代对象的新数组(ES6)

8.1.3 数组元素数据所构成的字符串

8.1.4 数组元素的放入和取出

8.1.5 新增或删除数组的多个元素

8.1.6 合并多个数组

8.1.7 切割数组

8.1.8 寻找符合特定条件的数组元素(ES6)

8.1.9 自我复制并覆盖数组的部分元素(ES6)

8.1.10 判断数组各元素是否符合特定条件

8.1.11 数组部分元素的填充(ES6)

8.1.12 筛选出符合特定条件的数组元素(ES6)

8.1.13 循环访问数组各元素

8.1.14 判断是否为数组的实例

8.1.15 访问并渐次处理数组各元素的数据

8.1.16 反转数组各元素的顺序

8.1.17 数组各元素的重新排序

8.1.18 判断特定元素的存在性(ES7)

8.2 数组的扩展运算(ES6)

8.3 数组元素的匹配(ES6)

8.4 数据类型化的按位数组(ES6)

8.5 练习题

第9章 处理自定义对象

9.1 自定义对象的属性名称、属性数据与副本

9.1.1 对象属性的名称或数据所构成的数组(ES8)

9.1.2 精细创建特定对象实例的副本

9.2 自定义对象实例之间的相同性与合并

9.2.1 判断两个对象实例的数据是否完全相同(ES6)

9.2.2 合并多个对象实例的所有成员(ES6)

9.3 对象实例的简短自定义语法(ES6)

9.4 自定义对象实例的动态成员名称(ES6)

9.5 对象实例的匹配(ES9)

9.6 练习题

第10章 处理日期和时间

10.1 处理日期

10.1.1 获取日期相关数据

10.1.2 设置日期相关数据

10.1.3 带有日期的格式化字符串

10.2 处理时间

10.2.1 获取时间相关数据

10.2.2 设置时间相关数据

10.2.3 带有时间的格式化字符串

10.2.4 处理纪元时间至今的毫秒数(ES6)

10.3 练习题

第11章 DOM的事件处理(一)

11.1 鼠标事件

11.1.1 单击和双击事件

11.1.2 上下文菜单事件

11.1.3 鼠标按下与松开事件

11.1.4 鼠标指针相关进出事件

11.1.5 鼠标移动事件

11.2 键盘事件

11.2.1 按压与按下按键事件

11.2.2 松开按键事件

11.3 网页内容的装卸事件

11.3.1 出现错误事件

11.3.2 加载和页面显示事件

11.3.3 卸载和页面隐藏事件

11.3.4 先于卸载事件

11.3.5 网址散列变化事件

11.3.6 滚动事件

11.4 表单事件

11.4.1 内容变化事件

11.4.2 获取和失去焦点相关事件

11.4.3 输入事件

11.4.4 无效事件

11.4.5 重置事件

11.4.6 搜索事件

11.4.7 选定文本事件

11.4.8 提交事件

11.5 练习题

第12章 DOM的事件处理(二)

12.1 拖动事件

12.1.1 正在拖动事件

12.1.2 拖动结束事件

12.1.3 拖动进入事件

12.1.4 拖动离开事件

12.1.5 拖动悬停事件

12.1.6 拖动开始事件

12.1.7 放下事件

12.2 剪贴板事件

12.2.1 复制事件

12.2.2 剪切事件

12.2.3 粘贴事件

12.3 视频和音频事件

12.3.1 加载相关事件

12.3.2 清空事件

12.3.3 播放结束事件

12.3.4 异常相关事件

12.3.5 播放与暂停相关事件

12.3.6 播放速率变化事件

12.3.7 播放位置变化相关事件

12.3.8 音量变化事件

12.3.9 缓冲等待事件

12.4 动画及过渡事件

12.4.1 动画相关事件

12.4.2 过渡结束事件

12.5 其他事件

12.5.1 details元素实例的切换事件

12.5.2 鼠标滚轮事件

12.5.3 触摸相关事件

12.5.4 接收服务器数据相关事件

12.6 练习题

第13章 Reflect对象

13.1 Reflect对象介绍(ES6)

13.2 间接应用特定函数(ES6)

13.3 创建特定对象的实例(ES6)

13.4 精细定义新属性(ES6)

13.5 删除特定属性(ES6)

13.6 获取特定属性的数据(ES6)

13.7 返回特定属性的描述器(ES8)

13.8 返回特定对象的原型(ES6)

13.9 判断特定属性的存在性(ES6)

13.10 判断与设置特定对象的扩展性(ES6)

13.11 简易定义新属性(ES6)

13.12 重新设置特定对象的原型(ES6)

13.13 返回与列举特定对象的自定义属性(ES6)

13.14 练习题

第14章 Proxy对象、Intl对象和navigator对象实例

14.1 Proxy对象

14.1.1 创建访问代理机制的构造函数(ES6)

14.1.2 确定被代理的特定对象(ES6)

14.1.3 自定义代理函数(ES6)

14.1.4 调试访问代理机制(ES6)

14.2 Intl对象

14.2.1 精确比较语言敏感的字符串(ECMA-402)

14.2.2 语言敏感的日期与时间格式(ECMA-402)

14.2.3 语言敏感的数值格式(ECMA-402)

14.2.4 返回规范化语言环境名称(ECMA-402)

14.3 window.navigator对象实例

14.3.1 获取浏览器相关信息

14.3.2 获取当前地理定位相关数据

14.4 练习题

第15章 window.document对象实例

15.1 返回焦点所在的元素

15.2 附加事件处理器至特定元素

15.3 收养特定节点

15.4 返回所有锚点元素构成的集合

15.5 返回当前网址的相关属性

15.6 在当前网页中动态生成HTML源代码

15.7 内含特定服务器相关数据的cookie

15.8 返回当前网页编码字符集的名称

15.9 创建代表新属性的节点

15.10 创建代表新注释的节点

15.11 创建代表新片段或新元素的节点

15.12 创建代表新文本的节点

15.13 返回当前网页的根元素

15.14 访问当前网址的域名

15.15 返回所有embed元素构成的集合

15.16 返回所有form元素实例构成的集合

15.17 返回特定身份识别码的元素实例

15.18 返回被设置带有特定CSS类名的所有元素实例的集合

15.19 返回特定标签名称的所有元素实例的集合

15.20 判断当前网页是否存在焦点

15.21 返回当前网页的head元素实例

15.22 返回当前网页所有image元素实例的集合

15.23 创建当前网页或者子网页里的特定节点实例的副本

15.24 获取当前网页的最近被修改的日期和时间

15.25 返回当前网页中的所有超链接元素实例的集合

15.26 返回特定CSS选择器名称对应的元素实例或集合

15.27 返回和处置当前网页的加载状态

15.28 返回跳转前的网址

15.29 解除已被附加的事件处理器

15.30 返回当前网页中的所有script元素实例构成的集合

15.31 访问当前网页的标题文本

15.32 练习题

第16章 DOM的元素实例

16.1 设置焦点跳转至特定元素实例上的快捷键

16.2 创建特定元素实例的动画效果(Web Animations)

16.3 添加新元素实例和访问特定元素实例的所有属性

16.4 使得特定元素实例失去和获取焦点

16.5 访问子节点或子元素的实例

16.6 访问被应用在特定元素实例的所有CSS类名

16.7 模拟鼠标单击特定元素实例的动作

16.8 获取特定元素的尺寸、坐标与可定位的上层元素

16.9 比较两个元素之间的位置关系

16.10 判断是否存在特定子元素或可被编辑

16.11 访问特定元素实例的文本被书写的方向

16.12 返回头尾的子节点实例或子元素实例

16.13 访问或删除特定元素实例的特定属性

16.14 访问特定元素实例的常见属性的数据

16.15 判断是否存在任何子节点实例

16.16 在特定子节点实例之前新增另一子节点实例

16.17 判断两个节点实例的内容是否完全相同

16.18 返回下一个或上一个兄弟节点实例

16.19 返回特定节点实例的相关数据

16.20 合并多个相邻的文本子节点实例

16.21 返回父节点实例

16.22 删除或替换子节点实例

16.23 获取滚动条的相关数据

16.24 练习题

第17章 BOM的多个对象实例

17.1 window对象实例

17.1.1 显示多种对话框与搜索特定文本

17.1.2 滚动至坐标或滚动特定距离

17.2 screen对象实例

17.3 history对象实例

17.4 location对象实例

17.5 练习题

第18章 类

18.1 类的定义和继承

18.1.1 类的定义(ES6)

18.1.2 类的继承(ES6)

18.2 类的静态成员

18.2.1 静态成员的概念和定义(ES6)

18.2.2 静态成员的运用(ES6)

18.3 类的设置器和取得器

18.3.1 设置器和取得器的概念和定义(ES6)

18.3.2 设置器和取得器的运用(ES6)

18.4 练习题

第19章 错误处理

19.1 异常错误的种类

19.1.1 语法错误

19.1.2 数据类型错误

19.1.3 评估错误

19.1.4 范围错误

19.1.5 引用错误

19.1.6 网址在编码或解码上的错误

19.1.7 逻辑错误

19.2 处置特定异常错误

19.2.1 试验与捕获特定异常错误

19.2.2 抛出自定义的异常错误

19.3 调试机制

19.3.1 严格模式

19.3.2 源代码的断点设置和逐句执行

19.4 练习题

第20章 数据的验证与传输

20.1 HTML表单的内置验证

20.1.1 必填验证

20.1.2 字符个数和数值范围的验证

20.2 自定义的验证

20.2.1 文本字段的模式验证

20.2.2 JavaScript源代码实现的验证

20.3 异步数据传输

20.3.1 AJAX的工作原理

20.3.2 AJAX的编程方式

20.4 练习题

第21章 响应式机制

21.1 通过CSS语法的版本

21.1.1 页面的元信息

21.1.2 媒体查询

21.2 通过JavaScript语法的版本

21.2.1 简易判断窗口尺寸的版本

21.2.2 直接变更CSS规则的版本

21.3 源代码的加密

21.3.1 改写HTML与CSS成为JavaScript源代码

21.3.2 JavaScript源代码的全数加密

21.4 练习题

附录 练习题答案

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部