CommonJs和NodeJs中自定義模塊的示例分析

這篇文章將為大家詳細(xì)講解有關(guān)CommonJs和NodeJs中自定義模塊的示例分析,小編覺(jué)得挺實(shí)用的,因此分享給大家做個(gè)參考,希望大家閱讀完這篇文章后可以有所收獲。

在晉源等地區(qū),都構(gòu)建了全面的區(qū)域性戰(zhàn)略布局,加強(qiáng)發(fā)展的系統(tǒng)性、市場(chǎng)前瞻性、產(chǎn)品創(chuàng)新能力,以專(zhuān)注、極致的服務(wù)理念,為客戶提供網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè) 網(wǎng)站設(shè)計(jì)制作按需策劃設(shè)計(jì),公司網(wǎng)站建設(shè),企業(yè)網(wǎng)站建設(shè),品牌網(wǎng)站設(shè)計(jì),成都全網(wǎng)營(yíng)銷(xiāo)推廣,外貿(mào)網(wǎng)站建設(shè),晉源網(wǎng)站建設(shè)費(fèi)用合理。

CommonJs和NodeJs中自定義模塊

1、什么是CommonJs

教程里巴拉巴拉說(shuō)了一堆,我的理解就是 CommonJs 就是模塊化的標(biāo)準(zhǔn),NodeJs 就是CommonJs(模塊化)的實(shí)現(xiàn)。用 CommonJS API 編寫(xiě)出的應(yīng)用,不僅可以利用JavaScript 開(kāi)發(fā)客戶端應(yīng)用,而且還可以編寫(xiě)以下應(yīng)用:
  a.服務(wù)器端JavaScript應(yīng)用程序(nodejs)
  b.命令行工具
  c.桌面圖形界面應(yīng)用程序

2、NodeJs中的模塊化

Node應(yīng)用是模塊組成的,采用CommonJs模塊規(guī)范。

在Node中,模塊分為兩類(lèi):

一類(lèi)是 Node 提供的模塊,稱(chēng)為核心模塊;另一類(lèi)是用戶編寫(xiě)的模塊,稱(chēng)為 文件模塊。
核心模塊部分在 Node 源代碼的編譯過(guò)程中,編譯進(jìn)了二進(jìn)制執(zhí)行文件。在 Node 進(jìn)程啟動(dòng)時(shí),部分核心模塊就被直接加載進(jìn)內(nèi)存中,所以這部分核心模塊引入時(shí),文件定位和編譯執(zhí)行這兩個(gè)步驟可以省略掉,并且在路徑分析中優(yōu)先判斷,所以它的加載速度是最快的。如:HTTP模塊、URL模塊、Fs模塊都是nodejs  內(nèi)置的核心模塊??梢灾苯右胧褂谩?br/>文件模塊則是在運(yùn)行時(shí)動(dòng)態(tài)加載,需要完整的路徑分析、文件定位、編譯執(zhí)行過(guò)程、速度相比核心模塊稍微慢一些,但是用的非常多。 這些模塊需要我們自己定義。 接下來(lái)我下們看一下nodejs中的自定義模塊。

CommonJS (Nodejs )中自定義模塊的規(guī)定

我們可以把公共的功能 抽離成為一個(gè)單獨(dú)的js文件 作為一個(gè)模塊,默認(rèn)情況下面這個(gè)模塊里面的方法或者屬性,外面是沒(méi)法訪問(wèn)的。如果要讓外部可以訪問(wèn)模塊里面的方法或者屬性,就必須在模塊里面通過(guò) exports 或module.exports 暴露屬性或者方法。
在需要使用這些模塊的文件中,通過(guò) require 的方式引入這個(gè)模塊。這個(gè)時(shí)候就可以使用模塊里面暴露的屬性和方法。
這里我做了一張圖方便理解:

CommonJs和NodeJs中自定義模塊的示例分析

  • 定義使用模塊

新建二個(gè)js

CommonJs和NodeJs中自定義模塊的示例分析

CommonJs和NodeJs中自定義模塊的示例分析

3.npm init生成package.json

npm init -yes

關(guān)于CommonJs和NodeJs中自定義模塊的示例分析就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺(jué)得文章不錯(cuò),可以把它分享出去讓更多的人看到。

當(dāng)前文章:CommonJs和NodeJs中自定義模塊的示例分析
本文地址:http://muchs.cn/article20/jchdco.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、網(wǎng)站排名外貿(mào)網(wǎng)站建設(shè)、虛擬主機(jī)手機(jī)網(wǎng)站建設(shè)、網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

微信小程序開(kāi)發(fā)