modules.exports與exports在node中有什么區(qū)別-創(chuàng)新互聯(lián)

這期內(nèi)容當(dāng)中小編將會(huì)給大家?guī)?lái)有關(guān)modules.exports與exports在node中有什么區(qū)別,文章內(nèi)容豐富且以專業(yè)的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

10年積累的網(wǎng)站設(shè)計(jì)、成都網(wǎng)站建設(shè)經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問(wèn)題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有江岸免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

一:node是什么?

node只是平臺(tái),或者說(shuō)是環(huán)境,其實(shí)用的還是js語(yǔ)法

主要框架express以及koa,兩個(gè)框架是同一個(gè)團(tuán)隊(duì)開(kāi)發(fā),node中也有類似于php的Ci框架的MVC模式

  1. M->model數(shù)據(jù)層的增刪改差操作

  2. V->view視圖層

  3. C->controller路由控制,主要起到轉(zhuǎn)發(fā)工作

一個(gè)完整的node構(gòu)成:node.js+express+mysql

二:工作代碼的順序:

  1. app.js為node的入口文件,

  2. 在view寫好html文件,模板可以任意,

  3. rouer負(fù)責(zé)路由跳轉(zhuǎn)

  4. controllers負(fù)責(zé)具體業(yè)務(wù)方法的操作,在這個(gè)文件里涉及到的增刪改差放在model中

  5. model負(fù)責(zé)數(shù)據(jù)的操作

此外,默認(rèn)的端口號(hào)為3000,底層如啟動(dòng)命令也可以配置,node支持的導(dǎo)出為module.exports(整體導(dǎo)出) / exports(單個(gè)導(dǎo)出),模塊引用為require

三:node中modules.exports與exports

node中使用require和modules.exports以及exports是因?yàn)閚ode遵循CommonJS規(guī)范。

CommonJS定義的模塊分為: 模塊標(biāo)識(shí)(module)、模塊定義(exports) 、模塊引用(require)

使用范圍

requireexport / importmodule.exports / exports
node 和 es6 都支持的引入只有es6 支持的導(dǎo)出引入只有 node 支持的導(dǎo)出

exports與modules.exports指向相同地址

exports ->{}<- modules.exports

我理解為實(shí)際上每次都是導(dǎo)出modules.exports,本來(lái)指向一個(gè)地址,如下會(huì)切斷modules.exports和exports分別指向兩個(gè)地址

a.js

modules.exports = {a:2}
exports.a = 1

app.js

var a = require ('./a')
console.log(a.a) // 執(zhí)行node app 打印2

類比

var obj = new Object();
obj.name = 'lisi'


//情況一:對(duì)象.屬性
// obj.sayHello 相當(dāng)于export.sayHello
obj.sayHello = function () {
  console.log(this.name) // lisi
}
obj.sayHello(); 


//情況二:對(duì)象.方法
//obj相當(dāng)于module.exports
obj = {
  sayHello: function () {
   // . ...
  }.
}
console.log(obj.name) // undefined
obj.sayHello(); 
obj.name(); // 打印不出lisi,已經(jīng)重寫obj,obj下面沒(méi)有name方法

上述就是小編為大家分享的modules.exports與exports在node中有什么區(qū)別了,如果剛好有類似的疑惑,不妨參照上述分析進(jìn)行理解。如果想知道更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)成都網(wǎng)站設(shè)計(jì)公司行業(yè)資訊頻道。

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性價(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱:modules.exports與exports在node中有什么區(qū)別-創(chuàng)新互聯(lián)
URL鏈接:http://bm7419.com/article10/dgdpgo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、網(wǎng)站內(nèi)鏈、全網(wǎng)營(yíng)銷推廣、云服務(wù)器企業(yè)網(wǎng)站制作、微信公眾號(hào)

廣告

聲明:本網(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)

成都定制網(wǎng)站網(wǎng)頁(yè)設(shè)計(jì)