Path模块

连接路径:path.join()

用于连接路径。该方法的主要用途在于,会正确使用当前系统的路径分隔符,Unix系统是”/“,Windows系统是”\“。

var path = require('path');
path.join('/foo', 'bar');

返回: /foo/bar

path.join('/foo', 'bar', 'baz/asdf', 'quux', '..')

返回: /foo/bar/baz/asdf

path.resolve()

将相对路径转为绝对路径。

它可以接受多个参数,依次表示所要进入的路径,直到将最后一个参数转为绝对路径。如果根据参数无法得到绝对路径,就以当前所在路径作为基准。除了根目录,该方法的返回值都不带尾部的斜杠

// 格式
path.resolve([from ...], to)
path.resolve('/foo/bar', './baz')
// 输出结果为   '/foo/bar/baz'
path.resolve('/foo/bar', '/tmp/file/')
// 输出结果为  '/tmp/file'
path.resolve('wwwroot', 'static_files/png/', '../gif/image.gif')
// 当前的工作路径是 /home/itbilu/node,则输出结果为
// '/home/itbilu/node/wwwroot/static_files/gif/image.gif'

前边两个对比:

const path = require('path');
let myPath = path.join(__dirname,'/img/so');
let myPath2 = path.join(__dirname,'./img/so');
let myPath3 = path.resolve(__dirname,'/img/so');
let myPath4 = path.resolve(__dirname,'./img/so');
console.log(__dirname);           //D:\myProgram\test
console.log(myPath);     //D:\myProgram\test\img\so
console.log(myPath2);   //D:\myProgram\test\img\so
console.log(myPath3);   //D:\img\so<br>
console.log(myPath4);   //D:\myProgram\test\img\so

path.relative

接受两个绝对路径参数。该方法返回第二个路径相对于第一个路径的那个相对路径。

path.relative('/data/orandea/test/aaa', '/data/orandea/impl/bbb')
// '../../impl/bbb'

path.parse

返回路径各部分的信息

var myFilePath = '/someDir/someFile.json';
path.parse(myFilePath).base
// "someFile.json"
path.parse(myFilePath).name
// "someFile"
path.parse(myFilePath).ext
// ".json"

猜你喜欢

转载自www.cnblogs.com/yminskyline/p/9102176.html