首页 > 其他 > 详细

node中的path.resolve

时间:2018-05-14 23:32:07      阅读:203      评论:0      收藏:0      [点我收藏+]

path.resolve([arg1,arg2,...])返回值有两种情况:

1.每个参数都不带‘/‘,比如path.resolve(),或者path.resolve(‘path1‘,‘path2‘)

2.一个或多个参数带‘/‘符号 path.resolve(‘/path‘);

 

下面具体分析:

1.什么参数也没有的时候:

path.resolve()或者paht.resolve(‘‘)

输出:当前文件所在文件夹路径  === __dirname

 

2.为文件夹名字(参数>=1):

path.resolve(‘path‘)

输出:当前文件所在文件夹绝对路径/path

或者 path.resolve(‘path1‘,‘path2‘)

输出:当前文件所在文件夹绝对路径/path1/path2

或者 path.resolve(‘path1‘,‘path2‘.......‘pathX‘)

输出:当前文件所在文件夹绝对路径/path1/path2...../pathX

 

3.文件夹名字前加了‘/‘

注意,无论是第几个文件前加了/!!!最终路径都为:/+‘最后一个前面加/的文件文件名’+‘剩下文件夹’

好的,我知道上面那句话很难懂,那就看例子

1.path.resolve(‘/path‘)

输出: /path

2.

2.1path.resolve(‘path1‘,‘path2‘,‘/path3‘) 

*前两个path前没有斜杠,只最后一个有

输出: /path2

2.2.path.resolve(‘path1‘,‘/path2‘,‘/path3‘)

*后面两个path都有斜杠

输出:/path2

看到没,跟path1,path2,根本没有任何关系,因为最后一个path2前面有斜杠/,所以地址为path2

3.path.resolve(‘path1‘,‘/path2‘,‘path3‘) 

*path2有斜杠,后面的path3没有斜杠

输出: /path2/path3

 

 

总结:

if(当path.resolve参数中不存在带/的参数时)

  return 绝对路径

else

  return /+‘最后一个前面加/的文件文件名’+‘剩下文件夹’

 

带/的参数:举个例子来解释就是‘/path‘

node中的path.resolve

原文:https://www.cnblogs.com/zytt/p/9038598.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!