Node.js從入門到精通

Node.js從入門到精通

《Node.js從入門到精通》是2023年8月1日清華大學出版社出版的圖書,作者:明日科技。

基本介紹

  • 中文名:Node.js從入門到精通
  • 作者:明日科技
  • 出版時間:2023年8月1日
  • 出版社:清華大學出版社
  • ISBN:9787302639831
  • 定價:89.8 元
  • 印次:1-1
  • 印刷日期:2023.08.04
內容簡介,圖書目錄,

內容簡介

《Node.js從入門到精通》從初學者角度出發,通過通俗易懂的語言、豐富多彩的實例,詳細介紹了使用Node.js進行Web套用開發需要掌握的各方面技術。全書分為4篇,共18章,包括Node.js環境搭建、第一個Node.js伺服器程式、npm包管理器的使用、Node.js基礎、事件的監聽與觸發、util工具模組、fs檔案系統模組、os作業系統模組、異步編程與回調、I/O流操作、Web套用構建基礎、WebSocket網路編程、Web模板引擎、Express框架、數據存儲之MySQL資料庫、數據存儲之MongoDB資料庫、程式調試與異常處理、線上五子棋遊戲等內容。本書知識點結合具體實例進行介紹,涉及的程式代碼給出了詳細的注釋,可以使讀者輕鬆領會使用Node.js進行Web套用開發的精髓,快速提高開發技能。

圖書目錄

第1篇 基礎知識
第1章 Node.js環境搭建 2
視頻講解:35分鐘
1.1 認識Node.js 2
1.1.1 什麼是Node.js 2
1.1.2 Node.js的工作原理 4
1.1.3 Node.js的優缺點 5
1.1.4 Node.js能做什麼 5
1.1.5 誰在使用Node.js 6
1.2 Node.js的下載與安裝 6
1.2.1 下載並安裝Node.js 6
1.2.2 測試Node.js是否安裝成功 9
1.3 熟悉WebStorm開發工具 10
1.3.1 WebStorm的下載 10
1.3.2 WebStorm的安裝 11
1.3.3 WebStorm首次載入配置 12
1.3.4 WebStorm功能區預覽 16
1.3.5 WebStorm中英文對照選單 16
1.3.6 工具列 18
1.3.7 常用快捷鍵 18
1.4 要點回顧 19
第2章 第一個Node.js伺服器程式 20
視頻講解:6分鐘
2.1 使用WebStorm創建第一個Node.js程式 20
2.2 在WebStorm中運行Node.js程式 23
2.3 使用cmd命令運行Node.js程式 25
2.4 解決Node.js程式輸出中文時出現亂碼的問題 26
2.5 要點回顧 27
第3章 npm包管理器的使用 28
視頻講解:8分鐘
3.1 npm包管理器基礎 28
3.1.1 npm概述 28
3.1.2 查看npm的版本 29
3.1.3 常用npm軟體包 30
3.2 package.json基礎 32
3.2.1 認識package.json 32
3.2.2 npm中的package-lock.json檔案 34
3.3 使用npm包管理器安裝包 36
3.3.1 安裝單個軟體包 36
3.3.2 安裝軟體包的指定版本 38
3.3.3 安裝所有軟體包 39
3.3.4 更新軟體包 41
3.3.5 指定npm軟體包的安裝位置 41
3.3.6 卸載npm軟體包 42
3.4 要點回顧 43
第4章 Node.js基礎 44
視頻講解:34分鐘
4.1 Node.js全局對象 44
4.1.1 全局變數 44
4.1.2 全局對象 45
4.1.3 全局函式 49
4.2 模組化編程 51
4.2.1 exports對象 51
4.2.2 module對象 52
4.3 要點回顧 53
第5章 事件的監聽與觸發 54
視頻講解:21分鐘
5.1 EventEmitter對象 54
5.2 添加和觸發監聽事件 57
5.2.1 添加監聽事件 57
5.2.2 添加單次監聽事件 59
5.2.3 觸發監聽事件 60
5.3 刪除監聽事件 61
5.4 要點回顧 63
第2篇 核心技術
第6章 util工具模組 66
視頻講解:3分鐘
6.1 util模組概述 66
6.2 util模組的使用 67
6.2.1 格式化輸出字元串 67
6.2.2 將對象轉換為字元串 68
6.2.3 實現對象間的原型繼承 69
6.2.4 轉換異步函式的風格 70
6.2.5 判斷是否為指定類型的內置對象 70
6.3 要點回顧 73
第7章 fs檔案系統模組 74
視頻講解:47分鐘
7.1 檔案的讀取與寫入 74
7.1.1 檢查檔案是否存在 74
7.1.2 檔案讀取 77
7.1.3 檔案寫入 79
7.1.4 檔案操作時的異常處理 82
7.2 檔案操作 83
7.2.1 截斷檔案 83
7.2.2 刪除檔案 84
7.2.3 複製檔案 85
7.2.4 重命名檔案 87
7.3 目錄操作 88
7.3.1 創建目錄 88
7.3.2 讀取目錄 91
7.3.3 刪除空目錄 91
7.3.4 查看目錄信息 92
7.3.5 獲取目錄的絕對路徑 94
7.4 要點回顧 95
第8章 os作業系統模組 96
視頻講解:2分鐘
8.1 獲取記憶體相關信息 96
8.1.1 獲取系統剩餘記憶體 96
8.1.2 獲取系統總記憶體 97
8.2 獲取網路相關信息 98
8.3 獲取系統相關目錄 99
8.3.1 獲取用戶主目錄 99
8.3.2 獲取臨時檔案目錄 99
8.4 獲取系統相關信息 100
8.5 os模組常用屬性 106
8.6 要點回顧 107
第9章 異步編程與回調 108
視頻講解:31分鐘
9.1 同步和異步 108
9.2 回調函式 110
9.3 使用async/await的異步編程 112
9.3.1 Promise基礎 112
9.3.2 為什麼使用async/await 115
9.3.3 async/await的使用 116
9.3.4 使用async/await異步編程的優點 118
9.4 要點回顧 118
第10章 I/O流操作 119
視頻講解:71分鐘
10.1 流簡介 119
10.1.1 流的基本概念 119
10.1.2 了解Buffer 120
10.2 可讀流的使用 120
10.2.1 流的讀取模式與狀態 120
10.2.2 可讀流的創建 121
10.2.3 可讀流的屬性、方法及事件 121
10.2.4 可讀流的常見操作 123
10.3 可寫流的使用 127
10.3.1 可寫流的創建 127
10.3.2 可寫流的屬性、方法及事件 128
10.3.3 可寫流的常見操作 129
10.4 雙工流與轉換流介紹 132
10.4.1 雙工流 132
10.4.2 轉換流 133
10.5 要點回顧 135
第3篇 高級套用
第11章 Web套用構建基礎 138
視頻講解:97分鐘
11.1 Web套用開發基礎 138
11.1.1 請求與回響 138
11.1.2 客戶端與伺服器端 139
11.2 url和querystring模組 141
11.2.1 url模組 141
11.2.2 querystring模組 142
11.3 http模組 143
11.3.1 server對象 143
11.3.2 response對象 144
11.3.3 request對象 149
11.4 path模組 152
11.4.1 絕對路徑和相對路徑 152
11.4.2 path模組的常見操作 153
11.4.3 path模組的屬性 161
11.5 要點回顧 161
第12章 WebSocket網路編程 162
視頻講解:41分鐘
12.1 WebSocket網路編程的基本實現 162
12.1.1 WebSocket伺服器端實現 163
12.1.2 WebSocket客戶端實現 164
12.1.3 伺服器端和客戶端的通信 166
12.2 socket數據通信類型 169
12.2.1 public通信類型 169
12.2.2 broadcast通信類型 172
12.2.3 private通信類型 174
12.3 客戶端分組的實現 177
12.4 項目實戰—聊天室 182
12.4.1 伺服器端實現 182
12.4.2 客戶端實現 183
12.4.3 運行項目 185
12.5 要點回顧 185
第13章 Web模板引擎 186
視頻講解:33分鐘
13.1 ejs模組 186
13.1.1 ejs模組的渲染方法 186
13.1.2 ejs模組的數據傳遞 191
13.2 pug模組 194
13.2.1 pug檔案基本語法 194
13.2.2 pug模組的渲染方法 199
13.2.3 pug模組的數據傳遞 201
13.3 要點回顧 203
第14章 Express框架 204
視頻講解:102分鐘
14.1 認識express模組 205
14.1.1 express模組的基本使用步驟 205
14.1.2 express模組中的回響對象 205
14.1.3 express模組中的請求對象 207
14.2 express模組中間件 208
14.2.1 認識中間件 208
14.2.2 router中間件 209
14.2.3 static中間件 210
14.2.4 cookie parser中間件 211
14.2.5 body parser中間件 213
14.3 實現RESTful Web服務 216
14.4 express-generator模組 219
14.4.1 創建項目 219
14.4.2 設定項目參數 221
14.4.3 express-generator模組套用 222
14.5 Koa框架基礎 228
14.5.1 認識Koa框架 228
14.5.2 Koa框架的基本使用 228
14.6 項目實戰—選座購票 230
14.7 要點回顧 235
第15章 數據存儲之MySQL資料庫 236
視頻講解:39分鐘
15.1 MySQL資料庫的下載和安裝 236
15.1.1 資料庫簡介 236
15.1.2 下載MySQL 237
15.1.3 安裝MySQL 238
15.1.4 配置MySQL環境變數 245
15.1.5 啟動MySQL 247
15.1.6 使用Navicat for MySQL管理軟體 248
15.2 MySQL資料庫操作基礎 250
15.2.1 認識SQL語言 250
15.2.2 資料庫操作 250
15.2.3 數據表操作 252
15.2.4 數據的增刪改查 257
15.3 在Node.js中操作MySQL資料庫 262
15.3.1 Node.js中的mysql模組 262
15.3.2 Node.js中對MySQL實現增刪改查操作 267
15.4 要點回顧 274
第16章 數據存儲之MongoDB資料庫 275
視頻講解:47分鐘
16.1 MongoDB資料庫的下載、安裝與配置 275
16.1.1 關係型資料庫與非關係型資料庫 276
16.1.2 下載MongoDB資料庫 276
16.1.3 安裝MongoDB資料庫 277
16.1.4 配置並測試MongoDB資料庫 279
16.2 MongoDB資料庫基本操作 282
16.2.1 使用JavaScript語言 282
16.2.2 資料庫、集合與文檔 283
16.2.3 添加數據 284
12.2.4 查詢數據 285
16.2.5 修改數據 286
16.2.6 刪除數據 287
16.3 項目實戰—心情日記 287
16.3.1 Node.js中的mongojs模組 288
16.3.2 初始化數據 289
16.3.3 主頁的實現 290
16.3.4 添加日記 291
16.3.5 修改日記 293
16.3.6 刪除日記 294
16.3.7 用戶登錄與退出 295
16.4 要點回顧 297
第17章 程式調試與異常處理 298
視頻講解:20分鐘
17.1 使用console.log()方法調試程式 298
17.2 使用WebStorm調試程式 299
17.2.1 插入斷點 299
17.2.2 刪除斷點 300
17.2.3 禁用斷點 301
17.2.4 斷點調試 302
17.3 Node.js程式異常處理 303
17.3.1 使用throw關鍵字拋出異常 303
17.3.2 Error錯誤對象 304
17.3.3 使用try…catch語句捕獲異常 305
17.3.4 異步程式中的異常處理 306
17.4 要點回顧 307
第4篇 項目實戰
第18章 線上五子棋遊戲 310
視頻講解:33分鐘
18.1 需求分析 310
18.2 遊戲設計 311
18.2.1 遊戲功能結構 311
18.2.2 遊戲業務流程 311
18.2.3 遊戲預覽 312
18.3 遊戲開發準備 313
18.3.1 遊戲開發環境 313
18.3.2 遊戲項目構成 314
18.4 登錄遊戲房間設計 314
18.4.1 登錄遊戲房間概述 314
18.4.2 登錄遊戲房間的實現 315
18.5 遊戲玩家列表設計 317
18.5.1 遊戲玩家列表概述 317
18.5.2 遊戲玩家列表的實現 317
18.6 遊戲對戰設計 318
18.6.1 遊戲對戰概述 318
18.6.2 遊戲對戰頁面初始化 319
18.6.3 繪製棋盤 322
18.6.4 遊戲算法及勝負判定 324
18.6.5 重新開始遊戲 325
18.6.6 更改棋盤顏色 326
18.7 要點回顧 327
附錄A JavaScript基礎 328
A.1 Node.js與JavaScript 328
A.2 JavaScript在HTML中的使用 328
A.2.1 在頁面中直接嵌入JavaScript代碼 328
A.2.2 連結外部JavaScript檔案 330
A.2.3 作為標籤的屬性值使用 331
A.3 JavaScript基本語法規則 331
A.4 JavaScript數據類型 333
A.4.1 數值型 333
A.4.2 字元串型 336
A.4.3 布爾值和特殊數據類型 338
A.5 JavaScript流程控制 339
A.5.1 條件判斷語句 339
A.5.2 循環控制語句 342
A.6 JavaScript函式 345
A.6.1 函式的定義 345
A.6.2 函式的調用 346
A.7 DOM 348
A.7.1 DOM概述 348
A.7.2 DOM對象節點屬性 349
A.7.3 DOM對象的套用 349
A.8 Document對象 350
A.8.1 Document對象介紹 350
A.8.2 Document對象的常用屬性 350
A.8.3 Document對象的常用方法 351
A.8.4 設定文檔背景色和前景色 351
A.8.5 設定動態標題欄 352
A.8.6 在文檔中輸出數據 352
A.8.7 獲取文本框並修改其內容 353
A.9 Window對象 354
A.9.1 Window對象的屬性 354
A.9.2 Window對象的方法 355
A.9.3 Window對象的使用 355

相關詞條

熱門詞條

聯絡我們