这篇文章主要介绍了详解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返回的是包含路径的文件名。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持爱安网。

最新资讯
蔚来汽车将签署6亿美元协议 以认购蔚来(安徽)控股公司新增注资

蔚来汽车将签署6亿美

蔚来汽车将签署价值6亿美元的协议,以认购蔚来(安徽)控
第四范式总裁裴沵思:零售企业的智能化改造只做前端是不够的

第四范式总裁裴沵思:零

裴沵思透露,在疫情早期的时候,第四范式为最大的客户之一
传盒马组建盒马优选事业部 正式进入团购赛道

传盒马组建盒马优选事

在阿里巴巴9月中旬的一次集团总裁会上,阿里巴巴集团董
马斯克等3人已再次被选为特斯拉董事 任期三年

马斯克等3人已再次被

从特斯拉提交到文件来看,他们提名的马斯克等3人,已再次
知情人士:iPhone12可能有一款4G版本

知情人士:iPhone12可能

某知情人士对中国证券报记者透露,iPhone12并不全部是5G
围剿与反攻,在线旅游风云突变?

围剿与反攻,在线旅游风

疫情影响仍未完全消散,飞猪和美团强势出击,对老大携程发
最新文章
详解Vue的ref特性的使用

详解Vue的ref特性的使

这篇文章主要介绍了详解Vue的ref特性的使用,文中通过
vue学习笔记之slot插槽基本用法实例分析

vue学习笔记之slot插

这篇文章主要介绍了vue学习笔记之slot插槽基本用法,结
vue跳转方式(打开新页面)及传参操作示例

vue跳转方式(打开新页

这篇文章主要介绍了vue跳转方式(打开新页面)及传参操作,
vue学习笔记之过滤器的基本使用方法实例分析

vue学习笔记之过滤器

这篇文章主要介绍了vue学习笔记之过滤器的基本使用方
js获取本日、本周、本月的时间代码

js获取本日、本周、本

本篇文章给大家分享的内容是利用js如何获取本日、本周
node crawler如何添加promise支持

node crawler如何添加

这篇文章主要介绍了node crawler如何添加promise支持,