編輯推薦
五子棋、乒乓球、貪吃蛇、小蜜蜂……這些經典遊戲你也能製作
每次兩分鍾,遊戲編程輕鬆學
少年創學院院長、知名創客程晨zui新力作,讓你體驗全新創客式學習過程
內容簡介
JavaScript是一種直譯式腳本語言,它的一個很大的優勢就是絕大多數瀏覽器都包含瞭JavaScript的解釋器,這樣我們在學習JavaScript時不需要安裝任何開發軟件,隻要寫一個網頁文件,嵌入JavaScript代碼就能在瀏覽器中進行代碼的調試,非常方便。對於硬件愛好者來說,學習JavaScript還有一個好處就是能讓自己的硬件作品更貼近IoT(物聯網)應用。瞭解瞭JavaScript,我們能夠在顯示的頁麵上實現更多的效果,同時,目前有很多硬件也支持用JavaScript來編程。
本書以製作國際象棋、五子棋、彈球、貪吃蛇、拼圖、打飛機等經典遊戲為例,帶你從零起步,學習JavaScript的編程方法,適閤對遊戲和編程感興趣的初學者閱讀。而且本書融入瞭創客的項目式思路,在一個個實例的製作過程中學習知識,語言通俗易懂,圖文並茂,會帶給你與以往內容枯燥的編程教程完全不同的全新體驗。
作者簡介
程晨
創客布道師、創客教育踐行者,擁有十多年嵌入式開發經驗,技術方麵涉獵廣泛,先後主持參與十多項軍民科研産品的研發,擁有多項發明專利。少年創學院聯閤創始人兼院長、濼喜教育聯閤創始人兼技術總監,兼任Intel軟件創新大使、中國電子學會全國青少年機器人技術等級考試標準工作組副組長、中國教育技術協會數字教育資源專業委員會專傢的職務。第1本Arduino中文書作者,編著、翻譯開源硬件、3D打印、機器人、智能硬件、物聯網等領域相關圖書十多本,長期在《無綫電》雜誌刊登技術類文章。參與錄製CCTV《原來如此》節目,錄製多套開源硬件項目視頻教程。曾任北京航空航天大學、北京郵電大學特聘講師,參與清華大學、北京科技大學等多所高校的創新性課程設計。
目錄
01 認識JavaScript.................................................................................1
1.1 緣起...............................................................................................................1
1.2 曆史...............................................................................................................1
1.3 特性...............................................................................................................2
02 類型和變量.........................................................................................4
2.1 瀏覽器中的控製颱..........................................................................................4
2.2 數字和運算符.................................................................................................5
2.3 變量...............................................................................................................6
2.4 變量命名規則.................................................................................................7
2.5 字符串.......................................................................................................... 8
2.5.1 連接字符串… ………………………………………………………………………… 9
2.5.2 獲取字符串的長度… ……………………………………………………………… 10
2.5.3 獲取單個字符… …………………………………………………………………… 10
2.5.4 截取字符串… ……………………………………………………………………… 11
2.5.5 大小寫轉化… ……………………………………………………………………… 11
2.6 邏輯運算..................................................................................................... 12
2.6.1 布爾類型… ………………………………………………………………………… 12
2.6.2 邏輯運算符… ……………………………………………………………………… 12
2.6.3 關係運算符… ……………………………………………………………………… 14
2.7 underfined 和null...................................................................................... 16
2.8 原始類型..................................................................................................... 16
2.8.1 鑒彆原始類型… …………………………………………………………………… 16
2.8.2 原始方法… ………………………………………………………………………… 17
03 數組................................................................................................18
3.1 創建數組..................................................................................................... 18
3.2 訪問數組元素.............................................................................................. 18
3.3 修改數組元素.............................................................................................. 19
3.4 應用數組..................................................................................................... 20
3.4.1 查看數組長度… …………………………………………………………………… 20
3.4.2 添加數組元素… …………………………………………………………………… 20
3.4.3 刪除數組元素… …………………………………………………………………… 21
3.4.4 數組相加… ………………………………………………………………………… 22
3.4.5 查找元素的序號… ………………………………………………………………… 22
3.4.6 將數組轉換成字符串… …………………………………………………………… 23
04 對話框.............................................................................................24
4.1 HTML 基礎................................................................................................. 24
4.2 嵌入JavaScript 代碼.................................................................................. 25
4.3 對話框........................................................................................................ 27
4.3.1 輸入對話框… ……………………………………………………………………… 27
4.3.2 確定對話框… ……………………………………………………………………… 29
4.3.3 if 語句… …………………………………………………………………………… 31
4.3.4 警告對話框… ……………………………………………………………………… 32
4.4 DOM.......................................................................................................... 33
4.4.1 用ID 標識元素……………………………………………………………………… 33
4.4.2 選中元素… ………………………………………………………………………… 34
4.4.3 替換文本內容… …………………………………………………………………… 34
05 繪製國際象棋棋盤.............................................................................37
5.1 canvas 元素............................................................................................... 37
5.2 繪製方塊..................................................................................................... 38
5.3 繪製方框..................................................................................................... 39
5.4 繪製棋盤..................................................................................................... 41
5.5 循環結構..................................................................................................... 42
5.5.1 while 語句… ………………………………………………………………………… 42
5.5.2 do-while 語句… …………………………………………………………………… 43
5.5.3 for 循環……………………………………………………………………………… 44
06 五子棋.............................................................................................48
6.1 基本繪圖方式.............................................................................................. 48
6.1.1 繪製綫條… ………………………………………………………………………… 48
6.1.2 填充路徑… ………………………………………………………………………… 49
6.1.3 繪製圓弧和圓… …………………………………………………………………… 50
6.2 繪製棋盤..................................................................................................... 51
6.3 鼠標交互..................................................................................................... 52
6.4 繪製棋子..................................................................................................... 54
6.5 黑子和白子................................................................................................. 56
6.6 獲勝判斷..................................................................................................... 59
6.7 函數............................................................................................................ 63
6.7.1 函數的形式… ……………………………………………………………………… 63
6.7.2 落子函數… ………………………………………………………………………… 64
6.7.3 獲勝檢測函數… …………………………………………………………………… 65
07 彈球遊戲..........................................................................................69
7.1 對象............................................................................................................ 69
7.2 對象的方法................................................................................................. 70
7.3 定時功能..................................................................................................... 71
7.4 邊界判斷..................................................................................................... 72
7.5 增加擋闆..................................................................................................... 73
7.6 鍵盤交互..................................................................................................... 74
08 貪吃蛇.............................................................................................78
8.1 構造函數..................................................................................................... 78
8.2 原型方法..................................................................................................... 78
8.3 貪吃蛇遊戲的框架....................................................................................... 79
8.4 貪吃蛇的移動.............................................................................................. 80
8.5 貪吃蛇的控製.............................................................................................. 82
8.6 添加蘋果..................................................................................................... 83
8.7 吃蘋果........................................................................................................ 84
8.8 生成新蘋果................................................................................................. 86
8.9 顯示分數..................................................................................................... 87
8.9.1 設置文本基綫… …………………………………………………………………… 90
8.9.2 設置文本的大小和字體… ………………………………………………………… 91
8.10 遊戲結束................................................................................................... 93
8.11 碰撞檢測................................................................................................... 93
09 拼圖遊戲
JavaScript網頁遊戲製作輕鬆學 下載 mobi epub pdf txt 電子書