使用__dirname的path.join与path.resolve

使用__dirname的path.join与path.resolve,第1张

使用__dirname的path.join与path.resolve

是的,功能之间存在差异,但是在这种情况下,您使用它们的方式将产生相同的结果。

path.join
通过将两个路径合并在一起来返回规范化路径。它可以返回绝对路径,但不一定总是这样。

例如:

path.join('app/libs/oauth', '/../ssl')

决心

app/libs/ssl

path.resolve
另一方面,将解析为绝对路径。

例如,当您运行时:

path.resolve('bar', '/foo');

返回的路径将是

/foo
因为这是可以构造的第一个绝对路径。

但是,如果您运行:

path.resolve('/bar/bae', '/foo', 'test');

返回的路径将

/foo/test
再次出现,因为那是可以从右到左形成的第一个绝对路径。

如果未提供指定根目录的路径,则给该

resolve
函数的路径将附加到当前工作目录中。因此,如果您的工作目录为
/home/mark/project/

path.resolve('test', 'directory', '../back');

决心

/home/mark/project/test/back

使用

__dirname
是包含源文件的目录的绝对路径。当您使用
path.resolve
或时
path.join
,如果您在下面给出相同的路径,它们将返回相同的结果
__dirname
。在这种情况下,这实际上只是一个偏好问题。



欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zaji/5476797.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-12-12
下一篇2022-12-12

发表评论

登录后才能评论

评论列表(0条)

    保存