node全局函数有哪些?

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

而Node.js中的全局对象是global,所有全局变量(除了 global 本身以外)都是 global 对象的属性。Node.js中,我们可以直接访问到 global的属性,而不需要在应用中包含它。那么node中有哪些全局函数?

node全局函数:

1、定时器函数:

共有4个,分别是:setTimeout(), clearTimeout(), setInterval(), clearInterval()。

setTimeout(cb, ms)

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

实例

创建文件 main.js ,代码如下所示:

function printHello(){
   console.log( "Hello, World!");
}
// 两秒后执行以上函数
setTimeout(printHello, 2000);

执行 main.js 文件,代码如下所示:

$ node main.js
Hello, World!

clearTimeout(t)

clearTimeout( t )全局函数用于停止一个之前通过 setTimeout() 创建的定时器。 参数 t 是通过 setTimeout() 函数创建的定时器。

实例

创建文件 main.js ,代码如下所示:

function printHello(){
   console.log( "Hello, World!");
}
// 两秒后执行以上函数
var t = setTimeout(printHello, 2000);

// 清除定时器
clearTimeout(t);

执行 main.js 文件,代码如下所示:
$ node main.js

setInterval(cb, ms)

setInterval(cb, ms)全局函数在指定的毫秒(ms)数后执行指定函数(cb)。返回一个代表定时器的句柄值。可以使用 clearInterval(t) 函数来清除定时器。setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭。

实例

创建文件 main.js ,代码如下所示:

function printHello(){
   console.log( "Hello, World!");
}
// 两秒后执行以上函数
setInterval(printHello, 2000);

执行 main.js 文件,代码如下所示:

$ node main.js

以上程序每隔两秒就会输出一次"Hello, World!",且会永久执行下去,直到你按下 ctrl + c 按钮。

2、require函数:用于加载模块。

参数为完整路径的模块文件名,或直接是模块名

require.main:用于检测一个模块是否为应用程序中的主模块(写在被检测的模块文件内部)

if(module === require.main){
    console.log('true')
}

对于相同模块的多次引用不会引起模块内代码的多次执行

require.resolve:查询某个模块文件的带有完整绝对路径的文件名。不过并不会加载该模块

require.resolve('./testModule.js')

require.cache对象:代表缓存了所有已被加载模块的缓存区

console.log(require.cache)

可以通过争名来访问某个模块

require.cache['模块文件名']

以上就是node全局函数有哪些?的详细内容,更多请关注0133技术站其它相关文章!

赞(0) 打赏
未经允许不得转载:0133技术站首页 » Node.js答疑