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

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

最新资讯
长租战事终局:自如or not?

长租战事终局:自如or n

站在2019年这个熊林口中的行业转折点,人们需要知道长租
医疗5G网络建设标准发布 华为三大运营商参与

医疗5G网络建设标准发

《基于5G技术的医疗网络建设标准》正式发布,同时“国家
苹果警告用户尽快升级旧款设备iOS 避免出现重大故障

苹果警告用户尽快升级

苹果正式对那些使用旧款iOS设备的用户发出警告,因为从1
华为郭平:VR今年将复兴 有望成下个智能手机产业

华为郭平:VR今年将复兴

郭平表示,VR/AR将成为5G时代的首批应用,2019年将是该产
京东白条应收账款余额超411亿元,上半年增长近67亿元

京东白条应收账款余额

说明书披露,截至2019年6月末,京东白条应收账款余额已增
华为彭博:关于授权5G 华为正与美国公司展开初期谈判

华为彭博:关于授权5G

华为候补董事、高级副总裁彭博(Vincent Pang)周五表示,华
最新文章
微信小程序调用天气接口并且渲染在页面过程详解

微信小程序调用天气接

这篇文章主要介绍了微信小程序调用天气接口并且渲染在
Electron + vue 打包桌面操作流程详解

Electron + vue 打包

这篇文章主要介绍了Electron + vue 打包桌面操作流程,
前端Vue项目详解--初始化及导航栏

前端Vue项目详解--初

这篇文章主要介绍了前端Vue项目详解--初始化及导航栏,
ES6 Object方法扩展的应用实例分析

ES6 Object方法扩展的

这篇文章主要介绍了ES6 Object方法扩展的应用,结合实
JS实现给数组对象排序的方法分析

JS实现给数组对象排序

这篇文章主要介绍了JS实现给数组对象排序的方法,结合
基于vue+axios+lrz.js微信端图片压缩上传方法

基于vue+axios+lrz.js

这篇文章主要介绍了基于vue+axios+lrz.js微信端图片压