首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >path.join(__dirname,"foo","bar")与path.join(__dirname,"foo/bar")

path.join(__dirname,"foo","bar")与path.join(__dirname,"foo/bar")
EN

Stack Overflow用户
提问于 2017-09-26 00:49:06
回答 1查看 3.3K关注 0票数 3

顺便说一下,foobar应该是字符串文本。

我见过一堆同时使用"foo/bar""foo", "bar"的存储库

我用下面的代码使用基准js做了一个基准测试(我还做了一个要旨)

代码语言:javascript
复制
suite.add('foo/bar', function() {
    path.join(__dirname, 'foo/bar')
})
.add('foo, bar', function() {
    path.join(__dirname, 'foo', 'bar')
})
.on('complete', function() {
    console.log('Fastest is ' + this.filter('fastest').map('name'));
})
.run({ 'async': true });

foo/bar的速度更快。但是我仍然看到很多像path.join(__dirname, '..', '..', 'node_modules')这样的代码

所以有理由使用path.join(__dirname, 'foo', 'bar')吗?

我也在说path.resolve

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-09-26 02:52:14

使用path.join()有三个主要好处。

  1. 它会自动检查尾随分隔符,这样就不会在结果路径中将两个分隔符放在一起。
  2. 它自动使用特定于平台的路径分隔符(它是Windows上的反斜杠)。
  3. 使用上述逻辑连接段后,它将路径规范化,解析任何...段。

因此,当您想要使用该功能时,可以肯定地使用path.join()。如果您不需要这些特性中的任何一个,那么您可以任意选择(使用自己的手动路径构造或使用path.join())。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46416207

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档