欧美亚洲中文,在线国自产视频,欧洲一区在线观看视频,亚洲综合中文字幕在线观看

      1. <dfn id="rfwes"></dfn>
          <object id="rfwes"></object>
        1. 站長資訊網(wǎng)
          最全最豐富的資訊網(wǎng)站

          exports和module.expors之間有什么區(qū)別及聯(lián)系?

          本篇文章給大家?guī)淼膬?nèi)容是關(guān)于exports和module.expors之間有什么區(qū)別及聯(lián)系?有一定的參考價值,有需要的朋友可以參考一下,希望對你有所幫助。

          我們在模塊化開發(fā)中,必須會用到exports/module.exports這兩個玩意導(dǎo)出變量或者函數(shù)。因為模塊化開發(fā)中的每個模塊都有自己的模塊作用域。
          比如:

          //a.js var foo = '蘇小貓'
          //b.js console.log(foo)

          我們在b.js中是沒辦法訪問到a.js中的foo變量,所以b.js輸出的是“undefine”。如果我們想在b.js模塊中訪問a.js中的foo變量,我們必須在a.js中用exports或者module.exports導(dǎo)出foo變量。
          比如

          //a.js var foo = '蘇小貓';  module.exports = foo;
          //b.js var foo = require('./b.js');  console.log(foo);

          exportsmodule.expors的關(guān)系和區(qū)別?

          在開發(fā)中,我們很糾結(jié)到底用exports還是module.exports,其實exports跟module.exports就是一個玩意,exports只是module.exports的一個引用。exports跟module.exports是等價的。我們可以在node里測試一下。

          exports和module.expors之間有什么區(qū)別及聯(lián)系?

          每個模塊最終返回的還是return module.exports;

          在我們平常的理解中導(dǎo)出單個變量或者單個函數(shù)就用module.exports;

          module.exports = function(){     console.log("在你心里種點Bnum") }  //我們require之后就會得到一個[Function]

          導(dǎo)出多個變量就用exports;

          exports.name = "蘇小貓" exports.tree = function(){     console.log("在你心里種點Bnum") } //我們require之后就會得到一個對象{name:"蘇小貓",tree:[Function]}

          exports和module.exports本身就是一個空對象,exports.xxx就等于在一個對象里面添加?xùn)|西。

          為什么module.exports導(dǎo)出的是單個?

          因為它本來是一個空對象,module.exports=xxx?,F(xiàn)在你重新給它賦值了,所以它只導(dǎo)出這個xxx。

          exports和module.expors之間有什么區(qū)別及聯(lián)系?

          如果給exports(exports={})重新賦值,這時它的意義就不同了;現(xiàn)在的exports,跟module.exports沒有了半毛錢的關(guān)系了,exports.xxx = xxx;再往里面添加?xùn)|西已經(jīng)不會再影響最后返回回來的return module.exports了。

          exports和module.expors之間有什么區(qū)別及聯(lián)系?

          看,現(xiàn)在age已經(jīng)不進入最后的return module.exports里面了。

          如果還想繼續(xù)用exports.xxx,那就得重新再給module.exports賦值給exports。

          exports和module.expors之間有什么區(qū)別及聯(lián)系?

          看,現(xiàn)在又生效了。

          如果很糾結(jié)在開發(fā)中到底用很exports,還是module.exports,那就忘記exports吧(忘記它,我們不需要備胎,哈哈哈哈)。
          一開始就是說了,exports本身就是module.exports的一個引用。exports能做的module.exports都能做。比如導(dǎo)出多個變量或者函數(shù)。

          exports和module.expors之間有什么區(qū)別及聯(lián)系?

          贊(0)
          分享到: 更多 (0)
          網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號