开发手册 欢迎您!
软件开发者资料库

Node.js - 全局对象

Node.js全局对象 - 从简单和简单的步骤学习Node.js框架,从基本到高级概念,包括简介,环境设置,第一应用程序,REPL终端,节点包管理器,节点回调概念,事件发射器,节点缓冲器模块,节点流,节点文件系统,全局对象,节点实用程序模块,节点Web模块,节点快速应用程序,节点RESTFul API,节点扩展应用程序,打包。

Node.js全局对象本质上是全局的,并且它们在所有模块中都可用.我们不需要在我们的应用程序中包含这些对象,而是可以直接使用它们.这些对象是模块,函数,字符串和对象本身,如下所述.

__ filename

__ filename 表示文件名正在执行的代码这是此代码文件的已解析绝对路径.对于主程序,这不一定与命令行中使用的文件名相同.模块内部的值是该模块文件的路径.

示例

使用以下代码创建名为main.js的js文件 :

//让我们尝试打印__filename  console的值. log(__ filenamename);

现在运行main.js查看结果 :

  $ node main.js

根据程序的位置,它将打印主文件名,如下所示;

 /web/com/1427091028_21099/main.js

__ dirname

__ dirname 表示当前正在执行的脚本所在目录的名称.

示例

使用以下代码创建名为main.js的js文件 :

//让我们尝试打印__dirname的值 console.log(__ dirname);

现在运行main.js查看结果 :

  $ node main.js

根据程序的位置,它将打印当前目录名称,如下所示;

 /web/com/1427091028_21099

setTimeout(cb,ms)

setTimeout(cb,ms)全局函数用于在至少ms毫秒后运行回调cb.实际延迟取决于OS计时器粒度和系统负载等外部因素.计时器不能超过24.8天.

此函数返回一个不透明值,表示可用于清除计时器的计时器.

示例

使用以下代码创建名为main.js的js文件 :

function printHello() {   console.log( "Hello, World!");}// Now call above function after 2 secondssetTimeout(printHello, 2000);

现在运行main.js查看结果 :

  $ node main.js

确认输出在稍有延迟后打印.

Hello, World!

clearTimeout(t)

clearTimeout(t)全局函数用于停止以前使用setTimeout()创建的计时器.这里 t 是setTimeout()函数返回的计时器.

示例

创建一个名为main的js文件. js包含以下代码 :

function printHello() {   console.log( "Hello, World!");}// Now call above function after 2 secondsvar t = setTimeout(printHello, 2000);// Now clear the timerclearTimeout(t);

现在运行main.js查看结果 :

  $ node main.js

验证输出哪里找不到任何打印的内容.

setInterval(cb, ms)

setInterval(cb,ms)全局函数用于在至少ms毫秒后重复运行回调cb.实际延迟取决于OS计时器粒度和系统负载等外部因素.计时器不能超过24.8天.

此函数返回一个不透明值,表示可用于使用函数 clearInterval(t)清除计时器的计时器.

示例

使用以下代码创建名为main.js的js文件 :

function printHello() {   console.log( "Hello, World!");}// Now call above function after 2 secondssetInterval(printHello, 2000);

现在运行main.js查看结果 :

  $ node main.js

上述程序将在每2秒后执行printHello().由于系统限制.

全局对象

下表提供了我们在应用程序中经常使用的其他对象的列表.有关更多详细信息,请参阅官方文档.

Sr.No.模块名称&说明
1控制台  

用于打印有关stdout和stderr的信息.

2处理  

用于获取有关当前进程的信息.提供与流程活动相关的多个事件.