大家都知道JavaScript的專長就是處理客戶端也就是與瀏覽器打交道了,所有的與服務器端的交互必須交給后臺語言處理程序去做,基于JavaScript不能與服務器進行直接交互這樣一個現狀,Ryan Dahl決定使用V8引擎來創建JavaScript服務器環境。在此簡單敘述一下這樣做的原因:
- V8引擎很快
- V8專注Web,所以在處理HTTP,DNS,TCP等方面特別擅長
- 大多數Web開發人員都會JavaScript
用一句話來說就是Node.js是一個事件驅動的服務器端JavaScript環境。
也許有人會問了,什么是服務器端的JavaScript?
JavaScript與Web頁面交互就是通常所稱的客戶端JavaScript,因為它發生在瀏覽器或者說客戶端。服務器端JavaScript發生在把頁面發送給瀏覽器之前的服務器上。
安裝Node.js
(因為我的電腦win7,個人比較窮,也沒有蘋果電腦,后臺開發能力也只能說略懂,也沒有在Unix操作系統上測試過,所以在此申請一下,我的操作全部都是在微軟平臺上。不好意思啊)
到nodejs官網首頁 下載相應的版本安裝即可,很簡單的
驗證Node.js是否安裝正確
- 打開Node.js命令提示窗口
- 輸入1+1
- 看一下是否界面顯示2
第一個簡單demo
1、創建server.js,代碼如下
var http = require('http');
http.createServer(function (request, response) {//創建服務器
response.writeHead(200, { 'Content-Type': 'text/plain' });//回傳到客戶端的頭信息
response.end('Hello World! ');//回傳到客戶端的信息
}).listen(3000,'127.0.0.1');//第一個參數為端口 第二個參數為主機地址
console.log('server running at http://127.0.0.1:3000');
2、開始--運行 cmd(也就是打開命令提示符窗口) 把當前路徑cd轉到server.js所在的目錄
3、執行node server(本來是執行node server.js 但因為是js文件,所以默認可以省略.js)
4、打開瀏覽器,輸入網址:http://127.0.0.1:3000 會發現瀏覽器顯示hello world
在此備注一下:
- 即使你只是修改js里面的哪怕一個字符,如果你想看到修改后的效果,那就必須得重新編譯也就是說重新運行node命令
- 要想停止服務器運行并返回終端,可以按ctrl+c(這個命令很方便的)
- Node.js是運行的v8引擎上的,v8是同Google開發的開源的JavaScript引擎。事實上Node.js是個編程平臺
- 關于Node.js,并發的含義是一次做多件事件的能力
NPM(Node Package Manager)Node包管理器
npm允許開發人員在應用程序中創建、共享、重用模塊。說句通俗一點的話,包就是一個功能模塊,也確實是node.js的一個很有特色的地方,為開發人員提供了很多便利。
通過使用模塊可以快速的給應用程序添加許多功能。模塊通常可以為開發人員除去常見的困難。
模塊就是可重用的代碼庫
模塊相關demo
安裝模塊
npm install [module_name]
使用模塊
var module=require('module');
demo具體步驟:
1、創建foo.js,代碼如下
var _ = require('underscore');
_.each([1, 2, 3], function (num) {
console.log('underscore.js says ' + num);
});
2、打開命令提示符,將目錄轉到foo.js所在目錄(文章下面的demo 這個步驟也是必須的 但我省略不寫了哦)
3、運行npm install underscore 安裝underscore包之后命令提示符中將顯示相應的信息 并且在foo.js所在的目錄下多一個node_modules文件夾,node_modules文件夾下有underscore包文件
4、運行node foo
如何找模塊
在終端直接使用npm命令行工具來搜索 也就是npm search [模塊的名稱] 如果有多個關鍵字的話可用空格分開
提示:因為node.js允許大家只有有一個賬戶就可以上傳包,也就是說任何人都可以是node.js模塊的作者,所以盡管模塊可通過npm獲得,但并不代表它是得到良好測試或者說是穩定的,請使用模塊的下載量和項目的問題數量作為模塊的可靠性和成熟度的大致指南。
模塊的安裝方式
有兩種方式
- 本地安裝 npm install [module_name]
- 全局安裝 npm install -g [module_name]
全局安裝意味著可以在文件系統的任何位置運行它。
本地安裝模塊意味著模塊會被安裝在項目內名為node_modules的文件夾中,而且它只可在該項目中使用。
全局安裝模塊意味著模塊可在系統的任何一個地方使用。
作為 一條經驗法則,請本地安裝Node.js模塊。
如何找模塊文件
命令:npm docs [module_name]
這個命令執行之后會打開瀏覽器并進入模塊作者所提供的文檔頁面,不信你可以在終端執行
npm docs underscore
通過運行如下命令查看項目的bug,這會打開瀏覽器并進入模塊作者所提供的問題頁面
npm bugs underscore
事實上還有一條查看源碼命令(但是我電腦老是沒法打開 提示說權限不夠)
npm edit underscore
package.json
在C#中使用using來引用外部程序集,而在node.js中是使用package.json來指定依賴關系。npm允許開發人員使用package.json文件來指定在應用程序中要用的模塊,并且通過單個命令來安裝它們:npm install
可想而知這樣的方式有哪些好處:
- 無需一個一個地安裝模塊
- 其實開發人員可以很容易的安裝你的應用程序
- 應用程序的依賴關系存儲在一個單一的地方
package.json相關demo
1、建立一個foo.js文件,代碼如下所示:
var _ = require('underscore');
_.each([1, 2, 3], function (num) {
console.log('underscore.js says ' + num);
});
2、在foo.js同目錄下建立一個package.json的文件,代碼如下所示
{
"name":"example02",
"version":"0.0.1",
"dependencies":{
"underscore":"~1.2.1"
}
}
3、在終端執行npm install 這時候將會看到underscore庫安裝在node_modules文件夾下
建議:即使應用只需要安裝一個模塊,還是強烈建議使用package.json文件來管理Node.js模塊
未完待續(考慮到篇幅太長的問題 后續文章將繼續探討)
![]() |
不含病毒。www.avast.com |