在浏览器 JavaScript 中,通常 window 是全局对象, 而 Node.js 中的全局对象是 global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。

这里列出的所有变量均可以在所有模块中访问。但值得注意的是:它们有些并不是在全局作用域内的,即不在global对象内,而是在模块作用域内的。在模块作用域内的变量会用*表示。

global

全局对象,全局变量的宿主

*__filename

表示当前正在执行的脚本的文件名。它将输出文件所在位置的绝对路径,且和命令行参数所指定的文件名不一定相同。 如果在模块中,返回的值是模块文件的路径。

*__dirname

表示当前执行脚本所在的目录。

*exports

module.exports的引用,用于导出模块对象。

*module

当前模块的引用,提供module.exports方法导出模块,并且允许通过require导入模块。

*require()

用于导入模块对象。

*require.cache

缓存模块的对象,当模块被require后缓存在此处。可以通过删除这个模块内的key值,删除缓存。

*require.resolve()

使用node内部的require机制查看本地模块,它会返回模块的文件名但不会引入该模块。

clearImmediate(immediateObject)

全局函数用于清除一个之前通过 setImmediate() 创建的Immediate对象。 参数 immediateObject 是通过 setImmediate() 函数创建的Immediate对象。

clearInterval(intervalObject)

全局函数用于清除一个之前通过 setInterval() 创建的定时器。 参数 intervalObject 是通过 setInterval() 函数创建的定时器。

clearTimeout(timeoutObject)

全局函数用于清除一个之前通过 setTimeout() 创建的定时器。 参数 timeoutObject 是通过 setTimeout() 函数创建的定时器。

console

用于提供控制台标准输出。

process

用于描述当前Node.js 进程状态的对象,提供了一个与操作系统的简单接口。

setImmediate(callback[, ...args])

立即执行指定函数,它在异步I/O之后、settimeout()和setinterval()定时器之前调用。返回一个供clearImmediate使用的Immediate对象

setInterval(callback, delay[, ...args])

在指定的毫秒(ms)数后执行指定函数(cb)。返回一个代表定时器的句柄值。setInterval() 方法会不停地调用函数。

setTimeout(callback, delay[, ...args])

在指定的毫秒(ms)数后执行指定函数(callback)。:setTimeout() 只执行一次指定函数。返回一个代表定时器的句柄值。

Buffer

用于处理二进制数据,详见buffer部分

Node.js学习笔记(四): 全局对象的更多相关文章

  1. Node.js学习笔记(四) --- fs模块的使用

    目录 . fs.stat 检测是文件还是目录 . fs.mkdir 创建目录 . fs.writeFile 创建写入文件 . fs.appendFile 追加文件 . fs.readFile 读取文件 ...

  2. Node.js学习笔记(2):基本模块

    Node.js学习笔记(2):基本模块 模块 引入模块 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少,很多编程语言都采用这种组织代码的方式.在No ...

  3. Node.js学习笔记(3):NPM简明教程

    Node.js学习笔记(3):NPM简明教程 NPM常用操作 更新NPM版本 npm install npm -g -g,表示全局安装.我们可以指定更新版本,只需要在后面填上@版本号即可,也可以输入@ ...

  4. 系列文章--Node.js学习笔记系列

    Node.js学习笔记系列总索引 Nodejs学习笔记(一)--- 简介及安装Node.js开发环境 Nodejs学习笔记(二)--- 事件模块 Nodejs学习笔记(三)--- 模块 Nodejs学 ...

  5. 一点感悟:《Node.js学习笔记》star数突破1000+

    写作背景 笔者前年开始撰写的<Node.js学习笔记> github star 数突破了1000,算是个里程碑吧. 从第一次提交(2016.11.03)到现在,1年半过去了.突然有些感慨, ...

  6. Node.js学习笔记(1):Node.js快速开始

    Node.js学习笔记(1):Node.js快速开始 Node.js的安装 下载 官方网址:https://nodejs.org/en/ 说明: 在Windows上安装时务必选择全部组件,包括勾选Ad ...

  7. Node.js学习笔记(4):Yarn简明教程

    Node.js学习笔记(4):Yarn简明教程. 引入Yarn NPM是常用的包管理工具,现在我们引入是新一代的包管理工具Yarn.其具有快速.安全.可靠的特点. 安装方式 使用npm工具安装yarn ...

  8. 【前端】Node.js学习笔记

    module.exports 使用方式: // File Name: hello.js function greet() {/*......*/} // 有下面这两种写法: // 1. module. ...

  9. node.js学习笔记(四)——EventEmitter

    error 事件 EventEmitter 定义了一个特殊的事件 error,它包含了错误的语义,我们在遇到异常的时候通常会触发 error 事件.当 error 被触发时,EventEmitter ...

随机推荐

  1. SSM框架开发web项目系列(四) MyBatis之快速掌握动态SQL

    前言 通过前面的MyBatis部分学习,已经可以使用MyBatis独立构建一个数据库程序,基本的增删查改/关联查询等等都可以实现了.简单的单表操作和关联查询在实际开的业务流程中一定会有,但是可能只会占 ...

  2. 刚 安装 Oracle时,登录会出现的问题, ora-28000: the account is locked

    来这个连接 就OK了: https://jingyan.baidu.com/article/48b37f8d1ec3fd1a6464883a.html 第一步: 进入cmd: 然后将下面的sql输入就 ...

  3. spring boot部署系统--morphling简介

    Morphling 简介 Morphling是一套基于Spring Boot 1.5开发的部署系统,依赖简单,一套Mysql即可运行,操作简单明了,适用于百台规模几下机器的运维操作 功能概述 系统部署 ...

  4. JMeter获取CSV文件行数

    import java.io.BufferedReader; import java.io.FileReader; BufferedReader br=new BufferedReader(new F ...

  5. JavaScript闭包基本概念

    闭包的概念 维基百科中是这么解释闭包的: 计算机科学中,闭包(也称为词法闭包或函数闭包)是指一个函数或函数的引用,与一个引用环境绑定在一起.这个函数环境是一个存储该函数每个非局部变量(也叫自由变量)的 ...

  6. JavaWeb 例子 JDBC+JSP登陆注册留言板

    注册页面: <%@ page language="java" contentType="text/html; charset=UTF-8" pageEnc ...

  7. mysql 先分组在排序

    mysql语句的语法模板: select distinct <select_list> from <left_table><join_type> join < ...

  8. react native仿微信性别选择-自定义弹出框

    简述 要实现微信性别选择需要使用两部分的技术: 第一.是自定义弹出框: 第二.单选框控件使用: 效果 实现 一.配置弹出框 弹出框用的是:react-native-popup-dialog(Git地址 ...

  9. SSL/TLS通信

    本文同时发表在https://github.com/zhangyachen/zhangyachen.github.io/issues/31 复习基本概念 对称密码:加密和解密使用同一密匙. 公钥密码: ...

  10. Xamarin Android Gestures详解

    通过Gesture的监听我们将实现一个,手指的快速滑动显示坐标的变化,我们先来看一看效果图: 1.Android中手势交互的执行顺序 1.手指触碰屏幕时,触发MotionEvent事件! 2.该事件被 ...