在node.js中,如何纠正Windows、Linux和Mac之间反斜杠和正斜杠的差异?
在使用git bash
调用位置时,Windows需要反斜杠,而Mac / Linux需要正斜杠。我正在处理一个同时涉及Mac和Windows用户的项目,因此我不能在代码中将所有正斜杠改为反斜杠,因为当Mac用户pull时,coffee将无法正确运行,反之亦然。
有没有解决方法?
在node.js中,如何纠正Windows、Linux和Mac之间反斜杠和正斜杠的差异?
在使用git bash
调用位置时,Windows需要反斜杠,而Mac / Linux需要正斜杠。我正在处理一个同时涉及Mac和Windows用户的项目,因此我不能在代码中将所有正斜杠改为反斜杠,因为当Mac用户pull时,coffee将无法正确运行,反之亦然。
有没有解决方法?
请确保使用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'
希望这可以帮到你。
var path = require("path");
"hey" + path.sep + "there" + path.sep + "you"
或者
["hey", "there", "you"].join(path.sep);
path.join
为您所做的,但它还会确保您没有双斜杠和其他问题。 - Chad