setTimeout()如何在Node.js中工作

时间:2018-09-09 12:07:05

标签: javascript node.js multithreading v8

我看了youtube video关于网络浏览器中javascript的内容。 他们在解释setTimeout()的工作原理时谈到了WebAPI。

对于node.js,我认为node.js没有WebAPI。

setTimeout()在NodeJS中如何工作?

1 个答案:

答案 0 :(得分:0)

您使用函数和延迟调用setTimeout。代码继续运行,节点最终异步调用您的函数。

此代码段显示了流程。

console.log('setTimeout will be called')
setTimeout( ()=>{console.log('hello')}, 1000 )
console.log('setTimeout was called')

setTimeoutthis设置为全局对象。

如果使用function syntax,则调用时this的指针将与this不同,因此需要将上下文存储在闭包中。

var that = this;
setTimeout(function(){// that !== this;}, 1000);