nodejs学习手册 中文PDF版 NODE.js入门手册
http://www.100md.com
2015年1月14日
![]() |
| 第1页 |
![]() |
| 第2页 |
![]() |
| 第8页 |
![]() |
| 第16页 |
![]() |
| 第23页 |
![]() |
| 第44页 |
![]() |
| 第57页 |
![]() |
| 第90页 |
![]() |
| nodejs学习手册 |
参见附件(1018KB,91页)。
nodejs学习手册,是关于nodejs技术的一本入门手册。本书致力于教会你如何用Node.js 来开发应用,过程中会传授你所有所需的“高级”javascript 知识。本书绝不是一本“Hello World” 的教程。你阅读的已经是本书的最终版。因此,只有当进行错误更正以及针对新版本Node.js的改动进行对应的修正时,才会进行更新。书中的代码案例都在Node.js 0.4.9 版本中测试过,可以正确工作。
Node.js简介
Node.js 是一个基于Chrome JavaScript 运行时建立的一个平台, 用来方便地搭建快速的 易于扩展的网络应用· Node.js 借助事件驱动, 非阻塞I/O 模型变得轻量和高效, 非常适合 运行在分布式设备 的 数据密集型 的实时应用。
V8引擎执行Javascript的速度非常快,性能非常好。Node对一些特殊用例进行了优化,提供了替代的API,使得V8在非浏览器环境下运行得更好。
V8引擎本身使用了一些最新的编译技术。这使得用Javascript这类脚本语言编写出来的代码运行速度获得了极大提升,却节省了开发成本。对性能的苛求是Node的一个关键因素。 Javascript是一个事件驱动语言,Node利用了这个优点,编写出可扩展性高的服务器。Node采用了一个称为“事件循环(event loop)”的架构,使得编写可扩展性高的服务器变得既容易又安全。提高服务器性能的技巧有多种多样。Node选择了一种既能提高性能,又能减低开发复杂度的架构。这是一个非常重要的特性。并发编程通常很复杂且布满地雷。Node绕过了这些,但仍提供很好的性能。
读者对象
本书最适合与我有相似技术背景的读者:至少对一门诸如Ruby、Python、php 或者Java 这样面向对象的语言有一定的经验;对JavaScript 处于初学阶段,并且完全是一个Node.js的新手。这里指的适合对其他编程语言有一定经验的开发者,意思是说,本书不会对诸如数据类型、变量、控制结构等等之类非常基础的概念作介绍。
本书目录
授權 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1
作者 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
下載電子書 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
原始碼 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
0.1 精選文章收錄流程 . . . . . . . . . . . . . . . . . . . . . . . . 3
前言 5
1 Node.js 簡介 7
2 JavaScript 與 NodeJS 11
2.1 Event Loop . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
2.2 Scope 與 Closure . . . . . . . . . . . . . . . . . . . . . . . . . . 12
2.3 Callback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
2.4 CPS(Continuation-Passing Style) . . . . . . . . . . . . . . . . 16
2.5 函數返回函數與 Currying . . . . . . . . . . . . . . . . . . . . . 17
2.6 流程控制 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
i
3 Node.js 安裝與設定 25
3.1 ubuntu Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
3.2 Other Linux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
3.3 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26
4 Node.js 基礎 29
4.1 node.js http 伺服器建立 . . . . . . . . . . . . . . . . . . . . . . 29
4.2 node.js http 路徑建立 . . . . . . . . . . . . . . . . . . . . . . . 31
4.3 node.js 檔案讀取 . . . . . . . . . . . . . . . . . . . . . . . . . . 34
4.4 node.js http 靜態檔案輸出 . . . . . . . . . . . . . . . . . . . . . 36
4.5 node.js http GET 資料擷取 . . . . . . . . . . . . . . . . . . . . 38
4.6 本章結語 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40
5 NPM 套件管理工具 41
5.1 安裝 NPM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41
5.2 使用 NPM 安裝套件 . . . . . . . . . . . . . . . . . . . . . . . 45
5.3 套件的更新及維護 . . . . . . . . . . . . . . . . . . . . . . . . 48
5.4 使用 package.json . . . . . . . . . . . . . . . . . . . . . . . . . . 49
6 Express 介紹 51
6.1 Express 安裝 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51
6.2 Express 基本操作 . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.3 Express 路由處理 . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6.4 Express middleware . . . . . . . . . . . . . . . . . . . . . . . . . 55
6.5 Express 路由應用 . . . . . . . . . . . . . . . . . . . . . . . . . . 56
6.6 Express GET 應用範例 . . . . . . . . . . . . . . . . . . . . . . . 57
6.7 Express POST 應用範例 . . . . . . . . . . . . . . . . . . . . . . 60
6.8 Express AJAX 應用範例 . . . . . . . . . . . . . . . . . . . . . . 63
6.9 原始資料提供 . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
7 CoffeeScript 69
8 製作一個 Hubot 的 Plurk Adapter 71
8.1 應用事項提醒 . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
8.2 建立 Adapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71
ii
8.3 建立 Robot 跟 API . . . . . . . . . . . . . . . . . . . . . . . . . 72
8.4 原始資料提供 . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
9 Node.js 好用工具介紹 79
9.1 log.io . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
10 精選文章 81
10.1 Express . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81
11 參考資源 83
11.1 Node.js 書籍 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83
11.2 Node.js 影音教學 . . . . . . . . . . . . . . . . . . . . . . . . . 84
11.3 Node.js 教學網站 . . . . . . . . . . . . . . . . . . . . . . . . . 84
11.4 Node.js 課程 . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84
相关资料1:
- 荣耀_NOTE8_用户指南_Edison-AL10_01_中文.pdf
- s3c2440a_20IIC.pdf
- 针灸临床配方手册(于致顺).pdf
- 2017款帕萨特用户手册 pdf电子版
- s3c2440a_7clock&power.pdf
- 儿童经络使用手册(萧言生).pdf
- jscript中文参考手册.chm 电子版
- Eva快速指南 (AL10&AL00&CL00&DL00&TL00,02).pdf
- 金蝶eas工作流用户手册 v8.2 官方免费版
- 《心理学研究手册》 - Freddrick.pdf
- 《创业7堂课+社群营销实战手册》读书笔记ppt模板.pptx
- 《振宇锐智·中国汉字听写手册:高级-向中国魅力汉字致敬-词典题库精选-方振宇》.pdf
- 斯柯达柯迪亚克产品使用手册 pdf电子版
- 卖手—冠军推销手册.pdf
- 《你的安全防护手册:就喜欢你看不惯我又打不过我的样子》.pdf








