最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

node中modules.exports與exports導(dǎo)出的區(qū)別

 更新時(shí)間:2018年06月08日 14:13:08   作者:關(guān)注Li_小點(diǎn)  
這篇文章主要介紹了node中modules.exports與exports導(dǎo)出的區(qū)別,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

一:node是什么?

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

主要框架express以及koa,兩個(gè)框架是同一個(gè)團(tuán)隊(duì)開(kāi)發(fā),node中也有類(lèi)似于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寫(xiě)好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)

使用范圍

require export / import module.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

類(lèi)比

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)重寫(xiě)obj,obj下面沒(méi)有name方法

此文章也是自己的學(xué)習(xí)記錄,如有不足,歡迎指正指導(dǎo)。也希望大家多多支持腳本之家。

相關(guān)文章

  • 如何利用node.js開(kāi)發(fā)一個(gè)生成逐幀動(dòng)畫(huà)的小工具

    如何利用node.js開(kāi)發(fā)一個(gè)生成逐幀動(dòng)畫(huà)的小工具

    這篇文章主要給大家介紹了關(guān)于如何利用node.js開(kāi)發(fā)一個(gè)生成逐幀動(dòng)畫(huà)小工具的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用node.js具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-12-12
  • 解決node.js含有%百分號(hào)時(shí)發(fā)送get請(qǐng)求時(shí)瀏覽器地址自動(dòng)編碼的問(wèn)題

    解決node.js含有%百分號(hào)時(shí)發(fā)送get請(qǐng)求時(shí)瀏覽器地址自動(dòng)編碼的問(wèn)題

    這篇文章主要介紹了解決node.js含有%百分號(hào)時(shí)發(fā)送get請(qǐng)求時(shí)瀏覽器地址自動(dòng)編碼的問(wèn)題,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-11-11
  • NodeJs環(huán)境安裝與配置的實(shí)現(xiàn)步驟

    NodeJs環(huán)境安裝與配置的實(shí)現(xiàn)步驟

    本文主要介紹了NodeJs環(huán)境安裝與配置,包括配置環(huán)境和配置國(guó)內(nèi)鏡像,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • NodeJS實(shí)現(xiàn)圖片上傳代碼(Express)

    NodeJS實(shí)現(xiàn)圖片上傳代碼(Express)

    本篇文章主要介紹了NodeJS實(shí)現(xiàn)圖片上傳代碼(Express) ,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2017-06-06
  • Node.js中常規(guī)的文件操作總結(jié)

    Node.js中常規(guī)的文件操作總結(jié)

    關(guān)于Node.js中文件的常規(guī)操作,主要的就是fs這個(gè)模塊。對(duì)于node.js中fs模塊提供的API很多,但是其所有的方法均有同步和異步的形式。那么下面這篇文章我們就來(lái)詳細(xì)介紹下關(guān)于Node.js中文件的常規(guī)操作,有需要的朋友們可以參考借鑒。
    2016-10-10
  • 10個(gè)Node.js庫(kù)幫助你優(yōu)化代碼和簡(jiǎn)化開(kāi)發(fā)

    10個(gè)Node.js庫(kù)幫助你優(yōu)化代碼和簡(jiǎn)化開(kāi)發(fā)

    這篇文章主要介紹了10個(gè)Node.js庫(kù)幫助你優(yōu)化代碼和簡(jiǎn)化開(kāi)發(fā),其中包括處理數(shù)組、對(duì)象、字符串庫(kù)Lodash,緩存數(shù)據(jù)處理庫(kù)Node-cache,解析、操作和格式化日期和時(shí)間庫(kù)Moment.js,Redis操作庫(kù),發(fā)送電子郵件庫(kù)Nodemailer
    2023-05-05
  • Nodejs中執(zhí)行的shell命令的代碼分享

    Nodejs中執(zhí)行的shell命令的代碼分享

    雖然nodejs運(yùn)行時(shí)提供了和OS交互的諸多API命令,但是有些操作(例如:特定系統(tǒng)信息獲?。┻€是使用shell命令更加方便一些,下面就跟隨小編一起來(lái)看看有哪些是宜在nodejs中執(zhí)行的shell代碼吧
    2024-02-02
  • node.js基礎(chǔ)知識(shí)匯總

    node.js基礎(chǔ)知識(shí)匯總

    這篇文章主要介紹了node.js基礎(chǔ)知識(shí),幫助大家更好的理解和學(xué)習(xí)node.js,感興趣的朋友可以了解下
    2020-08-08
  • Node.js v8.0.0正式發(fā)布!看看帶來(lái)了哪些主要新特性

    Node.js v8.0.0正式發(fā)布!看看帶來(lái)了哪些主要新特性

    Node.js v8.0.0 已正式發(fā)布。v8.0.0 是下一個(gè)主要的版本,帶來(lái)了一系列重大的變化和新功能,內(nèi)容十分多!下面這篇文章主要帶著大家一起看看Node.js v8.0.0帶來(lái)了哪些主要新特性,需要的朋友可以參考借鑒,下面來(lái)一起看看吧。
    2017-06-06
  • Node使用Nodemailer發(fā)送郵件的方法實(shí)現(xiàn)

    Node使用Nodemailer發(fā)送郵件的方法實(shí)現(xiàn)

    這篇文章主要介紹了Node使用Nodemailer發(fā)送郵件的方法實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02

最新評(píng)論

桐柏县| 东至县| 阿瓦提县| 根河市| 永寿县| 苗栗县| 茶陵县| 饶阳县| 萍乡市| 繁昌县| 通辽市| 和顺县| 汶上县| 汉川市| 三原县| 尉氏县| 冷水江市| 镇巴县| 旬阳县| 黔东| 无极县| 中超| 定襄县| 井陉县| 南丹县| 镇康县| 姜堰市| 刚察县| 思南县| 嵊州市| 孝义市| 四会市| 远安县| 丰县| 会东县| 荣成市| 察哈| 宿迁市| 那曲县| 屏南县| 德钦县|