教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

Node.js包和模塊的區(qū)別在哪兒?【前端技術(shù)文章】

更新時間:2022年12月22日11時55分 來源:傳智教育 瀏覽次數(shù):

在Node.js 中,會將某個獨立的功能封裝起來,用于發(fā)布、更新、依賴管理和進行版本控制。Nodejs 根據(jù)CommonJS規(guī)范實現(xiàn)了包機制,開發(fā)了NPM包管理工具,用來解決包的發(fā)布和獲取需求。

Node.js的包和模塊并沒有本質(zhì)的不同,包是在模塊的基礎(chǔ)上更進一步的組織JavaScript代碼的目錄。Nodejs 包和模塊的關(guān)系如下圖所示:

1671676547435_包.png

圖中可以看出,一個包中應該有一個出口模塊,用于向外部開放接口,使用者只需要拿到出口模塊,而不用關(guān)心包中的其他內(nèi)容。

Node,js的包基本遵循 CommonJS規(guī)范,規(guī)范的包目錄結(jié)構(gòu)如表 1 所示。

規(guī)范的包目錄結(jié)構(gòu)

在實際開發(fā)中,當某個包需要發(fā)布到網(wǎng)上,供他人使用時,最好遵守 CommonJS規(guī)范Nodejs 包中包含JSON格式的包說明文件 package.jison。在規(guī)范中 package.json 文件好比一個產(chǎn)品說明書,它的優(yōu)勢在于當開發(fā)者拿到一個第三方包文件時,可以對包的信息一目了然,package.json文件中用于描述信息的屬性如下表所示。

1671680071855_2.png

在package.json文件中,屬性和值通過JSON字符串的形式進行描述。



0 分享到:
和我們在線交談!