node . js 中的导入导出
原文:https://www.geeksforgeeks.org/import-and-export-in-node-js/
导入和导出文件是任何编程语言的重要部分。导入函数或模块增强了代码的可重用性。当应用程序变大时,维护一个包含所有功能和逻辑的文件变得很困难。也阻碍了调试的进程。因此,最好为特定的函数创建单独的文件,然后根据需要导入它们。
Node.js 还允许导入和导出函数和模块。一个模块中的函数可以在其他模块中导入和调用,从而节省了将函数定义复制到其他文件中的工作量。该模块可以单独编辑或调试,从而更容易添加或删除功能。
包含其他文件功能的步骤:
- 创建模块:模块是在 Node.js 中创建的,是 JavaScript 文件。每次都有新文件。js 扩展被创建,它变成了一个模块。
- 导出模块: 文件名:func.js
function add(x, y) {
return x + y;
}
function subtract(x, y) {
return x - y;
}
// Adding the code below to allow importing
// the functions in other files
module.exports = { add }
-
Importing a Module: We need to import the module to use the functions defined in the imported module in another file. The result returned by require() is stored in a variable which is used to invoke the functions using the dot notation. Filename: main.js
```js // Importing the func.js module
// The ./ says that the func module // is in the same directory as // the main.js file const f = require('./func');
// Require returns an object with add() // and stores it in the f variable // which is used to invoke the required
const result = f.add(10, 5);
console.log('The result is:', result); ```
输出:
js The result is: 15
从本地文件导入多个功能: 文件名:func.js
```js function add(x, y) { return x + y; }
function subtract(x, y) { return x - y; }
module.exports = { add, subtract}; ```
文件名:main.js
```js const f = require('./func');
console.log(f.add(4, 4)); console.log(f.subtract(8, 4)); ```
我们还可以使用析构语法来解包 require()函数返回的对象的属性,并将它们存储在各自的变量中。
js const { add, subtract} = require('./func'); console.log(add(4, 4)); console.log(subtract(8, 4));
输出:
```js 8 4
```
导出模块的其他方式
-
定义模块内部的函数。导出对象。
```js module.exports = { add: function (x, y) { return x + y; },
subtract: function (x, y) { return x - y; }, }; ```
-
将每个功能独立定义为一个模块方法。导出
```js module.exports.add = function (x, y) { return x + y; };
module.exports.subtract = function (x, y) { return x - y; }; ```
从目录中导入模块:通过在 lib.js 前面加上目录名,在目录中导入 lib.js 文件。
```js const lib = require('./mod/lib');
console.log(lib.add(6, 4)); console.log(lib.subtract(12, 4)); ```
node . js 中有三种类型的模块
-
从本地模块导入:这些模块由用户创建,可以导入为:
```js const var = require('./filename.js'); // OR const var = require('./path/filename.js');
```
-
从核心模块导入:这些模块内置在 Node.js 中,可以导入为:
js const var = require('fs');
-
从第三方模块导入:这些模块是使用包管理器(如 npm)安装的。第三方模块的例子有 express、mongoose、nodemon 等。这些导入为:
js const express = require('express');
因此,上面是几个在 Node.js 中从不同文件导入和导出函数的例子。
-
版权属于:月萌API www.moonapi.com,转载请注明出处