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

module.exports和exports使用誤區(qū)案例分析

 更新時間:2023年04月03日 09:53:03   作者:?Aurora.  
module.exports和exports使用誤區(qū),使用require()模塊時,得到的永遠都是module.exports指向的對象

module.exports和exports使用誤區(qū)

使用require()模塊時,得到的永遠都是module.exports指向的對象

1.誤區(qū)一

exports.username = 'zs'
exports.sayHello = function() {
    console.log('Hello!');
}

module.exports = {
    gender: '男',
    age: 20
}

在這里插入圖片描述
在這里插入圖片描述
因為默認情況下,exports 和 module.exports 指向同一個對象,二者開始都是指向一個空對象,當(dāng)export指向新對象username="zs"后,此時二者都指向這 個對象,但是執(zhí)行后面代碼則是在內(nèi)存中新開辟一個空間存儲新對象 {gender:“男”,age:20} ,且把這個新對象的引用交給了module.exports,則module.exports就指向新的對象,不指向之前的對象了
所以這時候,如果使用require()模塊,得到的就是module.exports此時指向的對象

注意此處的module.exports已經(jīng)被重新定義!require()得到的是重新定義之后的導(dǎo)出對象!

2.誤區(qū)二

module.exports.username = 'zs'

exports = {
    gender:'男',
    age:22
}

在這里插入圖片描述
在這里插入圖片描述
exports 和 module.exports 開始指向一個空對象,當(dāng)module.export指向新對象username="zs"后,此時二者都指向這個對象,但是執(zhí)行后面代碼則是在內(nèi)存 中新開辟一個空間存儲新對象 {gender:“男”,age:20} ,且把這個新對象的引用交給了exports,但是module.exports指向?qū)ο?沒有變,還是指向之前的對象
所以使用require()模塊時,module.exports指向的對象還是原來的對象

注意:優(yōu)先級還是module.exports的最高?。equire()優(yōu)先引用的還是module.exports所導(dǎo)出的對象!

3.誤區(qū)三

exports.username = 'zs'

module.exports.gender = '男'

在這里插入圖片描述
在這里插入圖片描述
二者開始指向空對象,第一 行代碼通過exports引用關(guān)系掛載了一個name屬性,第二行又通過module.exports引用關(guān)系掛載了一個屬性age 這里不存在新對象 都是掛載屬性 這些屬性都被放在了開始二者指向的對象中,最終兩個屬性都在此對象中
此時使用require()模塊時,module.exports指向的對象沒有變 ,但是此時指向?qū)ο笊嫌袃蓚€屬性

注意:這里的module.exports.gender = '男'在module.exports導(dǎo)出對象的基礎(chǔ)上再次增加的屬性,module.exports所指向的地址并沒有改變!

4.誤區(qū)四

exports = {
    uesrname: 'zs',
    gender: '男'
}

module.exports = exports
module.exports.age = 22

在這里插入圖片描述
在這里插入圖片描述

同理二者開始指向同一空對象,執(zhí)行代碼,在內(nèi)存中定義了一個新對象,且把新對象掛載在exports上,此時exports就不指向之前的空對象 而指向新定義的對象,module.exports=exports這行代碼把export的引用關(guān)系通過等號賦值給了module.exports,則module.exports也不指向之前的空對象了,也指向新對象了,最后給module.exports指向的新對象又繼續(xù)掛載了一個age屬性
此時使用require()模塊時 ,module.exports指向的對象沒有變,但是此時指向?qū)ο笊嫌袃蓚€屬性

謹記,使用require()模塊時,得到的永遠都是module.exports指向的對象
所以,為了防止這種混亂,以后在一個模塊中,不 要同時使用exports和module.exports

相關(guān)文章

  • 詳解node字體壓縮插件font-spider的用法

    詳解node字體壓縮插件font-spider的用法

    在本篇文章中給大家詳細講述了node字體壓縮插件font-spider的用法的相關(guān)知識點內(nèi)容,有需要的朋友參考下。
    2018-09-09
  • node.js中的fs.lchownSync方法使用說明

    node.js中的fs.lchownSync方法使用說明

    這篇文章主要介紹了node.js中的fs.lchownSync方法使用說明,本文介紹了fs.lchownSync的方法說明、語法、接收參數(shù)、使用實例和實現(xiàn)源碼,需要的朋友可以參考下
    2014-12-12
  • node.js開發(fā)中使用Node Supervisor實現(xiàn)監(jiān)測文件修改并自動重啟應(yīng)用

    node.js開發(fā)中使用Node Supervisor實現(xiàn)監(jiān)測文件修改并自動重啟應(yīng)用

    這篇文章主要介紹了node.js開發(fā)中使用Node Supervisor實現(xiàn)監(jiān)測文件修改并自動重啟應(yīng)用的功能,從而避免大量重復(fù)的CTRL+C終止程序動作,需要的朋友可以參考下
    2014-11-11
  • Windows下nodejs安裝及環(huán)境配置的實戰(zhàn)步驟

    Windows下nodejs安裝及環(huán)境配置的實戰(zhàn)步驟

    最近換了一個電腦,因為要使用到NodeJS,我將我自己的安裝步驟分享給大家,下面這篇文章主要給大家介紹了關(guān)于Windows下nodejs安裝及環(huán)境配置的相關(guān)資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-02-02
  • nodejs發(fā)布靜態(tài)https服務(wù)器的方法

    nodejs發(fā)布靜態(tài)https服務(wù)器的方法

    這篇文章主要介紹了nodejs發(fā)布靜態(tài)https服務(wù)器的方法,本文通過實例代碼給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2023-09-09
  • Node.js操作mysql數(shù)據(jù)庫增刪改查

    Node.js操作mysql數(shù)據(jù)庫增刪改查

    這篇文章主要介紹使用Node.js操作mysql數(shù)據(jù)庫增刪改查的相關(guān)資料,需要的朋友可以參考下
    2016-03-03
  • nodejs中模塊定義實例詳解

    nodejs中模塊定義實例詳解

    這篇文章主要介紹了nodejs中模塊定義方法,結(jié)合實例形式分析了nodejs模塊的原理、常見模塊及相應(yīng)的定義方法,需要的朋友可以參考下
    2017-03-03
  • 安裝Node.js并創(chuàng)建Web程序

    安裝Node.js并創(chuàng)建Web程序

    這篇文章介紹了安裝Node.js并創(chuàng)建Web程序的方法,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 深入解析nodejs HTTP服務(wù)

    深入解析nodejs HTTP服務(wù)

    本篇文章主要介紹了深入解析nodejs HTTP服務(wù),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • 一文學(xué)會如何升級npm管理的各依賴版本

    一文學(xué)會如何升級npm管理的各依賴版本

    npm在前端開發(fā)流程中提供了非常完善的自動化工具鏈,已成為每個前端開發(fā)者必備的工具,下面這篇文章主要給大家介紹了關(guān)于如何升級npm管理的各依賴版本,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2022-09-09

最新評論

谷城县| 安化县| 墨竹工卡县| 包头市| 黑山县| 宁都县| 大关县| 奉新县| 吉首市| 汉阴县| 庆阳市| 正定县| 屏南县| 湘潭县| 平阴县| 昂仁县| 保亭| 七台河市| 盈江县| 遂宁市| 五莲县| 榕江县| 醴陵市| 常宁市| 家居| 民勤县| 伊川县| 信阳市| 福贡县| 镇江市| 微博| 金昌市| 收藏| 江源县| 金门县| 玛多县| 田阳县| 福鼎市| 章丘市| 偃师市| 枞阳县|