path.resolve()和path.join()的区别

  • path.join() 

组装路径。该方法的主要用途在于,会正确使用当前系统的路径分隔符,Unix系统是/,Windows系统是\。
路径字符中可以使用..或../进行相对路径的计算,其它路径表示符会被忽略

console.log(path.join('b','c','\d')) //结果为:b\c\d
console.log(path.join('b','c','d','..')) //结果为:b\c
console.log(path.join('b','c','./','d')) //结果为:/b/c/d
  • path.resolve() 

解析为相对于当前目录的绝对路径,相当于cd命令
遇到某一个路径中有/时,则表示跳转到根目录,../表示跳转到上层目录

假设下列脚本位于e:\test,执行结查如下

console.log(path.resolve('b','c','d')) //结果为:E:\test\b\c\d
console.log(path.resolve('b','c','/d')) //结果为:E:\d
console.log(path.resolve('b','c','..')) //结果为:E:\test\b
  • __dirname
    __dirname 总是指向被执行 js 文件的绝对路径
posted @ 2018-12-16 23:10  我是格鲁特  阅读(1511)  评论(0编辑  收藏  举报