91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Nodejs中怎么自定義CommonJS模塊

發布時間:2022-08-08 14:34:34 來源:億速云 閱讀:124 作者:iii 欄目:web開發

這篇文章主要介紹了Nodejs中怎么自定義CommonJS模塊的相關知識,內容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇Nodejs中怎么自定義CommonJS模塊文章都會有所收獲,下面我們一起來看看吧。

一、 什么是 CommonJs?

JavaScript 是一個強大面向對象語言,它有很多快速高效的解釋器。 然而, JavaScript標準定義的 API 是為了構建基于瀏覽器的應用程序。并沒有制定一個用于更廣泛的應用程序的標準庫。 CommonJS 規范的提出,主要是為了彌補當前 JavaScript 沒有標準的缺陷。 它的終極目標就是: 提供一個類似 Python, Ruby 和 Java 語言的標準庫,而不只是停留在小腳本程序的階段。用 CommonJS API 編寫出的應用, 不僅可以利用 JavaScript 開發客戶端應用, 而且還可以編寫以下應用。

  • 服務器端 JavaScript 應用程序。( nodejs)

  • 命令行工具。

  • 桌面圖形界面應用程序。

CommonJS 就是模塊化的標準, nodejs 就是 CommonJS( 模塊化) 的實現。

二、 Nodejs 中的模塊化

Node 應用由模塊組成,采用 CommonJS 模塊規范。

2.1 在 Node 中,模塊分為兩類:

一類是 Node 提供的模塊,稱為核心模塊;另一類是用戶編寫的模塊,稱為文件模塊。

  • 核心模塊部分在 Node 源代碼的編譯過程中,編譯進了二進制執行文件。在 Node 進程啟動時,部分核心模塊就被直接加載進內存中,所以這部分核心模塊引入時,文件定位和編譯執行這兩個步驟可以省略掉,并且在路徑分析中優先判斷,所以它的加載速度是最快的。如: HTTP 模塊 、 URL 模塊、 Fs 模塊都是 nodejs 內置的核心模塊,可以直接引入使用。

  • 文件模塊則是在運行時動態加載,需要完整的路徑分析、文件定位、編譯執行過程、速度相比核心模塊稍微慢一些,但是用的非常多。 這些模塊需要我們自己定義。 接下來我們看一下 nodejs 中的自定義模塊。

2.2 CommonJS( Nodejs) 中自定義模塊的規定:

  • 1.我們可以把公共的功能抽離成為一個單獨的 js 文件作為一個模塊, 默認情況下面這個模塊里面的方法或者屬性, 外面是沒法訪問的。如果要讓外部可以訪問模塊里面的方法或者屬性, 就必須在模塊里面通過 exports 或者 module.exports 暴露屬性或者方法。

  • 2. 在需要使用這些模塊的文件中, 通過 require 的方式引入這個模塊。這個時候就可以使用模塊里面暴露的屬性和方法。

Nodejs中怎么自定義CommonJS模塊

2.3 定義使用模塊:

// 定義一個 tools.js 的模塊
//模塊定義
var tools = {
sayHello: function() {
return 'hello NodeJS';
},
add: function(x, y) {
return x + y;
}
};
// 模塊接口的暴露
// module.exports = tools;
exports.sayHello = tools.sayHello;
exports.add = tools.add;
1
2
3
4
var http = require('http');
// 引入自定義的 tools.js 模塊
var tools= require('./tools');
tools.sayHello(); //使用模塊

三、 npm init 生成 package.json

npm init --yes

關于“Nodejs中怎么自定義CommonJS模塊”這篇文章的內容就介紹到這里,感謝各位的閱讀!相信大家對“Nodejs中怎么自定義CommonJS模塊”知識都有一定的了解,大家如果還想學習更多知識,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

连南| 喀什市| 香格里拉县| 社旗县| 昌黎县| 新巴尔虎右旗| 金门县| 宜阳县| 樟树市| 吉水县| 萝北县| 当雄县| 东阳市| 会宁县| 西峡县| 宜川县| 颍上县| 谢通门县| 天峻县| 安岳县| 望江县| 扎鲁特旗| 山西省| 广河县| 华容县| 沧州市| 河西区| 延长县| 汝南县| 房产| 宁津县| 昌都县| 灌南县| 邵东县| 镇原县| 晋江市| 鄄城县| 浦县| 息烽县| 张家川| 武清区|