官术网_书友最值得收藏!

1.3 Node.js中的模塊

接下來,我們將要介紹如何制作一個最簡單的Node.js應用程序,在介紹該應用程序之前,首先概要介紹一下什么是Node.js中的模塊。

我們知道,在客戶端可以將所有JavaScript代碼分割為幾個JS文件,然后在瀏覽器中將這些JS文件合并運行。但是在Node.js中是通過以模塊為單位來劃分所有功能的。每一個模塊為一個JS文件。每一個模塊中定義的全局變量或函數的作用范圍也被限定在這個模塊之內,只有使用exports對象才能將其傳遞到外部。代碼如下所示:

exports.printFoo = function(){ return "foo" }

在上面這行代碼中,我們定義了一個printFoo函數,函數內部返回“foo”字符串。同時,我們通過使用exports對象使模塊外部可以訪問這個printFoo函數。

在引用模塊時,我們需要使用require函數。例如,將上面這個具有printFoo函數的模塊文件保存為foo.js文件之后,可以通過以下代碼來訪問模塊中的printFoo函數:

var foo = require('./foo.js');          // 通過foo.js文件路徑加載foo.js模塊
console.log(foo. printFoo());           // 訪問foo.js模塊內的printFoo函數

在第一行代碼中,我們讀取foo.js模塊并通過foo對象來引用該模塊,在第二行代碼中,我們通過foo對象來訪問模塊內的printFoo函數,控制臺窗口中將輸出“foo”字符串。

在Node.js中,提供了一些核心模塊,其中Node.js v0.10版中的模塊及其作用見表1-1。

表1-1 Node.js v0.10版中的核心模塊

在Node.js中,可以直接使用require函數并將模塊名設置為require函數的參數值的方法來引用這些模塊。例如,可以使用如下代碼來引用http模塊:

var http = require('http');

在這段代碼中,使用require函數來引用http模塊,該函數返回http模塊對象,將該對象賦值給http變量之后即可以通過http變量來訪問http模塊中的屬性及方法。

在Node.js框架中,除了可以使用V8JavaScript引擎中所支持的、ECMAScript 5中定義的函數與類之外,追加了一些類、函數與對象。可以在不引用任何模塊的情況下直接使用這些類、函數與對象。Node.js中追加的類、函數與對象見表1-2。

表1-2 Node.js中追加的類、函數與對象

除了可以使用內置模塊之外,也可以通過各種第三方模塊的安裝與使用對Node.js的既有功能進行擴展。例如,通過各種模板引擎的安裝及使用,我們可以創建類似于PHP頁面、JSP頁面之類的動態頁面;通過對MySQL之類的數據庫進行訪問的模塊的安裝及使用,我們可以在應用程序中對MySQL等數據庫進行數據的存取操作。

主站蜘蛛池模板: 通辽市| 阳信县| 子长县| 二连浩特市| 金湖县| 长兴县| 奉新县| 辽源市| 黄陵县| 广东省| 清新县| 新民市| 南宫市| 镇原县| 禄丰县| 商城县| 界首市| 中超| 临澧县| 神农架林区| 侯马市| 荔浦县| 页游| 方城县| 三河市| 贵州省| 辽阳县| 太湖县| 岑溪市| 贵州省| 禄丰县| 隆子县| 通河县| 资中县| 德令哈市| 安义县| 富源县| 大化| 金平| 丰镇市| 高清|