重点 -> 核心区别:path.resolve构成绝对路径后就返回,path.join 用于连接路径,会连接完所有的路径
node的path模块经常被使用,但是path的resolve和join两个方法很容易混淆,本篇主要介绍二者的核心区别及各自的使用方式。
path.solve
path.resolve([from ...], to)
1,将to解析为绝对路径;
2,给定的路径从左向右处理,后面每个 path 被依次解析,直到构造完成一个绝对路径;
path.join
path.join([path1][, path2][, ...])
1,用于连接路径
2,主要用途在于会正确使用当前系统路径分隔符,Unix系统是"/",Windows系统是""
3,当前分隔符路径指向的路径之上的路径+当前分隔符路径,计算方式是从左向右,依次相加,输出为绝对路径
核心区别:path.resolve构成绝对路径后就返回,path.join 用于连接路径,会连接完所有的路径
作者:qdmoment
来源:CSDN
原文:https://blog.csdn.net/qdmoment/article/details/85099571
另一篇
resolve
path.resolve(); // 默认返回所在目录绝对路径,等于 __dirname
// 输出:C:\Users\Administrator\Desktop\demo
path.resolve("/abc"); // /作为绝对路径的根目录,遇到 / 则回到根目录解析
// 输出:C:\abc
console.log(path.resolve('../abc'));
// 输出:C:\Users\Administrator\Desktop\abc
console.log(path.resolve('a', 'b', '/d/e', 'f'));
// 输出:C:\d\e\f
console.log(path.resolve('/a', '/b', '/c'));
// 输出:C:\c
join
path.join(); // 连接后为空字符串,表示当前目录
// 输出:.
console.log(path.join('a', 'b', '..', 'c/', './d')); // 将path片段都连接起来
// 输出:a/c/d
作者:xioxioPROG
链接:https://www.jianshu.com/p/b7c9b9137353
来源:简书