《JavaScript开发实战 计算机程序设计》PDF下载

  • 购买积分:13 如何计算积分?
  • 作  者:(英)约翰·拉尔森著;孙晓青,周伟译
  • 出 版 社:北京:机械工业出版社
  • 出版年份:2018
  • ISBN:9787111586715
  • 页数:369 页
图书介绍:本书详细介绍了JavaScript编程的最新知识。主要内容包括:JavaScript与JS Bin、变量、对象、函数、参数、返回值、对象参数、数组、构造函数、括号标记、范围、条件、模块、模型、视角、控制器、HTML简介、控件、模板、XHR等。

第一部分 控制台上的核心概念 3

第1章 编程、JavaScript和JS Bin 3

1.1编程 3

1.2 JavaScript 4

1.3在实践和思考中学习 4

1.4 JS Bin 5

1.4.1 JS Bin面板 5

1.4.2在JS Bin上运行代码清单 6

1.4.3输出到控制台 7

1.4.4代码注释 7

1.4.5 Further Adventures——进阶练习 8

1.4.6错误消息 8

1.4.7行号 9

1.4.8获取账户 9

1.5游戏The Crypt——本书的一个持续示例 9

1.5.1运行The Crypt 10

1.5.2创建The Crypt的具体步骤 10

1.6更多示例和练习 12

1.7浏览器的兼容性 12

1.8本章小结 12

第2章 变量:在程序中存储数据 13

2.1什么是变量 13

2.2变量的声明和赋值 13

2.2.1变量声明 14

2.2.2变量赋值 14

2.2.3一步实现变量声明和赋值 16

2.2.4先运算再赋值 17

2.3选择合适的变量名 18

2.3.1关键字和保留字 18

2.3.2变量的命名规则 19

2.3.3骆驼式命名法(camelCase) 19

2.3.4使用描述性变量名 19

2.4 The Crypt——玩家变量 20

2.5本章小结 21

第3章 对象:数据分组 22

3.1变量需要分组 22

3.2创建对象 23

3.2.1创建一个空对象 24

3.2.2属性“键-值对” 24

3.3访问对象的属性 26

3.4更新对象的属性 28

3.5其他示例 29

3.5.1撰写一条博客 29

3.5.2创建一个日历 29

3.5.3天气怎么样? 30

3.5.4一个小测验 31

3.5.5创建自己的程序 31

3.6游戏The Crypt——玩家对象 31

3.7本章小结 33

第4章 函数:按需执行代码 34

4.1重复问题 34

4.1.1将对象的属性作为文本进行显示 34

4.1.2加税算出总成本 36

4.2定义函数和调用函数 37

4.2.1定义新函数 37

4.2.2函数表达式和函数声明 38

4.2.3使用函数 39

4.2.4使用函数的步骤 40

4.3减少重复 40

4.3.1函数可用于将对象的属性作为文本进行显示 40

4.3.2加税并显示总成本的函数 43

4.4使代码易于阅读和更新 44

4.4.1更新showMovieInfo函数 45

4.5游戏The Crypt——显示玩家的信息 46

4.5.1用函数显示玩家的信息 47

4.6本章小结 48

第5章 参数:将数据传递给函数 49

5.1函数重用 49

5.2将信息传递给函数 50

5.2.1将实参传递给函数 50

5.2.2将多个实参传递给一个函数 53

5.3 The Crypt——显示玩家信息 54

5.3.1显示玩家的姓名 55

5.3.2显示玩家的健康值 56

5.3.3显示玩家的位置 57

5.3.4合并显示玩家的信息 58

5.4本章小结 59

第6章 返回值:从函数获取数据 60

6.1从函数返回数据 60

6.1.1用返回值替代函数调用 60

6.1.2关键字retum 61

6.1.3使用参数来确定返回值 62

6.2在控制台提示符下进行实验 64

6.2.1调用函数 64

6.2.2声明新的变量 65

6.3 The Crypt——构建玩家信息字符串 66

6.3.1为玩家的姓名、健康值和位置构建字符串 67

6.3.2用一个函数显示玩家的信息——把几个函数集合在一起 68

6.4本章小结 70

第7章 对象参数:将对象传递给函数 72

7.1使用对象作为参数 72

7.1.1访问对象参数的属性 73

7.1.2给对象参数添加属性 74

7.2从函数返回对象 75

7.2.1构建行星——对象创建函数 75

7.2.2二维空间的点 77

7.3方法——设置函数作为对象的属性 78

7.3.1命名空间——将相关函数组织到一起 79

7.3.2 Math方法 80

7.3.3 String方法 81

7.3.4 spacer——将更多的方法收入命名空间 83

7.3.5进一步探索命名空间 85

7.4 The Crypt——将玩家对象作为参数 88

7.5本章小结 89

第8章 数组:将数据存入列表 91

8.1创建数组并访问元素 91

8.1.1创建数组 91

8.1.2访问数组元素 93

8.2数组方法 96

8.2.1添加和删除元素 96

8.2.2截取和拼接数组 97

8.2.3使用forEach访问每一个元素 98

8.3 The Crypt——玩家的物品数组 103

8.4本章小结 105

第9章 构造函数:构建带有函数的对象 107

9.1使用函数构建对象 108

9.1.1添加属性 108

9.1.2添加方法 109

9.2使用构造函数构建对象 111

9.2.1构造函数 111

9.2.2使用Planet构造函数创建一个新世界 114

9.2.3使用instanceof运算符区分对象 115

9.3建造大师——两个构造函数的示例 115

9.4 The Crypt——为玩家提供掠夺地 118

9.4.1构建Place构造函数——名称标题和描述 119

9.4.2构建Place构造函数——囤积物品 120

9.4.3构建Place构造函数——探索出口 121

9.5 The Crypt——简化玩家创建代码 123

9.5.1整理玩家属性 124

9.5.2将函数转换为方法 126

9.5.3为玩家分配位置 127

9.5.4使用null作为对象的占位符 127

9.6本章小结 128

第10章 方括号运算符:灵活的属性名称 130

10.1用方括号运算符替代圆点运算符 130

10.1.1使用方括号——人的姓名作为键 131

10.1.2最大限度地利用方括号运算符——单词统计 134

10.2 The Crypt——使游戏出口更加刺激好玩 137

10.2.1使用对象存放出口 138

10.2.2创建一个添加并显示出口的函数 139

10.2.3设置每个场所对象的出口集合 140

10.2.4将exits对象添加到完整的Place构造函数 142

10.2.5测试Place构造函数 144

10.3 The Crypt——开始游戏! 145

10.3.1刷新显示——render 146

10.3.2探索地图——go 146

10.3.3收集物品——get 147

10.3.4设计一个更大的冒险游戏——Jahver的船 147

10.4下一步目标 147

10.5本章小结 148

第二部分 组织代码 151

第11章 作用域:隐藏信息 151

11.1全局变量的危险性 152

11.1.1访问所有区域——偷窥和篡改 152

11.1.2访问所有区域——借助于实现 153

11.1.3命名冲突 155

11.1.4难以查找的错误 155

11.2局部变量的优势 155

11.3接口——控制访问权限并提供可用功能 157

11.3.1使用一个函数来隐藏变量 158

11.3.2使用getCount创建多个独立计数器 159

11.3.3用构造函数创建多个独立的计数器 160

11.4创建一个简单的测验应用程序 161

11.4.1将对象用作一个命名空间 162

11.4.2隐藏问题数组 163

11.5 The Crypt——隐藏玩家信息 165

11.5.1当前的Player构造函数——全部内容都公开 165

11.5.2更新版的Player构造函数——某些变量被隐藏 166

11.6 The Crypt——隐藏地点信息 168

11.7 The Crypt——用户交互 170

11.7.1接口——go和get 172

11.7.2隐藏程序的实现 172

11.8本章小结 173

第12章 条件:有选择地运行代码 175

12.1有条件地执行代码 175

12.1.1严格相等运算符 176

12.1.2 if语句 176

12.1.3 else子句 177

12.1.4隐藏函数中的密码数字 178

12.2利用Math.random()生成随机数 180

12.3使用else if创造更多条件 182

12.3.1比较运算符 184

12.4在测验应用程序中检查答案 185

12.4.1变量的便捷声明方式:使用var关键字声明多个变量 187

12.4.2显示测验中的问题 188

12.4.3移至下一道题目 188

12.4.4检查用户的答案 189

12.4.5处理用户的答案 189

12.4.6返回接口对象 189

12.5 The Crypt——检查用户的输入 190

12.5.1 go方法解读 190

12.5.2永远不能轻信用户输入的信息 191

12.5.3确保探索不会中断——使用if语句 192

12.6本章小结 194

第13章 模块:分解程序 196

13.1了解JS Bin上的bin和文件 197

13.1.1创建一个bin 199

13.1.2编写代码 199

13.1.3记录文件名 199

13.1.4查看单个代码文件 200

13.2将文件导入其他项目 200

13.2.1创建一个bin 200

13.2.2编写代码 200

13.2.3添加script元素 201

13.2.4刷新页面 202

13.2.5运行程序 202

13.3导入数字生成器——进阶示例 203

13.3.1在测验应用程序中随机选择问题 203

13.3.2在猜数字游戏中使用between函数 204

13.4导入多个文件 205

13.5冲突——新导入的代码会覆盖原先的变量 207

13.5.1变量冲突 209

13.5.2通过使用命名空间减少冲突 210

13.6立即调用函数表达式(IIFE) 211

13.6.1识别函数表达式 213

13.6.2调用函数 213

13.6.3立即调用函数表达式 213

13.6.4从IIFE返回信息 214

13.7 The Crypt——将代码分解成模块 215

13.7.1跨模块共享命名空间 216

13.8本章小结 219

第14章 模型:使用数据 220

14.1构建健身应用程序——数据和模型 220

14.1.1定义User构造函数 221

14.1.2体会把数据作为JavaScript对象的感觉 222

14.1.3将数据转换为用户模型 223

14.1.4下一步目标 224

14.2 The Crypt——从游戏中分离出地图数据 224

14.2.1地图数据 226

14.2.2向The Crypt地图数据添加挑战 227

14.2.3更新Place构造函数来应对挑战 228

14.2.4使用地图数据构建游戏地图 229

14.2.5运行游戏 232

14.3本章小结 233

第15章 视图:显示数据 234

15.1健身应用程序——显示最新的用户数据 234

15.1.1创建第一个健身应用视图 235

15.1.2使用模块切换健身应用视图 236

15.1.3下一个目标 237

15.2 The Crypt——把显示代码从Player和 Place模型中分离出来 238

15.2.1为玩家创建视图 238

15.2.2创建场所视图 242

15.3与玩家交互——消息视图 246

15.4本章小结 247

第16章 控制器:连接模型和视图 248

16.1构建一个健身应用控制器 248

16.1.1控制器的作用 249

16.1.2构建一个健身应用控制器 249

16.1.3将各个部分组合在一起用于健身应用程序 250

16.1.4下一个目标 251

16.2游戏The Crypt——添加控制器 251

16.2.1控制器在游戏中的作用 252

16.2.2走近控制器代码 253

16.3 The Crypt——控制器代码的结构 253

16.4 The Crypt——开始和终止游戏 254

16.4.1游戏初始化 254

16.4.2监测玩家的健康值 255

16.4.3更新显示——使用视图模块的函数 255

16.5 The Crypt——发布命令和解决难题 256

16.5.1使用game.get拾取物品 256

16.5.2列出挑战的各个属性 257

16.5.3使用game.go来移动位置 258

16.5.4用game.use打败豹子 259

16.6 The Crypt——运行游戏 262

16.7 The Crypt——下一个目标 263

16.8本章小结 263

第三部分 浏览器中的JavaScript 267

第17章 HTML:构建网页 267

17.1 HTML、 CSS、 JavaScript——构建网页 267

17.1.1加载图层 268

17.1.2在JS Bin中加载图层 269

17.2 HTML——简略介绍 269

17.2.1从空白页面开始 270

17.2.2添加内容 270

17.2.3标记列表 271

17.2.4一些常见的HTML元素 272

17.3使用JavaScript向Web页面添加内容 273

17.3.1通过id获取元素 274

17.3.2函数声明 275

17.3.3什么?不能运行JavaScript? 275

17.4显示数组中的数据 275

17.5游戏The Crypt——用网页视图方式显示玩家和地点 278

17.5.1更新玩家和场所视图模块——render方法 279

17.5.2更新玩家和场所视图模块——代码清单 280

17.5.3使用JavaScript严格模式 281

17.5.4加载模块并在HTML中添加占位符 281

17.5.5添加少许CSS 283

17.5.6开始玩游戏 283

17.5.7准备消息视图 284

17.6本章小结 284

第18章 控件:获取用户输入 286

18.1使用按钮 286

18.1.1为页面添加按钮 287

18.1.2编写函数来更新问候语 287

18.1.3监听单击 288

18.2使用select元素选择一个选项 289

18.2.1向页面中添加select元素 289

18.2.2对电影进行评分的函数和调用该函数的按钮 291

18.3使用文本框读取用户输入 292

18.3.1在页面中添加文本框 293

18.3.2添加无序列表来显示评论内容 293

18.3.3获取对新元素的引用 293

18.3.4更新rateMovie函数 294

18.3.5用CSS设计样式 295

18.4游戏The Crypt——玩家通过文本框发号施令 295

18.4.1向页面添加控件 297

18.4.2将文本框内容映射到游戏命令 297

18.4.3使用split、 join、 pop和shift发布命令 297

18.4.4使用switch在各选项间做出决定 299

18.4.5执行命令——监听按钮点击 300

18.4.6进入游戏 301

18.5本章小结 302

第19章 模板:使用数据填充占位符 304

19.1构建一个新闻页面——重大新闻 304

19.1.1对比新闻数据和HTML 305

19.1.2通过连接字符串来构造HTML 306

19.1.3使用HTML模板进行设计 306

19.1.4使用script标签包裹模板 306

19.2用一个字符串替换另一个字符串 307

19.2.1连续调用replace 308

19.3 while循环——多次替换字符串 309

19.3.1在满足条件时重复执行代码 311

19.3.2 while循环 311

19.3.3替换一个可以找到的字符串 312

19.3.4使用正则表达式替换字符串 313

19.4自动替换模板中的占位符 313

19.4.1将模板占位符与对象属性相匹配 313

19.4.2为每个“键”填充所有的占位符 314

19.4.3使用模板构建多条新闻的列表 315

19.5创建一个新闻页面——处理最新消息 316

19.5.1创建模板模块和数据模块 316

19.5.2导入模块 318

19.6游戏The Crypt——改善视图 319

19.6.1为所有视图创建HTML模板 320

19.6.2针对新模板更新视图 321

19.6.3进入游戏The Crypt 324

19.7本章小结 324

第20章XHR:加载数据 326

20.1构建一个健身应用——检索用户数据 326

20.1.1查找用户数据 327

20.1.2加载用户数据——概要 328

20.1.3加载用户数据——XMLHttpRequest构造函数 329

20.1.4加载用户数据——使用JSON.parse解析XHR响应 330

20.1.5加载JS Bin数据——一个好用的函数 331

20.1.6升级健身应用程序 332

20.1.7健身应用程序——下一个目标 334

20.2 JSON——一种简单的数据格式 334

20.2.1使用JSON.parse将JSON转换为对象和数组 335

20.3游戏The Crypt——根据需要加载地图 336

20.3.1使用JS Bin文件代码指定出口 336

20.3.2使用缓存——针对每个地点只加载一次 337

20.3.3使用地图管理器替换地图数据模块和地图构建器模块 338

20.3.4更新游戏控制器 340

20.3.5构建游戏页面 341

20.3.6进入游戏The Crypt 343

20.4本章小结 343

第21章 结语:使用JavaScript编程 345

21.1在本地处理文件 345

21.1.1编写代码 345

21.1.2保存文件 346

21.1.3在浏览器中打开页面 347

21.1.4合并和压缩文件 348

21.2获取帮助 349

21.3后续推荐 349

21.3.1本书网站 349

21.3.2图书 349

21.3.3网站 350

21.3.4实践——熟能生巧 350

21.4本章小结 350

索引 351