Node.js路径.联接反向操作



Node.js API 中的示例

path.join('/foo', 'bar', 'baz/asdf', 'quux', '..');
// Returns: '/foo/bar/baz/asdf'

但是如何从"/foo/bar/baz/asdf"和"baz/asdf"中获取"/foo/bar"呢?

path.magic('/foo/bar/baz/asdf', 'baz/asdf')
//Returns: '/foo/bar/'

我认为没有本机方法可以做到这一点。

我认为最好的方法是使用path.join('/foo/bar/baz/asdf', '..', '..');

你可以像下面这样制作自己的函数

const magic = function(originalPath, removePath) {
let arr = removePath.split('/').filter((p) => p !== '').map(() => '..');
return path.join(originalPath, ...arr);
}

您可能需要使用path.sep而不是'/'来支持各种操作系统。

相关内容

  • 没有找到相关文章

最新更新