当前位置:首页 > JavaScript

js实现等待几秒

2026-04-07 09:35:32JavaScript

使用 setTimeout 实现延迟执行

通过 setTimeout 函数可以实现在指定时间后执行代码。第一个参数是回调函数,第二个参数是延迟的毫秒数。

setTimeout(() => {
  console.log('这段代码将在3秒后执行');
}, 3000);

结合 Promise 实现可等待的延迟

创建一个返回 Promise 的函数,利用 setTimeout 在指定时间后 resolve Promise,可以配合 async/await 使用。

function wait(ms) {
  return new Promise(resolve => setTimeout(resolve, ms));
}

async function delayedAction() {
  console.log('开始等待');
  await wait(2000);
  console.log('2秒后执行');
}

使用 async/await 实现同步式等待

在 async 函数中,可以用 await 等待 Promise 解决,实现类似同步代码的等待效果。

async function run() {
  console.log('第一步');
  await new Promise(resolve => setTimeout(resolve, 1500));
  console.log('1.5秒后执行第二步');
}

循环中的间隔执行

通过递归或循环配合 setTimeout 可以实现间隔一定时间重复执行。

js实现等待几秒

function repeatEvery(interval, times, action) {
  if(times <= 0) return;
  setTimeout(() => {
    action();
    repeatEvery(interval, times - 1, action);
  }, interval);
}

repeatEvery(1000, 5, () => console.log('每秒执行一次'));

注意事项

  • 时间参数单位是毫秒(1000毫秒=1秒)
  • setTimeout 的延迟时间不保证精确,会受到主线程阻塞影响
  • 大量使用 setTimeout 可能导致内存泄漏,必要时使用 clearTimeout 取消

标签: 几秒js
分享给朋友:

相关文章

css3结合js制作

css3结合js制作

CSS3 结合 JavaScript 制作动态效果 CSS3 和 JavaScript 结合可以实现丰富的动态效果,包括动画、交互和响应式设计。以下是几种常见的实现方式: CSS3 动画与 Java…

js 实现vue模板

js 实现vue模板

实现 Vue 模板的 JavaScript 方法 通过原生 JavaScript 可以实现类似 Vue 的模板渲染功能,主要包括数据绑定、指令处理和模板解析。以下是核心实现思路: 数据绑定与响应式…

js实现dh

js实现dh

JavaScript 实现 DH(Diffie-Hellman)密钥交换 Diffie-Hellman(DH)密钥交换是一种安全协议,允许双方在不安全的通信信道上建立一个共享密钥。以下是如何在 Jav…

js树实现

js树实现

树的基本概念 树是一种非线性的数据结构,由节点和边组成。每个节点包含一个值和指向子节点的引用。树的顶部节点称为根节点,没有子节点的节点称为叶节点。 树的实现方式 在JavaScript中,树可以通过…

js实现视口

js实现视口

js实现视口检测的方法 使用JavaScript检测元素是否进入视口(viewport)可以通过Intersection Observer API或手动计算元素位置实现。以下是两种常见方法: Int…

js实现下拉菜单

js实现下拉菜单

使用HTML和CSS创建基础结构 HTML部分需要包含一个触发下拉的按钮和隐藏的下拉菜单内容: <div class="dropdown"> <button class="dr…