返回顶部
首页 > 资讯 > 精选 >Node中module.exports和exports区别是什么
  • 827
分享到

Node中module.exports和exports区别是什么

2023-07-05 11:07:04 827人浏览 独家记忆
摘要

本篇内容介绍了“node中module.exports和exports区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、当使用分别

本篇内容介绍了“node中module.exports和exports区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

    一、当使用分别暴露时,module.exports和exports是一样的

    math.js

    const add = (a, b) => a + bconst subtract = (a, b) => a - bmodule.exports.add = addmodule.exports.subtract = subtract

    index.js

    const math = require('./math')console.log(math.add(2, 3))console.log(math.subtract(2, 3))

    执行 node .\index.js会打印5和-1

    此时,若你在math.js中使用exports分别暴露时也是可以的:

    // module.exports.add = add// module.exports.subtract = subtractexports.add = addexports.subtract = subtract

    二、当使用统一暴露时,它俩是不一样的

    module.exports的统一暴露

    实际中我们经常这样写

    module.exports = { add, subtract }

    此时执行node index还是会打印5和-1

    使用exports同一个暴露

    // module.exports = { add, subtract }exports = { add, subtract }

    此时再执行node index会报错:

    TypeError: math.add is not a function

    三、为什么exports可以分别暴露,但不能统一暴露

    观察源码里这几句代码:

    const exports = this.exports;  const thisValue = exports;  const module = this;

    Node中module.exports和exports区别是什么

    由此可见,exports和module.exports指向同一个对象。所以当你使用分别暴露时,实质上是给这个对象上添加了一个个属性,这两种方式是同一个意思。

    但是,一旦写成统一暴露,exports = { add, subtract }改变了exports的指向,切断了与module.exports之间的引用关系,exports不再是module.exports的那个对象了。

    “Node中module.exports和exports区别是什么”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

    --结束END--

    本文标题: Node中module.exports和exports区别是什么

    本文链接: https://lsjlt.com/news/351185.html(转载时请注明来源链接)

    有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

    猜你喜欢
    • Node中module.exports和exports区别是什么
      本篇内容介绍了“Node中module.exports和exports区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!一、当使用分别...
      99+
      2023-07-05
    • 一文详解Node中module.exports和exports区别
      目录一、当使用分别暴露时,module.exports和exports是一样的二、当使用统一暴露时,它俩是不一样的module.exports的统一暴露使用exports同一个暴露三...
      99+
      2023-03-09
      Node module.exports区别 module exports
    • Node.js 中exports 和 module.exports 的区别
      Node.js 中exports 和 module.exports 的区别 require 用来加载代码,而 exports 和 module.exports 则用来导出代码。但很多新手可能会迷惑于 exp...
      99+
      2022-06-04
      区别 js Node
    • Node.js中module.exports和exports使用误区是什么
      这篇文章主要讲解了“Node.js中module.exports和exports使用误区是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Node.js中module.exports和ex...
      99+
      2023-06-29
    • 详解nodejs中exports和module.exports的区别
      require 用来加载代码,而 exports 和 module.exports 则用来导出代码。但很多新手可能会迷惑于 exports 和 module.exports 的区别,为了更好的理解 expo...
      99+
      2022-06-04
      详解 区别 exports
    • 详解Node.js中exports和module.exports的区别
      今天看了下node.js的require方法的源码,终于搞清楚exports和module.exports的区别了。 我们知道,node.js的模块暴露有两种方法。 1. 方式一:用exports /...
      99+
      2022-06-04
      详解 区别 Node
    • Node.js 中的 module.exports 与 exports区别介绍
      目录介绍示例从源码中理解通过示例理解示例一示例二示例三示例四小结介绍 module:每个模块中都有 module 对象,存放了当前模块相关的信息;module.e...
      99+
      2024-04-02
    • Node.js中module.exports 和exports使用误区
      目录一、module,module.exports ,exports含义二.案例案例一:案例二案例三案例四一、module,module.exports ,exports含义 mod...
      99+
      2024-04-02
    • node.js中module.exports与exports用法上的区别
      Node.js 引入了模块(Module)概念,一个模块可以通过module.exports 或 exports 将函数、变量等导出,以使其它 JavaScript 脚本通过require() 函数引入并...
      99+
      2022-06-04
      区别 js node
    • oracle中{}和${}区别是什么
      这篇文章主要介绍“oracle中{}和${}区别是什么”,在日常操作中,相信很多人在oracle中{}和${}区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”orac...
      99+
      2024-04-02
    • node Express框架中的res.send()和res.end()有什么区别
      本篇内容主要讲解“node Express框架中的res.send()和res.end()有什么区别”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“node Ex...
      99+
      2024-04-02
    • MYSQL中#和$的区别是什么
      小编给大家分享一下MYSQL中#和$的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!他们之间的区别用最直接的话来说就是...
      99+
      2024-04-02
    • MySQL中“:=”和“=”的区别是什么
      小编给大家分享一下MySQL中“:=”和“=”的区别是什么,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!=只有在set和upda...
      99+
      2024-04-02
    • Mybatis中#和$的区别是什么
      这篇文章主要介绍“Mybatis中#和$的区别是什么”,在日常操作中,相信很多人在Mybatis中#和$的区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Mybatis中#和$的区别是什么”的疑惑有所...
      99+
      2023-06-22
    • Servlet中/和/*的区别是什么
      这篇文章主要讲解了“Servlet中/和demo:这个urlPatterns是合法的。只不过它属于精确匹配,也就是说别看它中间有*,仍旧有且仅能匹配/api/*/demo这个请求路径匹配顺序有时候一个URL会被多个urlPatterns所匹...
      99+
      2023-06-20
    • js中Node和Element有哪些区别
      这篇文章主要介绍了js中Node和Element有哪些区别,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。准备工作在正式开始介绍 Node 和...
      99+
      2024-04-02
    • PHP中redis和memcache区别是什么
      这篇文章给大家分享的是有关PHP中redis和memcache区别是什么的内容。小编觉得挺实用的,因此分享给大家做个参考。一起跟随小编过来看看吧。PHP中redis和memcache区别PHP中memcac...
      99+
      2024-04-02
    • css中visiblity和display区别是什么
      这篇文章主要讲解了“css中visiblity和display区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css中visiblity和displ...
      99+
      2024-04-02
    • css中border和outline区别是什么
      这篇文章主要讲解了“css中border和outline区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“css中border和outline区别是什...
      99+
      2024-04-02
    • css中link和@import区别是什么
      这篇文章主要介绍了css中link和@import区别是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇css中link和@import区别是什么文章都会有所收获,下面我们一...
      99+
      2024-04-02
    软考高级职称资格查询
    编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
    • 官方手机版

    • 微信公众号

    • 商务合作