美文网首页
exports和module.exports的区别

exports和module.exports的区别

作者: 小龙虾Julian | 来源:发表于2018-07-06 16:21 被阅读0次

    require用来加载代码,exports和module.exports用来导出代码,两者的区别有3点:
    (1)module.exports的初始值为一个空对象{}
    (2)exports是指向的module.exports的引用
    (3)require返回的是module.exports的而不是exports

    注:我们经常看到这样的写法:exports = module.exports = somethings
    其等价于:

    module.exports = somethings
    exports = module.exports
    

    原理很简单,即 module.exports 指向新的对象时,exports 断开了与 module.exports 的引用,那么通过 exports = module.exports 让 exports 重新指向 module.exports 即可。

    相关文章

      网友评论

          本文标题:exports和module.exports的区别

          本文链接:https://www.haomeiwen.com/subject/ngkbuftx.html