Skip to content

PATH模块

向军大叔每晚八点在 抖音bilibli 直播

xj-small

path模块是node.js的内置模块,用于解析文件路径操作。下面介绍常用属性和方法。

__dirname

获取当前脚本所在目录,这是内置函数,不需要require,不了解可以看 模块管理 章节

console.log(__dirname)

__filename

当前脚本的路径

console.log(__filename)

basename

返回文件名中最后部分,一般是文件名。

  • path是node内置模块,导入标准命名是 node:path ,不过 node:是可以省略的
import path from 'node:path'
console.log(path.basename('./src/module/app.ts'))
//app.ts

dirname

返回文件中的目录部分

console.log(path.dirname('./src/module/app.ts')) 
//./src/module

extname

返回文件名的扩展名

console.log(path.extname('/src/module/app.ts')) //.ts

parse

获取文件的详细信息

import path from 'path'
console.log(path.parse('/src/module/app.ts'));

结果如下

{
  root: '/',
  dir: '/src/module',
  base: 'app.ts',
  ext: '.ts',
  name: 'app'
}

format

这是 parse的反函数,将对象转换为路径字符串

import path from 'path'
console.log(path.format(path.parse(__dirname)))

isAbsolute

判断路径是否是绝对路径

console.log(path.isAbsolute('./src/module/app.ts')) //false

console.log(path.isAbsolute('/etc')) //true

join

根据不同操作系统中的路径分隔符,组成新的文件路径

//src/module/app.ts
console.log(path.join('./src', 'module', 'app.ts')) 

//src/app.ts
console.log(path.join('src', 'module', '../app.ts'))

resolve

根据不同操作系统中的路径分隔符,返回绝对路径的文件

console.log(path.resolve('./src', 'module', 'app.ts')) ///Users/hd/code/test/src/module/app.ts