文字列連結ではなく path.join() メソッドを使用する必要があるのはなぜか疑問に思うかもしれません。 '/path' + '/' + 'to' + '/' + 'test.txt' // '/path/to/test.txt' ['/path', 'to', 'test.txt'].join('/') // '/path/to/test.txt' 1. Windows のサポート。 Windows では、パス区切り文字としてスラッシュ (/) ではなくバックスラッシュ (\) を使用します。 path.join() がこれを処理します。 path.join('data', 'test.txt') は、Windows だけでなく Linux と OSX でも 'data/test.txt' を返すためです。 2. エッジケースを処理するために使用されます。ファイル システム パスを操作する場合、多くのエッジ ケースが発生します。 たとえば、2 つのパスを手動で連結しようとすると、誤ってパス区切り文字が重複してしまう可能性があります。 path.join() メソッドは先頭と末尾のスラッシュを処理します。 path.join('data', 'test.txt') // 'data/test.txt' path.join('data', '/test.txt') // 'data/test.txt' path.join('data/', 'test.txt') // 'data/test.txt' path.join('data/', '/test.txt') // 'data/test.txt' 知識ポイントの拡張: 1. path.join() メソッドpath.join() メソッドは複数のパラメータ文字列をパス文字列に結合します。 console.log(path.join(__dirname,'a','b'));現在のファイルのパスが E:/node/1 の場合、連結されたパスは E:/node/1/a/b になります。 console.log(path.join(__dirname,'/a','/b','…'));パスの先頭の / は連結に影響しません。… は前のレベルのファイルを表し、連結結果はE:/node/1/aになります。 console.log(path.join(__dirname,'a',{},'b'));また、path.join() はパス文字列の検証にも役立ちます。文字列が不正な場合は、エラーがスローされます: パスは文字列である必要があります。 2. path.resolve() メソッドpath.resolve()メソッドは、プログラムをルートディレクトリとして開始点として使用し、パラメータに基づいて絶対パスを解決します。 アプリケーションをルートディレクトリとして使用する 通常の文字列はサブディレクトリを表す / は絶対パスのルートディレクトリを表します console.log(path.resolve());アプリケーションの起動ファイルのディレクトリを取得します (現在の実行ファイルの絶対パスを取得します) E:\zf\webpack\1\src console.log(path.resolve('a','/c')); E:/c 、/ スラッシュはルートディレクトリを表すため、結果は E:/c になります。 そのため、スプライシング時に/スラッシュを使用するときは注意が必要です。 console.log(path.resolve(__dirname,'img/so')); E:\zf\webpack\1\src\img\soこれは、パスが実際に存在するかどうかに関係なく、ファイル パスを連結します。 console.log(path.resolve('wwwroot', 'static_files/png/', '…/gif/image.gif')) E:\zf\webpack\1\src\wwwroot\static_files\gif\image.gif 最初の文字列が / で始まっていないため、これは現在のアプリケーション起動ファイルの絶対パスと後続のすべての文字列の連結です。 ...親ディレクトリも表します。 Node.js における path.join() の利点に関するこの記事はこれで終わりです。Node.js における path.join() の利点についてさらに詳しく知りたい場合は、123WORDPRESS.COM の過去の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 |
<<: ova ファイルを VMware にインポートする際の落とし穴の概要
>>: Alibaba Cloud Server Ubuntu 上の Workbench が MySQL に接続できない問題の解決策 (テスト済み)
場合によっては、特定の条件に基づいて Web ページ内の HTML 要素を表示するか非表示にするかを...
序文実際の開発では、ビジネス要件が変更されることが多いため、ストアド プロシージャの特性を変更するこ...
この記事ではMySQL 8.0.22のインストールと設定について記録します。具体的な内容は以下のとお...
目次1. 日付2. 正規表現3. オリジナルパッケージタイプ序文:参照値(オブジェクト)は、 Dat...
目次負荷分散負荷分散分類1. DNS 負荷分散2. IP負荷分散3. リンク層の負荷分散4. ハイブ...
みなさんこんにちは。今日は12連休ですが、何かお買い物はしましたか?今日は「Linux View S...
数日前に仕事を始めて、Mysql をインストールしたところ、開くことができました。今日、会社に行った...
目次背景element-ui の自動構築はどのように機能しますか?メイクファイル新しい.jsファイル...
目次1. MySQL msiバージョンをダウンロードする2. インストール3. 環境変数を設定する1...
この記事では、JavaScriptカルーセルの実装方法を参考までに紹介します。具体的な内容は次のとお...
更新: MySQL の公式 Web サイトにアクセスして MySQL インストーラーをインストールし...
目次1.watchは一般的なデータ(数値、文字列、ブール値)の変更を監視します。 1. 数値2. 文...
<br />オリジナル: http://www.alistapart.com/artic...
目次1. はじめに2. 自己増分ストレージの説明3つの自己付加価値修正メカニズム4. 自己評価を修正...
ELKとは何ですか? ELK は、Elastic が提供するログ収集およびフロントエンド表示ソリュー...