# 什么是 Node.js
Node.js 是一個基于 Chrome V8 引擎的 JavaScript 運行環境。Node.js 使用了一個事件驅動、非阻塞式 I/O 的模型,使其輕量又高效。說白了就是 Node.js 可以讓用 JavaScript 語言編寫的程序運行在服務端,另外提供操作文件,讀取系統信息等等功能。
# 為什么學 Node.js
* 企業中前端開發必備技能,在前端開發里一般是用來執行編譯 CSS 預編譯語言、預編譯、壓縮、混淆 JS、壓縮圖片、reload、deploy 等工程化任務,常用的平臺有 Grunt 和 Gulp。還有就是前端覺得寫個功能還要等后端搗鼓半天,然后干脆就自己用 JavaScript 把后端搞定。
* 方便與后端開發人員溝通.
* 前端開發工具很多都基于 Node.js,只有會 Node.js,使用起來才能得心應手;
* 社區活躍,上千個成熟模塊供我們選擇使用。
# Node.js 應用場景
* 前端構建工具(grunt/gulp/bower/webpack/fis3…)
* 網站(如 express/koa 等)
* API(移動端,PC,H5)
* IM 即時聊天([socket.io](http://socket.io))
* HTTP proxy(淘寶首頁)
* 寫操作系統(NodeOS)
* 跨平臺打包工具(以前叫 Node-WebKit 現在叫 nw.js)
* 命令行工具(比如 cordova)
- NodeJs
- 01-萬維網
- 02-CS 架構 VS BS 架構
- 03-Web 服務器訪問流程
- 04-url
- 05-網絡傳輸協議
- 06-HTTP 協議
- 07-報文
- 08-命令行界面
- 09-什么是 Node.js
- 10-環境安裝及配置
- 11-JavaScript 代碼運行環境
- 12-全局對象
- 13-Buffer
- 14-模塊化
- 15-EventEmitter
- 16-path模塊
- 17-流式操作
- 18-包
- 19-模板技術
- 20-ejs入門
- 21-express
- 01-什么是express
- 02-Hellow Express
- 03-靜態資源服務
- 04-路由
- 05-模塊化路由處理程序
- 06-中間件
- 07-手動實現中間件
- 08-常用內置中間件和第三方中間件
- 09-響應
- 10-獲取請求參數
- 11-Express 中使用模板引擎
- 22-web存儲與安全
- 01-cookie
- 02-sessionStorage
- 03-localStorage
- 04-base64
- 05-https
- 06-同源策略