Maison > Article > interface Web > Quelles sont les variables globales dans nodejs
Dans nodejs, il y a deux variables globales : 1. "__filename", qui représente le nom de fichier du script en cours d'exécution, et peut afficher le chemin absolu de l'emplacement du fichier ; 2. "__dirname", qui représente le chemin absolu de l'emplacement du fichier ; répertoire où se trouve le script en cours d’exécution.
L'environnement d'exploitation de ce tutoriel : système windows7, nodejs version 12.19.0, ordinateur DELL G3.
1) _filename : Pointe vers le nom du fichier de script en cours d'exécution.
2) _dirname : pointe vers le répertoire où se trouve le script en cours d'exécution.
__filename
__filename représente le nom de fichier du script en cours d'exécution. Il affichera le chemin absolu de l'emplacement du fichier, et il peut ne pas être le même que le nom de fichier spécifié par le paramètre de ligne de commande. S'il s'agit d'un module, la valeur renvoyée est le chemin d'accès au fichier du module.
Exemple
Créez le fichier main.js, le code est le suivant :
// 输出全局变量 __filename 的值console.log( __filename );
Exécutez le fichier main.js, le code est le suivant :
$ node main.js /web/com/runoob/nodejs/main.js
__dirname
__dirname représente le répertoire dans lequel le fichier en cours d'exécution le script est localisé.
Instance
Créez le fichier main.js, le code est le suivant :
// 输出全局变量 __dirname 的值console.log( __dirname );
Exécutez le fichier main.js, le code est le suivant :
$ node main.js /web/com/runoob/nodejs
Objets globaux et variables globales :
les plus fondamentaux de global la fonction est de servir d’hôte de variables globales. Selon la définition d'ECMAScript, les variables qui remplissent les conditions suivantes sont des variables globales :
Variables définies au niveau le plus externe ; attributs des objets globaux implicitement définis (variables auxquelles aucune valeur n'est directement affectée).
Lorsque vous définissez une variable globale, la variable deviendra également une propriété de l'objet global, et vice versa. Il convient de noter que dans Node.js, vous ne pouvez pas définir de variables au niveau le plus externe, car tout le code utilisateur appartient au module actuel et le module lui-même n'est pas le contexte le plus externe.
Variables locales à l'intérieur du module, les objets vers lesquels elles pointent varient selon les différents modules, mais elles sont applicables à tous les modules et peuvent être considérées comme des variables pseudo-globales, principalement module, module.exports , exportations, etc.
la variable module fait référence au module actuel. La variable module.exports représente l'interface de sortie externe du module actuel. Lorsque d'autres fichiers chargent le module, ils lisent en fait la variable module.exports.
module.id L'identifiant du module, généralement le nom de fichier du module.
module.filename Le nom de fichier du module.
module.loaded renvoie une valeur booléenne indiquant si le module a terminé le chargement.
module.parent renvoie le module qui utilise ce module.
module.children renvoie un tableau représentant d'autres modules à utiliser par ce module.
Ce qu'il faut souligner ici, c'est que la variable exports est en fait un lien vers l'objet module.exports, qui équivaut à une ligne d'une telle commande en tête de chaque module.
var exports = module.exports;
Le résultat de ceci est que lors de l'exportation de l'interface du module, vous pouvez ajouter des méthodes à l'objet exports, mais vous ne pouvez pas pointer directement la variable exports vers une fonction :
exports.自定义模块 = function (x){ console.log(x);};
La méthode d'écriture ci-dessus n'est pas valide car elle coupe le relation entre les exportations et les liens entre module.exports. Cependant, il n’y a rien de mal à écrire ainsi.
Pour plus de connaissances sur les nœuds, veuillez visiter : tutoriel Nodejs ! !
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!