Node.js全局对象本质上是全局的,并且在所有模块中都可用,无涯教程不需要在应用程序中包含这些对象 ,而是可以直接使用它们。
__filename
__filename表示正在执行的代码的文件名, 这是此代码文件的解析绝对路径, 对于主程序,此文件名不必与命令行中使用的文件名相同, 模块内部的值是该模块文件的路径。
使用以下代码创建一个名为main.js的js文件-
//让我们尝试打印 __filename 的值 console.log( __filename);
现在运行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!"); } //现在在 2 秒后调用上面的函数 setTimeout(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!"); } //现在在 2 秒后调用上面的函数 var t=setTimeout(printHello, 2000); //现在清除计时器 clearTimeout(t);
现在运行main.js以查看输出-
$node main.js
验证输出,您将找不到打印的任何内容。
setInterval(cb,ms)
可使用功能 clearInterval(t)清除计时器。
使用以下代码创建一个名为main.js的js文件-
function printHello() { console.log( "Hello, World!"); } //现在在 2 秒后调用上面的函数 setInterval(printHello, 2000);
现在运行main.js以查看输出-
$node main.js
上面的程序将每2秒执行一次printHello()。由于系统限制。
全局对象
的列表。有关更多详细信息,请参阅官方文档。
Sr.No. | Module Name & 描述 |
---|---|
1 |
Console 用于在stdout和stderr上打印信息。 |
2 |
Process 用于获取有关当前过程的信息。提供与Stream程活动相关的多个事件。 |
参考链接
https://www.learnfk.com/nodejs/nodejs-global-objects.html
标签:Node,__,setTimeout,printHello,无涯,js,计时器,main From: https://blog.51cto.com/u_14033984/9355447