node中的path.resolve
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'
相关推荐
Attend 2020-07-27
云之高水之远 2020-06-20
LychieFan 2020-05-31
鲁鲁酱 2020-05-26
applecarelte 2020-04-06
onlykg 2020-02-18
FCLAMP 2020-02-13
未来战士 2019-12-08
老谢的自留地 2020-01-08
Ericbig 2020-01-05
secondid 2019-12-23
webfullStack 2019-12-15
sunln00 2019-12-09
Crazyshark 2019-11-04
zhangyou00 2019-11-19
WinerChopin 2019-11-17