MST

星途 面试题库

面试题:Node.js模块路径解析规则基础应用

假设你有一个Node.js项目,目录结构如下:项目根目录下有`main.js`和`modules`文件夹,`modules`文件夹中有`module1.js`。`module1.js`定义了一个函数并导出。在`main.js`中,如何使用相对路径正确引入`module1.js`并调用其函数?请写出具体代码。同时解释相对路径在Node.js模块解析中的规则。
27.1万 热度难度
前端开发Node.js

知识考点

AI 面试

面试题答案

一键面试
  1. main.js代码
const module1 = require('./modules/module1');
module1();
  1. 相对路径在Node.js模块解析中的规则
    • 在Node.js中,当使用相对路径(以./../开头)引入模块时,它会相对于当前文件所在的目录进行查找。
    • ./表示当前目录,例如require('./modules/module1')表示从当前main.js所在目录下的modules文件夹中查找module1.js文件。
    • ../表示上级目录,如果要从上级目录引入模块,可以使用require('../someModule'),这会从当前文件所在目录的上一级目录查找someModule.js(或someModule文件夹,如果它是一个包并包含package.json指定的入口文件)。Node.js会优先查找.js后缀的文件,如果不存在,再查找同名的目录作为包来处理。