Node.js:全局对象

JSON 2024-05-08 19:29:56 127

Node.js 有许多内置的全局标识符。这些对象在所有模块中都可用。其中一些对象是真正的全局变量,可以从任何地方访问,其他对象存在于每个模块的模块级别。

全局

全局命名空间。对此命名空间设置属性使其在运行的进程中全局可见。

类型:对象

在浏览器中,顶级属性是全局范围。因此在浏览器中,var var_name 将定义一个全局变量。在 Node 中,模块内的 var var_name 是该模块的本地范围,即顶级范围不是全局范围。

console

该内置对象用于打印 stdout 和 stderr。该对象有多个方法,请参阅控制台部分的详细信息。

类型:对象

这是一个打印字符串的简单示例。


过程

进程对象是一个全局对象,它提供与当前 Node 进程的交互,并且可以从任何地方访问。

类型:对象

在以下示例中,只要进程即将退出,就会触发 exit 事件。

var fs = require('fs');
process.on('exit', function () {
var content = fs.readFileSync("readme.txt", "utf8"); 
 });

类别: 缓冲器

Buffer 类是全局的。它直接处理二进制数据,并且可以通过多种方式构建。

类型 : 函数

在以下示例中,roll_no 包含数组的内容。查看输出。


require()

require() 函数是一个内置函数,用于包含存在于单独文件中的其他模块,一个指定要加载的模块的字符串。它接受一个参数。它不是全局的,而是每个模块的局部的。

类型 : 函数

在以下示例中包含“fs”(文件系统)模块。

var fs = require('fs');var content = fs.readFileSync("readme.txt", "utf8");
console.log(content);
console.log('Reading file...');

require.resolve()

require.resolve() 用于搜索模块的位置并返回解析的文件名。这是一个例子


第一个命令 require.resolve('fs') 仅显示 'fs',没有任何路径,因为它是 Node 附带的默认模块。第二个显示“mysql”模块的完整路径,该模块是第三方模块。

require.cache

模块被缓存(包含所有当前加载的模块)在此对象中。您可以通过从该对象中删除键值来清除该模块。您可以使用 require() 再次加载它。

类型:对象

filename

__filename 包含当前正在执行的文件的绝对路径。这在 Node REPL 中不存在。

类型:字符串

这是一个例子。

代码(test.js):

console.log(__filename);

输出 :


dirname

__dirname 包含当前正在执行的脚本的根目录的路径。这在 Node REPL 中不存在。

类型:字符串

这是一个例子。

代码(test.js):

console.log(__dirname);

输出 :


模块

对当前模块的引用。在特定程序中,模块通过 require() 变得可用。它不是全局的,而是每个模块的局部的。

类型:对象

在以下示例中,“fs”模块用于读取文件:


exports

对 module.exports 的引用,键入时间较短。导出实际上不是全局的,而是每个模块的本地的。

setTimeout

setTimeout() 在指定的毫秒数 (ms) 后调用函数 (cb)。超时必须在 1-2,147,483,647 范围内(含)。如果该值超出该范围,则会更改为 1 毫秒。这是一个例子:

setTimeout(function(){
console.log('I have come after 500 miliseconds')},500);

输出 :


clearTimeout(t)

clearTimeout() 用于取消使用 setTimeout() 设置的超时。回调将不会执行。

setInterval(cb, ms)

setinterval() 以指定的时间间隔(以毫秒 (ms) 为单位)重复调用函数 (cb)。间隔必须在 1-2,147,483,647 范围内(含)。如果该值超出该范围,则会更改为 1 毫秒。

注意:实际间隔可能会有所不同,具体取决于操作系统计时器粒度和系统负载等外部因素。它永远不会小于毫秒,但可能会更长。

在以下示例中,“Node.js”字符串将每 300 毫秒重复打印一次。

setInterval(function(){
console.log('Node.js')
}, 300);

输出 :


clearInterval(t)

clearInterval() 用于停止使用 setInterval() 设置的计时器。回调将不会执行。

注意:所有定时器函数都是全局变量。

版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/530.html

转载时必须以链接形式注明原始出处及本声明。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

关于作者
一个低调而闷骚的男人。
相关文章
一些Node.js开发工具、开发包、框架等总结
JavaScript对象详细剖析
JavaScript对象详细剖析
JS解密,JavaScript 解密,任何JS加密都能100%解密,以及JS 加密讲解
JS加密,JS在线混淆加密,JavaScript在线加密
Javascript 生成UUID,Java生成UUID
javascript核心知识点
javascript核心知识点
分解质因数 JavaScript 计算方式,及分解质因数讲解
JavaScript function 类型的使用说明
最新文章
Linux I/O重定向 62
Ruby 循环 - while、for、until、break、redo 和 retry 201
Node.js:全局对象 127
如何使用终端检查Linux上的内存使用情况 150
JavaScript对象详细剖析 121
Python print() 函数 159
PHP if/else/elseif 语句 168
HTML5 Canvas弧线教程 164
Java赋值运算符 175
XML内部实体和外部实体 276
最热文章
最新MyEclipse8.5注册码,有效期到2020年 (已经更新) 683997
苹果电脑Mac怎么恢复出厂系统?苹果系统怎么重装系统? 674870
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 604891
免费天气API,天气JSON API,不限次数获取十五天的天气预报 589732
Jackson 时间格式化,时间注解 @JsonFormat 用法、时差问题说明 553823
我为什么要选择RabbitMQ ,RabbitMQ简介,各种MQ选型对比 509645
Elasticsearch教程(四) elasticsearch head 插件安装和使用 480289
Jackson 美化输出JSON,优雅的输出JSON数据,格式化输出JSON数据... ... 266021
Java 信任所有SSL证书,HTTPS请求抛错,忽略证书请求完美解决 244395
Elasticsearch教程(一),全程直播(小白级别) 225992
支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

查看我的收藏

正在加载... ...