详解Node全局变量global模块
环境:Node v8.2.1; Npm v5.3.0; OS Windows10
在浏览器中我们有window对象用于挂载全局的变量,在Node中我们有global对象可以进行挂载,很多共用的属性就可以挂载到global对象上了,本身它自己也拥有很多的属性。
1、API结构图
2、一些例子
下面是部分API的例子,对部分API的一个简单代码实现
2.1 global
全局命名空间,通过 global 定义的变量,在任何地方都可以使用,类似于浏览器端定义在全局范围中的变量。
// foo.js
global.foo = 'hello';
// bar.js
require('./foo');
console.log(foo);
//hello
定义在 global 上面的变量,不需要在模块中通过 exports 输出,其他模块中也能使用。
2.2 __dirname
dirname 实际上不是一个全局变量,在命令行模式下直接调用会提示dirname 未定义,但是在模块中可以直接使用,返回当前脚本执行的目录。
console.log(__dirname);
2.3__filename
返回当前执行代码文件的名称(包含文件的绝对路径)。和dirname 一样,filename 也不是一个全局变量,但在模块中可以直接使用。
console.log(__filename);
__filename返回的是包含路径的文件名。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程网。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341