如何深入理解setTimeout在JS运行机制中的作用与详解?

更新于
2026-10-01 15:08:55
0阅读来源:SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计2400个文字,预计阅读时间需要10分钟。

如何深入理解setTimeout在JS运行机制中的作用与详解?

序号 + setTimeout() 函数:用于指定某个函数或代码段在若干毫秒后执行。它返回一个整数,代表定时器的编号,可以用来取消该定时器。 示例:console.log(1); setTimeout(function() { console.log('延迟执行的代码'); }, 1000);

序

setTimeout()函数:用来指定某个函数或某段代码在多少毫秒之后执行。它返回一个整数,表示定时器timer的编号,可以用来取消该定时器。

例子

console.log(1); setTimeout(function () { console.log(2); }, 0); console.log(3);

问:最后的打印顺序是什么?(如果不了解js的运行机制就会答错)

正确答案:1 3 2

解析:无论setTimeout的执行时间是0还是1000,结果都是先输出3后输出2,这就是面试官常常考查的js运行机制的问题,接下来我们要引入一个概念,JavaScript 是单线程的。

二、 JavaScript 单线程

JavasScript引擎是基于事件驱动和单线程执行的,JS引擎一直等待着任务队列中任务的到来,然后加以处理,浏览器无论什么时候都只有一个JS线程在运行程序,即主线程。

通俗的说:JS在同一时间内只能做一件事,这也常被称为 “阻塞式执行”。

阅读全文

本文共计2400个文字,预计阅读时间需要10分钟。

如何深入理解setTimeout在JS运行机制中的作用与详解?

序号 + setTimeout() 函数:用于指定某个函数或代码段在若干毫秒后执行。它返回一个整数,代表定时器的编号,可以用来取消该定时器。 示例:console.log(1); setTimeout(function() { console.log('延迟执行的代码'); }, 1000);

序

setTimeout()函数:用来指定某个函数或某段代码在多少毫秒之后执行。它返回一个整数,表示定时器timer的编号,可以用来取消该定时器。

例子

console.log(1); setTimeout(function () { console.log(2); }, 0); console.log(3);

问:最后的打印顺序是什么?(如果不了解js的运行机制就会答错)

正确答案:1 3 2

解析:无论setTimeout的执行时间是0还是1000,结果都是先输出3后输出2,这就是面试官常常考查的js运行机制的问题,接下来我们要引入一个概念,JavaScript 是单线程的。

二、 JavaScript 单线程

JavasScript引擎是基于事件驱动和单线程执行的,JS引擎一直等待着任务队列中任务的到来,然后加以处理,浏览器无论什么时候都只有一个JS线程在运行程序,即主线程。

通俗的说:JS在同一时间内只能做一件事,这也常被称为 “阻塞式执行”。

阅读全文