const absolutePath = path.join(__dirname, some, dir);
contre.
const absolutePath = path.resolve(__dirname, some, dir);
path.joinconcaténera __dirnamequel est le nom de répertoire du fichier actuel concaténé avec les valeurs de someet diravec le séparateur spécifique à la plate-forme.
Tandis que
path.resolvetraitera __dirname, someet à- dirdire de droite à gauche préfixer par son traitement.
si l'une des valeurs de someou dircorrespond à un chemin racine, le chemin précédent sera omis et le processus de repos sera considéré comme racine
Afin de mieux comprendre le concept, laissez-moi vous expliquer les deux un peu plus en détail comme suit: -
Les path.joinet path.resolvesont deux méthodes ou fonctions différentes du module de chemin fourni par nodejs.
Où les deux acceptent une liste de chemins mais la différence vient du résultat, c'est-à-dire comment ils traitent ces chemins.
path.joinconcatène tous les segments de chemin donnés ensemble en utilisant le séparateur spécifique à la plate-forme comme délimiteur, puis normalise le chemin résultant. Pendant le path.resolve()processus, la séquence de chemins de droite à gauche, chaque chemin suivant étant ajouté jusqu'à ce qu'un chemin absolu soit construit.
Quand aucun argument n'est fourni
L'exemple suivant vous aidera à comprendre clairement les deux concepts: -
Mon nom de fichier est index.jset le répertoire de travail actuel estE:\MyFolder\Pjtz\node
const path = require('path');
console.log("path.join() : ", path.join());
// outputs .
console.log("path.resolve() : ", path.resolve());
// outputs current directory or equalent to __dirname
Résultat
λ node index.js
path.join() : .
path.resolve() : E:\MyFolder\Pjtz\node
path.resolve()La méthode affichera le chemin absolu où les path.join()retours. représentant le répertoire de travail courant si rien n'est fourni
Quand un chemin racine est passé comme arguments
const path=require('path');
console.log("path.join() : " ,path.join('abc','/bcd'));
console.log("path.resolve() : ",path.resolve('abc','/bcd'));
Résultat i
λ node index.js
path.join() : abc\bcd
path.resolve() : E:\bcd
path.join()concatène uniquement la liste d'entrée avec un séparateur spécifique à la plate-forme tandis que le path.resolve()processus traite la séquence de chemins de droite à gauche, chaque chemin suivant étant ajouté au début jusqu'à ce qu'un chemin absolu soit construit.