趣學(xué)javascript 教孩子學(xué)編程
定 價(jià):59 元
- 作者:[美] Nick Morgan 摩根 著
- 出版時(shí)間:2015/11/23
- ISBN:9787115406132
- 出 版 社:人民郵電出版社
- 中圖法分類:TP312JA
- 頁(yè)碼:273
- 紙張:純質(zhì)紙
- 版次:1
- 開(kāi)本:16開(kāi)
JavaScript是Internet的語(yǔ)言,是創(chuàng)建令人驚訝的Web、你喜歡的站點(diǎn)交互和在線游戲的秘密武器。
《趣學(xué)JavaScript 教孩子學(xué)編程》用輕松愉快的方式,通過(guò)耐心的、按部就班的示例,以及充滿樂(lè)趣的圖示,幫助讀者輕松地學(xué)習(xí)編程基礎(chǔ)知識(shí)。全書共16章,從基礎(chǔ)知識(shí)開(kāi)始,詳細(xì)介紹了操作字符串、數(shù)組以及循環(huán),然后繼續(xù)學(xué)習(xí)一些高級(jí)話題,如使用jQuery構(gòu)建交互性,以及使用畫布繪圖等。本書通過(guò)教授編寫一些簡(jiǎn)單有趣的游戲,幫助讀者掌握J(rèn)avaScript編程。每一章都構(gòu)建于上一章的基礎(chǔ)之上,并且每章末尾的編程挑戰(zhàn)能夠激發(fā)讀者更多的思考和學(xué)習(xí)興趣。
《趣學(xué)JavaScript 教孩子學(xué)編程》針對(duì)任何想要學(xué)習(xí)JavaScript或初次接觸編程的人。本書針對(duì)兒童學(xué)習(xí)JavaScript量身定做,但也適合作為不同年齡的初學(xué)者的第1本編程圖書。
全彩色印刷,零基礎(chǔ)學(xué)編程,孩子也能讀懂的編程圖書教授思路清晰,內(nèi)容活潑,易于學(xué)習(xí)和掌握通過(guò)有趣的繪圖程序或游戲,激發(fā)讀者的學(xué)習(xí)興趣每章末尾的編程挑戰(zhàn),舉一反三,幫助讀者牢固掌握所學(xué)的知識(shí)和技能
Nick Morgan是Twitter的一名前端工程師。他熱愛(ài)編程,并且特別關(guān)注JavaScript。Nick和她的未婚妻,以及他們的絨毛犬Pancake,居住在舊金山。他的博客是skilldrick.co.uk。
目 錄
第1部分 基礎(chǔ)知識(shí)
第1章 認(rèn)識(shí)JavaScript2
1.1 認(rèn)識(shí)JavaScript3
1.2 為何要學(xué)習(xí)JavaScript5
1.3 編寫JavaScript5
1.4 JavaScript程序的結(jié)構(gòu)7
1.4.1 語(yǔ)法8
1.4.2 注釋9
1.5 本章小結(jié)10
第2章 類型與變量11
2.1 數(shù)字和運(yùn)算符12
2.2 變量15
2.2.1 命名變量16
2.2.2 使用數(shù)學(xué)創(chuàng)建新的變量17
2.2.3 遞增和遞減18
2.2.4 +=(加后賦值)和-=(減后賦值)19
2.3 字符串20
2.3.1 連接字符串21
2.3.2 查找字符串的長(zhǎng)度22
2.3.3 從字符串中獲取單個(gè)字符22
2.3.4 截取字符串23
2.3.5 把字符串轉(zhuǎn)換為全部大寫或全部小寫24
2.4 Boolean26
2.4.1 邏輯操作符26
2.4.2 用Boolean比較數(shù)字28
2.5 undefined和null32
2.6 本章小結(jié)33
第3章 數(shù)組34
3.1 為什么要學(xué)習(xí)數(shù)組35
3.2 創(chuàng)建數(shù)組36
3.3 訪問(wèn)數(shù)組元素37
3.4 設(shè)置和修改數(shù)組中的元素38
3.5 數(shù)組中的混合數(shù)據(jù)類型39
3.6 使用數(shù)組40
3.6.1 查看數(shù)組的長(zhǎng)度40
3.6.2 為數(shù)組添加元素41
3.6.3 從數(shù)組中刪除元素42
3.6.4 數(shù)組相加44
3.6.5 查找數(shù)組中單個(gè)元素的索引46
3.6.6 把數(shù)組轉(zhuǎn)換成字符串46
3.7 數(shù)組的用途48
3.7.1 找到回家的路48
3.7.2 決策者程序50
3.7.3 創(chuàng)建一個(gè)隨機(jī)句子生成器52
3.8 本章小結(jié)53
3.9 編程挑戰(zhàn)54
第4章 對(duì)象55
4.1 創(chuàng)建對(duì)象56
4.2 訪問(wèn)對(duì)象中的值58
4.3 給對(duì)象添加值58
4.4 把數(shù)組和對(duì)象組合到一起60
4.5 在控制臺(tái)查看對(duì)象62
4.6 對(duì)象的用途63
4.6.1 記錄欠款64
4.6.2 保存電影信息65
4.7 本章小結(jié)66
4.8 編程挑戰(zhàn)66
第5章 HTML的基礎(chǔ)知識(shí)68
5.1 文本編輯器69
5.2 **個(gè)HTML文檔70
5.3 標(biāo)簽和元素70
5.3.1 標(biāo)題元素71
5.3.2 段落元素71
5.3.3 HTML中的空白和塊級(jí)元素72
5.3.4 內(nèi)聯(lián)元素73
5.4 完整的HTML文檔74
5.5 HTML層級(jí)75
5.6 為HTML添加鏈接76
5.6.1 link屬性76
5.6.2 title屬性77
5.7 本章小結(jié)78
第6章 條件與循環(huán)79
6.1 在HTML中嵌入JavaScript80
6.2 條件81
6.2.1 if語(yǔ)句81
6.2.2 if…else語(yǔ)句82
6.2.3 if…else語(yǔ)句串83
6.3 循環(huán)86
6.3.1 while循環(huán)86
6.3.2 for 循環(huán)88
6.4 本章小結(jié)91
6.5 編程挑戰(zhàn)91
第7章 創(chuàng)建Hangman游戲94
7.1 與玩家交互95
7.1.1 創(chuàng)建一個(gè)輸入對(duì)話框95
7.1.2 使用confirm函數(shù)詢問(wèn)Yes或者No97
7.1.3 使用alert為玩家提供信息98
7.1.4 為什么使用alert對(duì)話框而不是console.log呢98
7.2 設(shè)計(jì)游戲99
7.2.1 使用偽代碼來(lái)設(shè)計(jì)游戲99
7.2.2 記錄單詞的狀態(tài)100
7.2.3 設(shè)計(jì)游戲循環(huán)101
7.3 編寫游戲代碼101
7.3.1 選擇一個(gè)隨機(jī)單詞101
7.3.2 創(chuàng)建answerArray數(shù)組102
7.3.3 編寫游戲循環(huán)102
7.3.4 結(jié)束游戲106
7.4 游戲代碼106
7.5 本章小結(jié)108
7.6 編程挑戰(zhàn)108
第8章 函數(shù)110
8.1 函數(shù)的基本結(jié)構(gòu)111
8.2 創(chuàng)建一個(gè)簡(jiǎn)單的函數(shù)111
8.3 調(diào)用一個(gè)函數(shù)111
8.4 把參數(shù)傳遞到函數(shù)中112
8.4.1 打印貓臉113
8.4.2 為一個(gè)函數(shù)傳遞多個(gè)參數(shù)114
8.5 從函數(shù)中返回值115
8.6 把函數(shù)調(diào)用當(dāng)作值來(lái)使用117
8.7 使用函數(shù)來(lái)簡(jiǎn)化代碼118
8.7.1 挑選隨機(jī)單詞的函數(shù)118
8.7.2 隨機(jī)句子生成器118
8.7.3 把隨機(jī)句子生成器封裝到一個(gè)函數(shù)中120
8.8 用return提前跳出函數(shù)120
8.9 使用多個(gè)return來(lái)代替if…else語(yǔ)句121
8.10 本章小結(jié)123
8.11 編程挑戰(zhàn)123
第2部分 高級(jí)JavaScript
第9章 DOM和jQuery128
9.1 選擇DOM元素129
9.1.1 用id標(biāo)識(shí)元素129
9.1.2 使用getElementById選中一個(gè)元素130
9.1.3 使用DOM替換標(biāo)題文本130
9.2 用jQuery操作DOM132
9.2.1 在HTML頁(yè)面中加載jQuery133
9.2.2 使用jQuery替代標(biāo)題文本133
9.3 用jQuery創(chuàng)建一個(gè)新的元素134
9.4 使用jQuery讓元素產(chǎn)生動(dòng)畫效果135
9.5 鏈化jQuery的動(dòng)畫方法136
9.6 本章小結(jié)137
9.7 編程挑戰(zhàn)137
第10章 交互式編程139
10.1 使用setTimeout函數(shù)延時(shí)代碼140
10.2 取消一個(gè)timeout141
10.3 用setInterval多次調(diào)用代碼141
10.4 使用setInterval函數(shù)實(shí)現(xiàn)元素動(dòng)畫143
10.5 對(duì)用戶行為做出響應(yīng)145
10.5.1 對(duì)單擊做出響應(yīng)145
10.5.2 鼠標(biāo)移動(dòng)事件147
10.6 本章小結(jié)148
10.7 編程挑戰(zhàn)148
第11章 尋找埋藏的寶藏150
11.1 設(shè)計(jì)游戲151
11.2 用HTML創(chuàng)建Web頁(yè)面152
11.3 選取一個(gè)隨機(jī)藏寶位置153
11.3.1 選取隨機(jī)數(shù)153
11.3.2 設(shè)置寶藏坐標(biāo)153
11.4 單擊事件處理程序154
11.4.1 統(tǒng)計(jì)單擊154
11.4.2 計(jì)算單擊和寶藏之間的距離154
11.4.3 使用畢達(dá)哥拉斯定理155
11.4.4 告訴玩家他們有多近157
11.4.5 檢查玩家是否贏了158
11.5 綜合應(yīng)用158
11.6 本章小結(jié)160
11.7 編程挑戰(zhàn)160
第12章 面向?qū)ο缶幊?61
12.1 一個(gè)簡(jiǎn)單的對(duì)象162
12.2 給對(duì)象添加方法162
12.2.1 使用this關(guān)鍵字163
12.2.2 在多個(gè)對(duì)象之間共享方法163
12.3 使用構(gòu)造方法創(chuàng)建對(duì)象165
12.3.1 剖析構(gòu)造方法165
12.3.2 創(chuàng)建一個(gè)Car構(gòu)造方法165
12.4 繪制汽車167
12.5 測(cè)試drawCar函數(shù)168
12.6 用原型定制對(duì)象169
12.6.1 給Car原型添加一個(gè)draw方法170
12.6.2 添加一個(gè)moveRight方法171
12.6.3 添加向左、向上和向下移動(dòng)的方法172
12.7 本章小結(jié)173
12.8 編程挑戰(zhàn)174
第3部分 Canvas
第13章 canvas元素176
13.1 創(chuàng)建一個(gè)基本的畫布177
13.2 在畫布上繪制177
13.2.1 選擇和保存canvas元素177
13.2.2 獲取繪制環(huán)境178
13.2.3 繪制方塊178
13.2.4 繪制多個(gè)方塊178
13.3 更改繪制顏色180
13.4 繪制矩形邊框181
13.5 繪制線條或路徑182
13.6 填充路徑184
13.7 繪制圓弧和圓185
13.7.1 繪制四分之一圓或一個(gè)圓弧186
13.7.2 繪制一個(gè)半圓187
13.7.3 繪制一個(gè)完整的圓187
13.8 用一個(gè)函數(shù)繪制多個(gè)圓187
13.9 本章小結(jié)189
13.10 編程挑戰(zhàn)190
第14章 在畫布上讓物體移動(dòng)192
14.1 在頁(yè)面中移動(dòng)193
14.1.1 清除畫布194
14.1.2 繪制矩形194
14.1.3 修改位置194
14.1.4 在瀏覽器中查看動(dòng)畫194
14.2 對(duì)方塊的大小實(shí)現(xiàn)動(dòng)畫195
14.3 隨機(jī)的蜜蜂196
14.3.1 一個(gè)新的circle函數(shù)196
14.3.2 繪制蜜蜂197
14.3.3 更新蜜蜂的位置198
14.3.4 實(shí)現(xiàn)嗡嗡飛的蜜蜂動(dòng)畫200
14.4 彈回一個(gè)球201
14.4.1 Ball構(gòu)造方法202
14.4.2 繪制球202
14.4.3 移動(dòng)球203
14.4.4 彈跳球204
14.4.5 實(shí)現(xiàn)球的動(dòng)畫205
14.5 本章小結(jié)206
14.6 編程挑戰(zhàn)207
第15章 用鍵盤控制動(dòng)畫209
15.1 鍵盤事件210
15.1.1 建立HTML文件210
15.1.2 添加keydown事件處理程序210
15.1.3 使用對(duì)象把鍵代碼轉(zhuǎn)換為名稱212
15.2 用鍵盤移動(dòng)一個(gè)球213
15.2.1 設(shè)置畫布213
15.2.2 定義circle函數(shù)214
15.2.3 創(chuàng)建Ball構(gòu)造方法214
15.2.4 定義move方法214
15.2.5 定義draw方法215
15.2.6 創(chuàng)建setDirection方法216
15.2.7 對(duì)鍵盤做出響應(yīng)217
15.2.8 實(shí)現(xiàn)球的動(dòng)畫218
15.3 綜合應(yīng)用219
15.4 運(yùn)行代碼221
15.5 本章小結(jié)222
15.6 編程挑戰(zhàn)222
第16章 開(kāi)發(fā)貪吃蛇游戲第1部分224
16.1 游戲邏輯225
16.2 游戲的結(jié)構(gòu)225
16.2.1 使用setInterval來(lái)實(shí)現(xiàn)游戲動(dòng)畫227
16.2.2 創(chuàng)建游戲?qū)ο?28
16.2.3 設(shè)置鍵盤控制228
16.3 游戲設(shè)置228
16.3.1 創(chuàng)建HTML228
16.3.2 定義canvas、ctx、width和height變量229
16.3.3 將畫布劃分為塊229
16.3.4 定義score變量231
16.4 繪制邊框231
16.5 顯示分?jǐn)?shù)232
16.5.1 設(shè)置文本基線233
16.5.2 設(shè)置大小和字體234
16.5.3 編寫drawScore函數(shù)236
16.6 結(jié)束游戲237
16.7 本章小結(jié)238
16.8 編程挑戰(zhàn)238
第17章 開(kāi)發(fā)貪吃蛇游戲第2部分240
17.1 構(gòu)建Block構(gòu)造方法241
17.1.1 添加drawSquare方法242
17.1.2 添加drawCircle方法243
17.1.3 添加equal方法244
17.2 創(chuàng)建貪吃蛇245
17.2.1 編寫Snake構(gòu)造方法246
17.2.2 繪制貪吃蛇247
17.3 移動(dòng)貪吃蛇247
17.3.1 添加move方法248
17.3.2 添加checkCollision方法251
17.4 用鍵盤設(shè)置貪吃蛇的方向253
17.4.1 添加keydown事件處理程序253
17.4.2 添加setDirection方法254
17.5 創(chuàng)建蘋果255
17.5.1 編寫Apple構(gòu)造方法255
17.5.2 繪制蘋果256
17.5.3 移動(dòng)蘋果256
17.6 綜合應(yīng)用257
17.7 本章小結(jié)262
17.8 編程挑戰(zhàn)263
術(shù)語(yǔ)表265
后記 繼續(xù)學(xué)習(xí)之路269