初探nodeJS


一、node概要

nodeJS早有耳聞,但是一直遲遲沒有對它下手,哈哈哈,今兒咱就來初探一下它。

nodeJS是個啥東東?

nodeJS,我的理解就是可以運行在后端的JavaScript。

為什么它能夠在后端運行呢?

這就得歸功於V8引擎(V8是Google Chrome瀏覽器的JavaScript引擎),通過對高性能V8引擎的封裝,並通過一系列優化的API類庫,使其就能夠在后端運行了。

並且node有兩大特點:

  1、基於事件驅動;

  2、無阻塞。

從而nodeJS非常適合處理並發請求。

大家都知道nodeJS其本質就是JavaScript,so基於事件驅動不難理解,但是無阻塞呢?

JavaScript是單線程,所以要做到無阻塞,node是通過大量的回調函數來達到這一目的。

好了,廢話不多說了。接下來咱們就開始初步體驗它。

二、Install node&npm

因為nodeJS是后端運行的JavaScript嘛,so得有個運行環境啊。不過安裝nodeJS的環境比較簡單,具體步驟見下:

1、首先到官網下載nodeJS安裝包。

在官網中,也能看見官方對nodeJS的一個描述:

Node.js is a JavaScript runtime built on Chrome’s V8 JavaScript engine.Node.js uses an event-driven, non-blocking I/O model that makes it lightweight and efficient. Node.js’ package ecosystem, npm , is the largest ecosystem of open source libraries in the world.

2、在下載完安裝包后,在windows下按照默認程序走就歐克啦。

3、檢驗是否安裝成功,在Windows環境下,打開命令提示符,輸入node – v,如果正常就會出現版本號的輸出。

如下:

在官方介紹中,不是說到npmNode.js’ package ecosystem, npm , is the largest ecosystem of open source libraries in the world.)嘛,其實npm在你安裝nodeJS時,就一帶幫你安裝了。

不信,咱就在命令提示符中輸入npm –v看看。

如下:

好了,node開發環境就這么完美的‘搭建’好了,哈哈,是不是很簡單。

接下來,我們就開始敲打第一個node程序吧。

三、Get started

一切從"hello world"開始,畢竟我們都是有情懷的人。

簡單的嘛,我們就在命令提示符下,敲打我們的程序,你只需輸入node,然后回車就可以進入node在命令提示符下的交互環境了。

如下:

進入node交互環境后,敲到"hello world"字符串后回車。

結果如下:

倘若我們想退出node的這個交互環境,就Ctrl + C,連按兩次就退出回到windows命令符啦。

如下:

 

如果要在node的這個交互環境下編程的話,太大費周章了,所以,我們可以引入js文件來執行,例如下面這樣。

前提:你得有一個js文件。

我將這個js(helloWorld.js)文件放在D盤的,so運行結果如下:

'use strict'
console.log('Hello world');
helloWorld.js

 

哈,有點意思哈。

不是說nodeJS是運行在后端的JavaScript嘛。接下來,我們就用nodeJS來開發一個最簡單的服務器程序。

四、Node for server

前提:nodeJS是遵循CommonJS規范的。

即,

每個.js文件都是一個模塊,模塊的好處就是避免命名空間污染。倘若你想讓一個模塊對外暴露變量,可以用module.exports  =  variable;

而一個模塊想要引用另一個模塊對外暴露的變量,用require關鍵字就可以了,如var ref = require(‘module_name’);

好了,簡單的知道了nodeJS的運用規則,那么我們想要編寫一個http服務器,就得先引入這個模塊。

如下:

接下來就是調用引入的HTTP模塊的一個工廠模式方法(createServer)來創建一個新的http服務器。

如下:

由於nodeJS的特性之一是事件驅動,so當我們訪問一個http服務器時,它會觸發一個request事件,我們利用其進行相應處理。

例如,我們的處理方式是,利用writeHead來設置HTTP的響應頭和HTTP正文。

具體代碼如下

 

最后,就是想監聽的端口號咯。比如我們監聽的是80端口。

 

代碼以及很完美了,但,為了方便在nodeJS交互環境下運行該js文件后,知道服務器已經啟好了,我們還是打印一條日志吧。

如下:

'use strict'
//通過require將http庫包含到程序中
var http = require('http');
//創建新的HTTP服務器
var server = http.createServer();
//通過request事件來響應request請求
server.on('request',function(req, res){
    res.writeHead(200, {'Content-Type':'text/plain'});
    res.end('Hell World\n');    
});
server.listen('80');
console.log('Server running!');
EntireCode

好了,開啟nodeJS交互環境,運行該js文件,我的命名是http.js。

so:

這樣http服務器就啟好了,接下來我們再打開網頁,輸入127.0.0.1:80,看看效果:

 

good!!有木有一點小小的激動,這樣就把http服務器啟好並運行起來了。

node的確牛逼,so接下來一起學習吧。

晚安,everyone~


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM