var name;
exports.setName = function (thyName) {
name = thyName;
};
exports.sayHello = function () {
console.log('Hello ' + name);
};
function Hello() {
var name;
this.setName = function (thyName) {
name = thyName;
};
this.sayHello = function () {
console.log('Hello ' + name);
};
};
exports.Hello = Hello;
上面两块代码,均可返回一个exports对象,两者的区别在于,前者,exports对象中有setName、sayHello方法,后者,exports对象中又有Hello对象,其中Hello对象有setName、sayHello方法。
再看
function Hello() {
var name;
this.setName = function (thyName) {
name = thyName;
};
this.sayHello = function () {
console.log('Hello ' + name);
};
};
module.exports = Hello;
这个模块,返回的也是exports,但它不算是对象,仅是Hello对象的引用。
其中外部若想获得Hello对象,第二块代码需要通过require('第二块代码').Hello,而第三块代码则仅需要require('第三块代码')即可获得Hello对象。
不知道可不可以这么说:exports是个打酱油的。
分享到:
相关推荐
Node.js 模块是构成 Node.js 应用程序的基础组件,它们允许开发者通过导入和导出来组织和重用代码...理解并熟练运用 `require()`、`module.exports`、`exports` 以及 `npm` 等工具,是每个 Node.js 开发者的必备技能。
Node.js是基于Chrome V8引擎的JavaScript运行环境,它允许JavaScript运行在服务器端,Node.js的模块化机制提供了代码的封装和复用。在Node.js模块化编程中,经常使用的两个核心概念是exports和module.exports。了解...
在Node.js中,模块的导出和导入是通过CommonJS规范实现的,而exports和module.exports则是实现模块导出的关键概念。虽然在日常开发中经常使用这两个概念,但很多开发者可能会忽视它们之间的区别,这可能会在模块的...
对于Vue.js项目,尤其是由`@vue/cli`生成的Vue3项目,`package.json`中的`main`、`module`和`exports`字段用于指定不同环境下的入口文件,这有助于优化加载和打包过程。本文将深入探讨这三种方式的使用以及如何...
Node.js 引入了模块(Module)概念,一个模块可以通过module.exports 或 exports 将函数、变量等导出,以使其它 JavaScript 脚本通过require() 函数引入并使用。 module.exports 初始值为一个空对象 {},所以 ...
每个`.js`文件都可以被视为一个独立的模块,通过`module.exports`或`exports`导出对外接口,通过`require()`导入其他模块。 2. **npm**: npm是Node.js的包管理器,它允许开发者轻松地安装、共享和管理项目依赖。...
当我们谈论`exports`和`module.exports`时,这是Node.js模块系统中的两个关键对象,它们之间存在微妙的区别,对于正确导出和导入模块至关重要。 首先,我们要明白`exports`和`module.exports`都是Node.js模块系统中...
前言Node中,每个模块都有一个exports接口对象,我们需要把公共的方法或者字符串挂载在这个接口对象中,其他的模块才可以使用。Node.js中只有模块作用域
总的来说,Node.js的`module`模块是其模块系统的核心,它使得代码组织和复用变得简单高效,同时也提供了诸如`require()`、`exports`、`module.exports`等工具,以及`__filename`和`__dirname`这样的便利变量,以支持...
2. **模块系统**:Node.js使用模块化设计,每个`.js`文件都可以视为一个模块,通过`require`和`exports`或`module.exports`来导入和导出模块。 3. **V8引擎**:Node.js使用Google的V8引擎,使得JavaScript的执行速度...
当你在文件中使用`require('some_module')`时,Node.js会返回该模块的导出对象,这个对象是`module.exports`的值。 `module.exports`是每个模块都有的一个全局变量,它的初始值是一个空对象`{}`。这个对象用于存放...
在JavaScript的世界里,`exports` 和 `module.exports` 是Node.js模块系统中的核心概念,用于在模块间共享和导出代码。理解它们的工作原理对于编写可重用和组织良好的JavaScript应用至关重要。 首先,我们来解释...
Node.js是一款基于Chrome V8引擎的JavaScript运行环境,它允许开发者在服务器端使用JavaScript编写程序,从而打破了JavaScript只能在浏览器中运行的传统。Node.js通过事件驱动、非阻塞I/O模型,使其轻量且高效,非常...
module.exports / exports: 只有 node 支持的导出 这一刻起,我觉得是时候要把它们之间的关系都给捋清楚了,不然我得混乱死。话不多少,咱们开干!! node模块 Node里面的模块系统遵循的是Com
2. **模块系统**:Node.js 采用了 CommonJS 规范,允许代码按需加载模块,通过 `require` 和 `module.exports` 进行导入和导出。此外,npm(Node Package Manager)是其强大的依赖管理工具,拥有海量的第三方模块,...
* 在 Node.js 中,`module.exports` 和 `exports` 都可以用来导出模块成员,但 `exports` 只能导出单个成员,而 `module.exports` 可以导出整个模块的所有成员。 * 在使用 `exports` 时,需要注意的是,它只能导出...
Node.js作为一个基于Chrome V8引擎的JavaScript运行环境,它使得开发者可以在服务器端使用...熟练掌握`require()`、`exports`、`module.exports`以及`module`对象的使用,将有助于构建高效、可维护的Node.js应用程序。