教程 > nodejs 教程 > 阅读:1005

node.js 根据文件的相对路径获取绝对路径——迹忆客-ag捕鱼王app官网

使用 path.resolve() 方法从 node.js 中的相对路径获取文件的绝对路径,例如 path.resolve('./some-file.js')resolve() 方法会将提供的相对路径解析为绝对路径。

const {resolve} = require('path');
// 如果使用 es6 模块语法
// import { resolve } from 'path';
const absolutepath = resolve('./another-file.js');
//  /users/jiyik/workspace/js/another-file.js
console.log(absolutepath);

path.resolve 方法采用一个或多个路径段并将它们解析为绝对路径。

nodejs 获取文件绝对路径

如果在没有传递参数的情况下调用 resolve() 方法,或者传递一个空字符串,它将返回当前工作目录的绝对路径。

const {resolve} = require('path');
// 如果使用 es6 模块语法
// import { resolve } from 'path';
const absolutepath = resolve('');
// /users/jiyik/workspace/js
console.log(absolutepath);

nodejs 获取绝对路径目录

指定相对路径时,我们还可以指定上一级目录。

const {resolve} = require('path');
// 如果使用 es6 模块语法
// import { resolve } from 'path';
const absolutepath = resolve('../aws-cli.txt');
// "/users/jiyik/workspace/aws-cli.txt"
console.log(absolutepath);

nodejs 获取绝对路径上一级目录

我们可能还会看到正在使用的 __dirname__filename 变量。

console.log(__dirname);
console.log(__filename);

__dirname 变量返回当前模块的目录名。

例如,如果我们在位于 /home/user/my-module.js 的模块中使用 __dirname 变量,则 __dirname 变量将返回 /home/user

__filename 变量返回当前模块的绝对路径。

因此,如果我们在位于 /home/user/my-module.js 的模块中使用 __filename 变量,则 __filename 变量将返回 /home/user/my-module.js

查看笔记

扫码一下
查看教程更方便
网站地图