Node.js适用于Windows和Mac操作系统——正斜杠、反斜杠纠正

8

在node.js中,如何纠正Windows、Linux和Mac之间反斜杠和正斜杠的差异?

在使用git bash调用位置时,Windows需要反斜杠,而Mac / Linux需要正斜杠。我正在处理一个同时涉及Mac和Windows用户的项目,因此我不能在代码中将所有正斜杠改为反斜杠,因为当Mac用户pull时,coffee将无法正确运行,反之亦然。

有没有解决方法?

2个回答

16

请确保使用path方法来代替手动输入路径。在跨平台开发中,path.normalize()path.join()特别有用:

在Windows上:

$ node
> var p = require('path')
undefined
> p.normalize('/hey/there/you')
'\\hey\\there\\you'
> p.join('/hey', 'there', '/you')
'\\hey\\there\\you'

在Linux上:

$ node
> var p = require('path')
undefined
> p.normalize('/hey/there/you')
'/hey/there/you'
> p.join('/hey', 'there', '/you')
'/hey/there/you'

希望这可以帮到你。


1
除了 Chad 的回答之外,在构建路径时,您还可以:
var path = require("path");
"hey" + path.sep + "there" + path.sep + "you"

或者

["hey", "there", "you"].join(path.sep);

1
这就是 path.join 为您所做的,但它还会确保您没有双斜杠和其他问题。 - Chad

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接