Node.js 中变量前面的双下划线 (__) 是什么?
在本文中,我们将了解 Node.js 中变量前面的双下划线 (__) 是什么意思。
由于NodeJS的单线程特性,它主要用于非阻塞、事件驱动的服务器。它用于传统网站和后端 API 服务,但在设计时考虑了实时、基于推送的架构。
先决条件:您可以从这里学习如何安装 Nodejs。
变量前面的双下划线 (__)是一种约定。它用于 Nodejs 中的全局变量(以下变量可能看起来是全局的,但不是每个模块的局部变量),同时 Underscore (_)用于定义私有变量。
Node.js 中只有两个带双下划线的变量(称为全局对象)。 js。
- __dirname:节点脚本中的 __dirname 返回当前 JavaScript 文件所在文件夹的路径。
- __filename: Node.js 中的 __filename 返回所执行代码的文件名。它给出了代码文件名的绝对路径。
1. 下划线(_)——私有变量
下面是私有变量的示例。
Javascript
(function() {
// Define two variable
var _b = 456;
var _a = 123;
console.log("a =",_a); // => 123
console.log("b =",_b);
})();
app.js
// Node.js code to demonstrate the absolute
// file name of the current Module.
console.log("Directory Name of the current file is: ",
__dirname);
Javascript
// Node.js code to demonstrate the absolute
// file name of the current Module.
console.log("Filename of the current file is: ",
__filename);
输出:
a = 123
b = 456
2. 双下划线 (__) – 全局变量。
下面是两个变量的示例
__dirname是一个环境变量,它告诉您包含当前执行文件的目录的绝对路径。
句法:
console.log(__dirname)
返回值:返回当前模块的绝对目录名。
示例 1:创建一个 JavaScript 文件 app.js 并记下以下代码。
应用程序.js
// Node.js code to demonstrate the absolute
// file name of the current Module.
console.log("Directory Name of the current file is: ",
__dirname);
输出:
C:\Users\Pallavi\Desktop\NODEJS PROJECTS\NodeJS-Projects\Express_Session
Node.js 中的__filename返回所执行代码的文件名。它给出了代码文件的绝对路径。以下方法介绍了如何在 NodeJS 项目中实现 __filename。
句法:
console.log(__filename)
返回值:返回当前模块的绝对文件名。
示例 2:创建一个 JavaScript 文件 app.js 并记下以下代码。
Javascript
// Node.js code to demonstrate the absolute
// file name of the current Module.
console.log("Filename of the current file is: ",
__filename);
输出:
C:\Users\Pallavi\Desktop\NODEJS PROJECTS\NodeJS-Projects\Express_Session\app.js
参考: https://nodejs.org/api/globals.html#globals_filename