第一部分 基本语法 2
第01章 JavaScript简介 2
1.1 JavaScript是什么 2
1.1.1 JavaScript简介 2
1.1.2 教程介绍 3
1.2 JavaScript开发工具 5
1.3 JavaScript引入方式 6
1.3.1 外部JavaScript 7
1.3.2 内部JavaScript 8
1.3.3 元素属性JavaScript 9
1.4 训练题:一个简单的JavaScript程序 10
第02章 语法基础 12
2.1 语法简介 12
2.2 变量与常量 13
2.2.1 变量 14
2.2.2 常量 18
2.3 数据类型 18
2.3.1 数字 19
2.3.2 字符串 20
2.3.3 布尔值 22
2.3.4 未定义值 23
2.3.5 空值 24
2.4 运算符 24
2.4.1 算术运算符 25
2.4.2 赋值运算符 29
2.4.3 比较运算符 30
2.4.4 逻辑运算符 31
2.4.5 条件运算符 34
2.5 表达式与语句 35
2.6 类型转换 36
2.6.1 “字符串”转换为“数字” 36
2.6.2 “数字”转换为“字符串” 40
2.7 转义字符 41
2.8 注释 43
2.8.1 单行注释 44
2.8.2 多行注释 45
第03章 流程控制 46
3.1 流程控制简介 46
3.1.1 顺序结构 46
3.1.2 选择结构 47
3.1.3 循环结构 48
3.2 选择结构:if 48
3.2.1 单向选择:if 48
3.2.2 双向选择:if…else… 50
3.2.3 多向选择:if…else if…else 51
3.2.4 if语句的嵌套 52
3.3 选择结构:switch 56
3.4 循环结构:while 59
3.5 循环结构:do…while 62
3.6 循环结构:for 63
3.7 训练题:判断一个数是整数,还是小数? 66
3.8 训练题:找出“水仙花数” 67
第04章 初识函数 68
4.1 函数是什么? 68
4.2 函数的定义 70
4.2.1 没有返回值的函数 71
4.2.2 有返回值的函数 73
4.2.3 全局变量与局部变量 74
4.3 函数的调用 77
4.3.1 直接调用 77
4.3.2 在表达式中调用 78
4.3.3 在超链接中调用 79
4.3.4 在事件中调用 80
4.4 嵌套函数 81
4.5 内置函数 82
4.6 训练题:判断某一年是否为闰年 83
4.7 训练题:求出任意五个数最大值 84
第05章 字符串对象 86
5.1 内置对象简介 86
5.2 获取字符串长度 87
5.3 大小写转换 88
5.4 获取某一个字符 89
5.5 截取字符串 91
5.6 替换字符串 93
5.7 分割字符串 95
5.8 检索字符串的位置 99
5.9 训练题:删除字符串中的某一个字符 100
5.10 训练题:找出字符串中的某一个字符串 101
5.11 训练题:统计字符串中数字的个数 102
第06章 数组对象 104
6.1 数组是什么? 104
6.2 数组的创建 105
6.3 数组的获取 105
6.4 数组的赋值 106
6.5 获取数组长度 108
6.6 截取数组某部分 111
6.7 为数组添加元素 112
6.7.1 在数组开头添加元素:unshift() 112
6.7.2 在数组结尾添加元素:push() 114
6.8 删除数组元素 116
6.8.1 删除数组中第一个元素:shift() 116
6.8.2 删除数组最后一个元素:pop() 117
6.9 数组大小比较 119
6.10 数组颠倒顺序 120
6.11 将数组元素连接成字符串 121
6.12 训练题:数组与字符串的转换操作 123
6.13 训练题:将字符串所有字符颠倒顺序 124
6.14 题目:计算面积与体积,返回一个数组 125
第07章 时间对象 127
7.1 日期对象简介 127
7.2 操作年、月、日 129
7.2.1 获取年、月、日 129
7.2.2 设置年、月、日 130
7.3 操作时、分、秒 132
7.3.1 获取时、分、秒 132
7.3.2 设置时、分、秒 133
7.4 获取星期几 135
7.5 训练题:在页面显示时间 136
第08章 数学对象 138
8.1 数学对象简介 138
8.2 Math对象的属性 138
8.3 Math对象的方法 140
8.4 最大值与最小值:max()、min() 141
8.5 取整运算 142
8.5.1 向下取整:floor() 142
8.5.2 向上取整:ceil() 143
8.6 三角函数 144
8.7 生成随机数 145
8.7.1 随机生成某个范围内的“任意数” 146
8.7.2 随机数生成某个范围内的“整数” 146
8.8 训练题:生成随机验证码 147
8.9 生成随机颜色值 148
第二部分 核心技术 150
第09章 DOM基础 150
9.1 核心技术简介 150
9.2.1 DOM对象 151
9.2.2 DOM结构 151
9.2 DOM是什么? 151
9.3 节点类型 152
9.4 获取元素 153
9.4.1 getElementByld() 153
9.4.2 getElementsByTagName 155
9.4.3 getElementsByClassName() 160
9.4.4 querySelector()和querySelectorAll() 161
9.4.5 getElementsByName() 163
9.4.6 document.title和document.body 165
9.5 创建元素 166
9.6 插入元素 171
9.6.1 appendChild() 171
9.6.2 insertBefore() 173
9.7 删除元素 174
9.8 复制元素 176
9.9 替换元素 178
第10章 DOM进阶 180
10.1 HTML属性操作(对象属性) 180
10.1.1 获取HTML属性值 180
10.1.2 设置HTML属性值 186
10.2 HTML属性操作(对象方法) 188
10.2.1 getAttribute() 189
10.2.2 setAttribute() 191
10.2.3 removeAttribute() 192
10.2.4 hasAttribute() 194
10.3 CSS属性操作 195
10.3.1 获取CSS属性值 196
10.3.2 设置CSS属性值 197
10.3.3 最后一个问题 203
10.4 DOM遍历 206
10.4.1 查找父元素 207
10.4.2 查找子元素 208
10.4.3 查找兄弟元素 212
10.5 innerHTML和innerText 214
第11章 事件基础 217
11.1 事件是什么? 217
11.2 事件调用方式 218
11.2.1 在script标签中调用 218
11.2.2 在元素中调用事件 219
11.3 鼠标事件 221
11.3.1 鼠标单击 221
11.3.2 鼠标移入和鼠标移出 223
11.3.3 鼠标按下和鼠标松开 225
11.4 键盘事件 226
11.5 表单事件 228
11.5.1 onfocus和onblur 228
11.5.2 onselect 230
11.5.3 onchange 232
11.6 编辑事件 235
11.6.1 oncopy 235
11.6.2 onselectstart 236
11.6.3 oncontextmenu 237
11.7 页面事件 238
11.7.1 onload 239
11.7.2 onbeforeunload 241
第12章 事件进阶 243
12.1 事件监听器 243
12.1.1 事件处理器 243
12.1.2 事件监听器 245
12.2 event对象 252
12.2.1 type 252
12.2.2 keyCode 253
12.3 this 256
第13章 window对象 260
13.1 window对象简介 260
13.2 窗口操作 262
13.2.1 打开窗口 262
13.2.2 关闭窗口 267
13.3 对话框 268
13.3.1 alert() 269
13.3.2 confirm() 269
13.3.3 prompt() 271
13.4 定时器 272
13.4.1 setTimeout()和clearTimeout() 273
13.4.2 setlnterval()和clearlnterval() 277
13.5 location对象 281
13.5.1 window.location.href 281
13.5.2 window.location.search 283
13.5.3 window.location.hash 283
13.6 navigator对象 284
第14章 document对象 287
14.1 document对象简介 287
14.2 document对象属性 288
14.2.1 document.URL 288
14.2.2 document.referrer 289
14.3 document对象方法 289
14.3.1 document.write() 290
14.3.2 document.writeln() 291