万本电子书0元读

万本电子书0元读

顶部广告

Head First JavaScript程序设计电子书

你能从这本书中学到什么? 在这本趣学指南中,你将学习JavaScript语言的方方面面,包括基本知识以及对象、函数、浏览器文档对象模型等高级主题。在阅读过程中,你还将完成填字游戏、探查案情、以想象不到的方式与JavaScript交互。另外,你还将编写大量代码,为独立造Web应用程序下坚实的基础。 这本书有什么特别之处? 本书基于神经生物学、认知学和学习理论领域的全新研究成果,采用了大量激发大脑的视觉元素,而不是充斥着让人昏昏欲睡的文字。

售       价:¥

纸质售价:¥86.50购买纸书

799人正在读 | 4人评论 6.4

作       者:[美]埃里克·T.弗里曼(Eric T. Freeman),伊丽莎白·罗布森(Elisabeth Robson)

出  版  社:人民邮电出版社

出版时间:2017-08-01

字       数:20.8万

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

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(4条)
  • 读书简介
  • 目录
  • 累计评论(4条)
本书语言和版式活泼,内容讲解深浅出,是难得的JavaScript门书。本书内容涵盖JavaScript的基本知识以及对象、函数和浏览器文档对象模型等高阶主题。书中配备了大量有趣的实例、图示和练习,让读者轻轻松松掌握JavaScript。 本书的读者对象为JavaScript门读者以及网页设计门者。<br/>【推荐语】<br/>你能从这本书中学到什么? 在这本趣学指南中,你将学习JavaScript语言的方方面面,包括基本知识以及对象、函数、浏览器文档对象模型等高级主题。在阅读过程中,你还将完成填字游戏、探查案情、以想象不到的方式与JavaScript交互。另外,你还将编写大量代码,为独立造Web应用程序下坚实的基础。 这本书有什么特别之处? 本书基于神经生物学、认知学和学习理论领域的全新研究成果,采用了大量激发大脑的视觉元素,而不是充斥着让人昏昏欲睡的文字。 作者的话 我们在本书中试图让学习JavaScript变得妙趣横生,不那么令人生畏。但是不要被其中的乐趣骗了:读完本书,你能够对这门语言拥有扎实的理解。如果你想真正地学好JavaScript,那么本书就是你的不二之选。<br/>【作者】<br/>Eric Freeman 计算机科学家,在耶鲁大学攻读博士学位期间,一直与行业翘楚David Gelernter一起从事研究工作。曾任迪士尼公司Disney Online & Disney.com首席技术官,目前将全部精力都投到他与Elisabeth创建的创业公司WickedlySmart。 Elisabeth Robson 软件工程师、作者、培训师。在耶鲁大学读书时就对技术产生了浓厚的兴趣,期间设计了一款可视化并行编程语言和软件架构。<br/>
目录展开

O'Reilly Media, Inc. 介绍

业界评论

对本书的赞誉

对Eric T. Freeman和Elisabeth Robson的其他著作的赞誉

作者简介

前言

如何使用本书 前言

本书适合你阅读吗

我们知道你是怎么想的

元认知:对思维方式的思考

我们是如何做的

如何让大脑听话

导读

技术审校

致谢*

1 JavaScript速览

1 JavaScript速览:进入JavaScript的世界

JavaScript的工作原理

如何编写JavaScript

如何将JavaScript代码加入网页

JavaScript,你进步不小

如何编写语句

变量和值

切勿随意命名

自我表达

重复操作

while循环的工作原理

使用JavaScript进行决策

进行大量决策

与用户交流

console.log详述

打开控制台

编写一个正式的应用程序

如何将JavaScript代码加入网页(细数各种方式)

棒打鸳鸯散

2 编写代码

2 编写代码:更进一步

开发一款战舰游戏

第一次尝试——简化的战舰游戏

从高层次设计着手

更多细节

编写伪代码

对了,别忘了HTML

编写简单的战舰代码

编写游戏逻辑

第一步:创建循环并获取输入

prompt的工作原理

检查用户的猜测

判断是否击中

添加击中检测代码

你击沉了我的战舰

进行游戏后分析

完整的游戏逻辑

一点点质量保证

别这么啰嗦好不好

完善简单的战舰游戏

如何随机地指定位置

举世闻名的随机数生产配方

再来一点点质量保证

说说代码重用

3 函数简介

3 函数简介:养成函数思维

这些代码到底有什么问题呢

以前提到过函数吗

函数到底是如何工作的呢

可以向函数传递哪些东西

JavaScript按值传递实参

错误地调用函数

函数还可返回值

详解包含return语句的函数的执行过程

全局变量和局部变量

了解局部变量和全局变量的作用域

短命的变量

千万别忘了声明局部变量

4 让数据排排坐

4 让数据排排坐:数组

你能帮助泡泡玩具反斗城公司吗

如何使用JavaScript表示多个值

数组的工作原理

如何访问数组元素

修改数组元素

确定数组的长度

自动造句应用程序

回到泡泡玩具反斗城公司

办公室商谈

如何迭代数组

等等,还有一种更好的数组迭代方式

测试报表

别这么啰嗦好不好

使用后递增运算符重新编写for循环

快速测试

办公室商谈(续)

创建空数组并在其中添加元素

测试最终的报表

胜出的配方是……

快速审视代码

编写函数printAndGetHighScore

使用printAndGetHighScore重构代码

整合起来

5 理解对象

5 理解对象:对象镇之旅

对象

属性

如何创建对象

何为面向对象呢

属性的工作原理

变量是如何存储对象的爱寻根究底的人想知道……

比较基本类型和对象

使用对象

进行预检

这辆出租车合乎要求吗

分步进行预检

更深入地讨论向函数传递对象的情况

让fido减减肥

汽车自动制造机

如何给对象添加行为

改进方法drive

测试对象fiat

别着急

为何方法drive不知道属性started

测试关键字this

关键字this的工作原理

行为如何影响状态给车加点油

让状态来影响行为

加点油以便试驾

祝贺你熟悉了对象

对象无处不在(它们让你的生活更美好)

6 与网页交互

6 与网页交互:了解DOM

上一章的密码破解难题

这些代码是做什么的呢

简单总结一下

JavaScript如何与网页交互

如何自己动手制作DOM

初尝DOM

使用getElementById获取元素

从DOM获取的到底是什么

查找内部HTML

修改DOM的影响

围绕星球进行试驾

网页加载完毕前别想运行代码

你说“事件处理程序”,我说“回调函数”

别停下,继续前进

如何使用setAttribute设置特性

获取特性

回到星球示例

DOM还有哪些功能

7 类型、相等、转换等

7 类型、相等、转换等:系统地讨论类型

真相就摆在那里

小心,你可能意外遭遇undefined

如何使用null

处理NaN

比想象的还要怪异

有一点我们必须告诉你

理解相等运算符

相等运算符如何转换操作数(听起来比实际上危险)

严格相等

深入探讨类型转换

如何判断两个对象是否相等

真值就摆在那里

JavaScript将哪些值视为假值

字符串的神秘生活

为什么字符串既像基本类型又像对象

字符串方法和属性简明教程

座椅争夺战

在Brad的小隔间里

等等,需求变了

回到Larry的小隔间

海滩上,Brad坐在笔记本电脑前

8 综合应用

8 综合应用:编写一个应用程序

编写一个货真价实的战舰游戏

回顾HTML和CSS

创建HTML页面:大致轮廓

第1步:基本HTML

第2步:创建表格

第3步:与玩家交互

再添加一些样式

第4步:指出是否击中战舰

使用hit和miss类

如何设计这款游戏

实现view对象

displayMessage的工作原理

实现displayMessage

displayHit和displayMiss的工作原理

实现displayHit和displayMiss

再次试驾

模型

你需要更多战舰和更大的游戏板

如何表示战舰

实现model对象

规划方法fire

实现方法fire

判断是否击中了战舰

整合起来

别这么啰嗦好不好

回到战舰

最后一击

实现控制器

处理玩家的猜测

规划代码

实现parseGuess

回到控制器

判断游戏是否结束

获取玩家的猜测

如何给Fire!按钮添加事件处理程序

获取表单中玩家的猜测

将输入交给控制器

还有哪些地方要处理呢?哦,讨厌,战舰位置是以硬编码方式指定的

如何放置战舰

编写方法generateShip

生成新战舰的起始位置

完成方法generateShip的编写工作

避免碰撞

最后两项修改

祝贺你,该创业了

9 异步编码

9 异步编码:处理事件

事件是什么

事件处理程序是什么

如何创建第一个事件处理程序

测试事件处理程序

通过创建一个游戏来理解事件

实现游戏

再添加一些图像

将同一个事件处理程序赋给每幅图像的属性onclick

如何将同一个处理程序用于所有图像

事件对象的工作原理

使用事件对象

测试事件对象和target属性

事件和队列

其他事件

setTimeout的工作原理

完成猜图游戏

测试定时器

10 函数是一等公民

10 函数是一等公民:自由的函数

关键字function神秘的双面人生

函数声明和函数表达式

分析函数声明

接下来呢?浏览器执行代码

继续往下执行

结束

函数怎么也是值呢

我们提到过函数在JavaScript中是一等公民吗

乘坐头等舱

编写处理和检查乘客的代码

迭代所有的乘客

向函数传递函数

从函数返回函数

编写让乘客点饮料的代码

编写让乘客点饮料的代码:另一种方式

等等,我们需要多次供应饮料

利用作为一等公民的函数让乘客点饮料

Web镇可乐公司

数组方法sort的工作原理

整合起来

回到Web镇可乐公司

测试排序代码

练习答案

11 匿名函数、作用域和闭包

11 匿名函数、作用域和闭包:系统地讨论函数

函数的另一面

如何使用匿名函数

别这么嗦好不好

函数是在什么时候定义的?这要看情况

为何fly未定义

如何嵌套函数

嵌套对作用域的影响

词法作用域简介

词法作用域的有趣之处

再谈函数

再谈函数调用

闭包到底是什么

敲定函数

使用闭包实现神奇的计数器

测试神奇的计数器

揭秘

通过将函数表达式用作实参来创建闭包

闭包包含的是实际环境,而非环境的副本

使用事件处理程序来创建闭包

不使用闭包

使用闭包

测试按钮单击计数器

用作按钮单击处理程序的闭包的工作原理

12 高级对象构造技巧

12 高级对象构造技巧:创建对象

使用对象字面量创建对象

按约定创建对象

对象构造函数简介

如何创建构造函数

如何使用构造函数

构造函数的工作原理

还能在构造函数中定义方法

生产时间到了

试驾一些新车

不要将对象字面量弃若敝屣

用一个对象字面量替代所有实参

修改构造函数Car

理解对象实例

即便是创建好的对象,也可以有独特的属性

内置构造函数

数组对象

其他内置对象

13 使用原型

13 使用原型:超强的对象创建方式

先来介绍一种更好的对象图

再谈构造函数:它能让我们重用代码,但效率如何呢

重复的方法真是个问题吗

原型是什么

继承原型

继承的工作原理

重写原型

原型从哪里来

如何设置原型

创建几个小狗对象并对原型进行测试

编写让Spot发出叫声时显示says WOOF!的代码

原型是动态的

方法sit更有趣的实现

再谈属性sitting的工作原理

如何设计表演犬

建立原型链

原型链中的继承原理

创建表演犬原型

首先,需要一个继承小狗原型的对象

接下来,将新建的小狗实例变成表演犬原型

该补全原型了

创建表演犬实例

测试表演犬

研究练习结果

最后的整理

继续清理

Dog.call详解

最后的测试

小狗原型并非原型链的终点

充分发挥继承的威力之重写内置行为

充分发挥继承的威力之扩展内置对象

测试俗语检查器

JavaScript大统一理论

使用对象改善生活

整合起来

继续学习

A 附录 遗漏内容

附录 遗漏内容:未涉足的十大主题

#1. jQuery

#2. 更多地使用DOM

#3. 对象window

#4. arguments

#5. 处理异常

#6. 使用addEventListener添加事件处理程序

IE8和更早版本中的事件处理

#7. 正则表达式

#8. 递归

#9. JSON

#10. 服务器端JavaScript

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部