[解決済み] [path.resolveとpath.joinの違いは何ですか?
2022-03-31 06:27:08
質問
次のような起動の仕方は、何か違いがあるのでしょうか?
path.join(__dirname, 'app')
vs.
path.resolve(__dirname, 'app')
どちらを優先すべきでしょうか?
どのように解決するのですか?
で始まるセグメントを扱う2つの関数です。
/
は、まったく異なる方法で
join
は前の引数と連結されるだけですが
resolve
を実行すると、これをルートディレクトリとして扱い、それ以前のパスはすべて無視されます。
cd
を各引数で指定します。
path.join('/a', '/b') // Outputs '/a/b'
path.resolve('/a', '/b') // Outputs '/b'
もう一つ、注意すべきは
path.resolve
は常に絶対URLとなり、このパスを解決するために作業ディレクトリをベースとして使用します。しかし
__dirname
が絶対パスであることは、あなたのケースでは問題ではありません。
どちらを使うべきかというと、それは
/
単純に結合するのか、それとも新しいルートとして動作させるのか?
もし他の引数がハードコーディングされているなら、それは本当に重要ではありません。その場合、(a) この行が将来どのように変わる可能性があるか、(b) コード内の他の場所との整合性はどうか、を検討すべきでしょう。
関連
-
[解決済み] NodeJsのSequelizeでautoIncrementはどのように動作するのですか?
-
[解決済み] -saveと-save-devの違いは何ですか?
-
[解決済み] path.join と path.resolve を __dirname と比較する。
-
[解決済み] package.jsonのチルダ(~)とキャレット(^)の違いは何ですか?
-
[解決済み] npm package.jsonファイルのdependencies, devDependencies, peerDependenciesの違いは何ですか?
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み] Node.js + Nginx - 今度は何?
-
[解決済み] Node.jsのmodule.exportsとexportsの比較
-
[解決済み] npm install vs. update - 違いは何ですか?
-
[解決済み】Node.jsのrequireとES6のimport/exportを使い分ける。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】Node.js getaddrinfo ENOTFOUND
-
[解決済み】Node Version Manager のインストール - nvm コマンドが見つかりません。
-
[解決済み】モジュール 'internal/util/types' が見つかりません。
-
[解決済み】ExpressJSとMeteorJSの比較【終了しました
-
[解決済み】ENOENT, そのようなファイルまたはディレクトリがありません。
-
[解決済み】Node.jsのホスト名/IPが証明書のaltnamesと一致しない。
-
[解決済み】passport.js passport.initialize() ミドルウェアが使用されていません。
-
[解決済み】POSTできない/expressを使用するとエラーが発生する
-
[解決済み] ノードマータ予期せぬフィールド
-
[解決済み] path.join と path.resolve を __dirname と比較する。