全局对象

这些对象在所有模块里都可用。有些对象不是在全局作用域而是在模块作用域里,这些情况下面文档都会标注出来。

global

  • {Object} 全局命名空间对象。

浏览器里,全局作用域就是顶级域。如果在全局域内定义变量 var something 将会是全局变量。 Node 里不同,顶级域并不是全局域;在模块里定义变量 var something 只是模块内可用。

process

  • {Object}

进程对象。 参见 process object 章节.

console

  • {Object}

用来打印 stdout 和 stderr. 参见console 章节.

Class: Buffer

  • {Function}

用来处理二进制数据。 参见buffer 章节

require()

  • {Function}

引入模块。 参见Modules 章节. require 实际上并非全局的,而是各个本地模块有效。

require.resolve()

使用内部 require() 机制来查找 module 位置,但是不加载模块,只是返回解析过的文件名。

require.cache

  • {Object}

引入模块时会缓存到这个对象。通过删除该对象键值,下次调用require 将会重载该模块。

require.extensions

稳定性: 0 - 抛弃
  • {Object}

指导 require 如何处理特定的文件扩展名。

.sjs 文件当 .js 文件处理:

require.extensions['.sjs'] = require.extensions['.js'];

抛弃 以前这个列表用来加载按需编译的非 JavaScript 模块到 node。实际上,有更好的办法来解决这个问题,比如通过其他 node 程序来加载模块,或者提前编译成 JavaScript。

由于模块系统已经锁定,该功能可能永远不会去掉。改动它可能会产生 bug,所以最好不要动它。

__filename

  • {String}

被执行的代码的文件名是相对路径。对于主程序来说,这和命令行里未必用同一个文件名。模块里的值是模块文件的路径。

列如,运行 /Users/mjr 里的 node example.js

console.log(__filename);
// /Users/mjr/example.js

__filename 不是全局的,而是模块本地的。

__dirname

  • {String}

执行的 script 代码所在的文件夹的名字。

列如,运行 /Users/mjr 里的 node example.js

console.log(__dirname);
// /Users/mjr

__dirname 不是全局的,而是模块本地的。

module

  • {Object}

当前模块的引用。通过 require()module.exports定义了哪个模块输出可用。

module 不是全局的,而是模块本地的。

更多信息参见module system documentation

exports

module.exports 的引用。何时用 exportsmodule.exports 可参加module system documentation

module 不是全局的,而是模块本地的。

更多信息参见 module system documentation

更多信息参见module 章节

setTimeout(cb, ms)

最少 ms 毫秒后调回调函数。实际的延迟依赖于外部因素,比如操作系统的粒度和负载。

timeout 值有效范围 1-2,147,483,647。如果超过范围,将会变为 1 毫秒。通常,定时器不应该超过 24.8 天。

返回一个代表定时器的句柄值。

clearTimeout(t)

停止一个之前通过 setTimeout() 创建的定时器。不会再被执行回调。

setInterval(cb, ms)

每隔 ms 毫秒调用回调函数 cb 。实际的间隔依赖于外部因素,比如操作系统的粒度和系统负载。通常会大于ms

间隔值有效范围 1-2,147,483,647。如果超过范围,将会变为 1 毫秒。通常,定时器不应该超过 24.8 天。

返回一个代表该定时器的句柄值。

clearInterval(t)

停止一个之前通过 setInterval() 创建的定时器。不会再被执行回调。

timer 函数是全局变量。

Node.js 全局对象介绍的更多相关文章

  1. Node.js全局对象

    Node.js的全局对象是具有全局性的,它们可在所有的模块中应用.我们并不需要包括这些对象在应用中,而可以直接使用它们.这些对象的模块,函数,字符串和对象本身,如下所述. __filename __f ...

  2. 30.Node.js 全局对象

    转自:http://www.runoob.com/nodejs/nodejs-module-system.html 学习要点: - __filename - __dirname - setTimeou ...

  3. Node.js 全局对象

    JavaScript 中有一个特殊的对象,称为全局对象(Global Object),它及其所有属性都可 以在程序的任何地方访问,即全局变量. 在浏览器JavaScript 中,通常window 是全 ...

  4. 13、Node.js 全局对象

    主要用于调试,显示信息,重点看例子在浏览器 JavaScript 中,通常 window 是全局对象, Node.js 中的全局对象是 global ####__filename__filename ...

  5. [转]为什么我要用 Node.js? 案例逐一介绍

    原文地址:http://blog.jobbole.com/53736/ 介绍 JavaScript 高涨的人气带来了很多变化,以至于如今使用其进行网络开发的形式也变得截然不同了.就如同在浏览器中一样, ...

  6. 【转】为什么我要用 Node.js? 案例逐一介绍

    原文转自:http://blog.jobbole.com/53736/ 介绍 JavaScript 高涨的人气带来了很多变化,以至于如今使用其进行网络开发的形式也变得截然不同了.就如同在浏览器中一样, ...

  7. Node.js 安装配置介绍

    Node.js 安装配置 本章节我们将向大家介绍在window和Linux上安装Node.js的方法. 本安装教程以Node.js v6.10.1 LTS(长期支持版本)版本为例. Node.js安装 ...

  8. NPM(Node.js) 使用介绍

    前言:express 推出了4.X,自己尝试了一下,出现了各种问题.结果查看了各种文档和问题,现在在这个给大家分享下4.X版本的安装. NPM 使用介绍 NPM是随同NodeJS一起安装的包管理工具, ...

  9. (1)ES6中let,const,对象冻结,跨模块常量,新增的全局对象介绍

    1.let声明变量,var声明变量,而const声明的常量 2.let与var的区别 let可以让变量长期驻扎在内存当作 let的作用域是分块[ {快1  {快2 }  }每个大括号表示一个独立的块 ...

随机推荐

  1. vue2.0项目引入element-ui

    在项目中,为了方便我们工作和开发效率,常常引入一些框架来帮助我们完成高效的工作,今天我们就用vue来搭建一下框架,并且引入element-ui这个框架.安装流程也是我从失败中摸索到的,希望能帮助大家. ...

  2. requests-所有异常归类

    IOError RequestException HTTPError(RequestException) UnrewindableBodyError(RequestException) RetryEr ...

  3. 编程基础学习JS的入门教程

    将JavaScript 插入网页的方法 使用<script>标签在网页中插入Javascript代码. 插入JavaScript 与在网页中插入CSS的方式相似.使用下面的代码可以在网页中 ...

  4. jacascript CSS样式的脚本化操作

    前言:这是笔者学习之后自己的理解与整理.如果有错误或者疑问的地方,请大家指正,我会持续更新! 引入CSS有3种方式:行间样式,内联样式和外部链接样式. 在实际工作中,我们使用 javascript 操 ...

  5. 修改 iOS AppIcon

    有一次看到亚马逊的客户端打开后,就提示 icon 改变了,回桌面一看,竟然真的变了.然后就上网搜索是怎么实现的,参照着写了一个小 demo ,权当笔记. 首先,导入图片到项目的中,如下图.不要导入到 ...

  6. promise 的基本概念 和如何解决js中的异步编程问题 对 promis 的 then all ctch 的分析 和 await async 的理解

    * promise承诺 * 解决js中异步编程的问题 * * 异步-同步 * 阻塞-无阻塞 * * 同步和异步的区别? 异步;同步 指的是被请求者 解析:被请求者(该事情的处理者)在处理完事情的时候的 ...

  7. 解决IOS移动端 Safari流浪器 onclick无法触发的问题

    在移动端布局的时候, 在底部有一个button, 页面超过两屏, 是一个可滚动的的网页, 当运行在移动端Safari浏览器上的时候, 向下滑动页面, 浏览器的头部和尾部会自动隐藏, 这样可视区域就会变 ...

  8. 极客验证官方demo构建使用及代码分析

    #什么是极客验证? 官方定义:极验验证是一种在计算机领域用于区分自然人和机器人的,通过简单集成的方式,为开发者提供安全.便捷的云端验证服务. #使用命令从github上获取: git clone ht ...

  9. 基于webpack的React项目搭建(一)

    前言 工欲善其事,必先利其器.为了更好的学习React,我们先简要的把开发环境搭建起来.本文主要介绍使用webpack搭建React项目,如果你对React或es6的基础语法还不了解,建议先去学习学习 ...

  10. [Codeforces 505C]Mr. Kitayuta, the Treasure Hunter

    Description The Shuseki Islands are an archipelago of 30001 small islands in the Yutampo Sea. The is ...