国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > JavaScript > 正文

Node.js 的模塊知識匯總

2024-05-06 15:12:52
字體:
供稿:網(wǎng)友

在寫 Node.js 應(yīng)用程序的時候,你確實可以把所有代碼放在巨大原 index.js 文件中,不在乎你的應(yīng)用程序會變得多大多復(fù)雜。Node.js 解釋器不會在意這個事情。但在代碼組織方面,你很快就會陷入混亂,不能理解代碼,而且難以調(diào)試。所以,作為一個人,你應(yīng)該關(guān)心代碼的結(jié)構(gòu)。這就是使用模塊的原因。

你可以把 Node.js 模塊當(dāng)作 JavaScript 庫 —— 是整體代碼中你想放在一起的某個部分(比如,函數(shù)集),你會想把這部分代碼相對獨立于代碼庫中的其它部分,可以把事情區(qū)分清楚。

就們我們把襪子放在衣柜一個抽屜,把襯衣放在衣柜的另一個抽屜 —— 我們可以把它們組成一天的著裝 ——在代碼庫中,我們將不同的部分保存在不同的模塊中,然后將它們有條不紊地合并成一個應(yīng)用程序。

內(nèi)建模塊

即使我們不創(chuàng)造任何 Node.js 模塊,也有模塊可用,因為 Node.js 環(huán)境提供了內(nèi)建模塊。我們已經(jīng)遇到過一個模塊,就是在博客中尋找如何使用內(nèi)建的 SHATWG URL 解析器的時候。

在我們自己的代碼文件中,我們需要使用已經(jīng)存在但是在別處聲明的代碼 —— 這種情況下,URL類是 Node.js 內(nèi)置模塊url中的一部分。

var URL = require('url').URL;

require('url')讓我們可以訪問url模塊。這個模塊定義在哪里,是怎么定義的,對我們來說完全不透明 —— 我們所需要知道的只是它的名稱 ——url—— 以及它公開的屬性,比如URL。

其它內(nèi)建的模塊直接導(dǎo)出我們需要的屬性(通常是 JavaScript 對象)。以http模塊為例:

var http = require('http');http.createServer(function (req, res) {  res.writeHead(200, {'Content-Type': 'text/html'});  res.end('Hello World!');}).listen(8080);

這里,請求http模塊讓我們可以直接訪問http對象,我們可以直接使用其方法,比如createServer。

Node 初學(xué)者這本書講述了如何使用 Node.js 寫一個完整的 Web 服務(wù)器,它就是使用的內(nèi)建http模塊。

外部模塊

內(nèi)建模塊隨 Node.js 發(fā)布,它可以解決很多開發(fā)問題,而不需要為每個應(yīng)用發(fā)明新的輪子,但是真正促進(jìn) Node.js 編程能力的是由來自 Node.js 社區(qū)的開源模塊構(gòu)建起來的龐大生態(tài)系統(tǒng)。這些模塊也可以集成到我們的代碼庫中,但是由于它們不是內(nèi)置的,并且不會隨每次安裝Node.js 一起安裝,所以只在是我們的代碼中require是不夠的。我們需要先安裝包含外部模塊的代碼庫,由于 NPM,Node Package Manager(Node 包管理器) 的存在,這很容易。

請參博客文章,它以如何使用 async 庫為例來介紹如何使用外部模塊。

此外,Node工匠書還使用了一個章節(jié)來介紹了使用 NPM 的細(xì)節(jié)。

創(chuàng)建你自己的模塊

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 安溪县| 达拉特旗| 古田县| 西青区| 高安市| 嘉黎县| 辽中县| 屯门区| 工布江达县| 牟定县| 舞钢市| 乌兰县| 陈巴尔虎旗| 凤庆县| 黄浦区| 资源县| 长寿区| 天峻县| 若尔盖县| 贡觉县| 贵港市| 滕州市| 武邑县| 五家渠市| 米林县| 嵊泗县| 延长县| 南昌市| 广州市| 托克逊县| 黄冈市| 汪清县| 闵行区| 武强县| 盐源县| 广水市| 吐鲁番市| 吉水县| 沙湾县| 台安县| 乌拉特中旗|