2011-12-06 7 views
3

私はかなり長い間Node.jsアプリを書いてきましたが、Windows上でNode.jsを使ってファイルを読み込むときにスラッシュとバックスラッシュの使用に注意を払うことはほとんどありませんでした。Node.jsにフォワードスラッシュとバックスラッシュを使用してファイルをロードすると、大きな違いはありますか?

問題なく互換性のある両方を使用した後、私は不思議に思っています。両者には大きな違いがありますか?

今まで私が気づいた唯一の違いは、JavaScriptの文字列リテラル(CやC++のような)は、すべての逆スラッシュの前に別の逆スラッシュが必要であることです。 (実際、これは、最近、Windows上のNode.jsの場合でも、逆スラッシュを使用することを嫌っている理由です)。

+5

使用 '/'。ノードは、あなたのためのクロスプラットフォームになるようにファイルURI文字列を正規化します – Raynos

+2

Raynosと同意します。ファイルパスに '\'文字を使用して古代時代への逆戻り。 WindowsはXP以降のパスで '/'をサポートしています。 – aroth

+0

@レイノーズノードは何もしません。 WindowsとPOSIXはともにスラッシュに準拠しています。 – Tower

答えて

2

Raynosがコメントで言ったように、私はWindows上でさえ常にスラッシュを使うべきです。

更新

上記の答えは本当に、本当に時代遅れです。最初からファイルパスを構築する場合は、常にpath.joinを使用してください。

例:常に

// Get file.txt from a folder called `somefolder` that is 
// located in the same directory as the currently running 
// .js file. 
path.join(__dirname, 'somefolder', 'file.txt'); 
関連する問題