当前位置:首页 > 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
分享给朋友:

相关文章

js实现拖拽

js实现拖拽

实现拖拽的基本步骤 使用JavaScript实现拖拽功能需要监听鼠标事件,包括mousedown、mousemove和mouseup。以下是实现的基本逻辑: const draggableEleme…

js实现验证

js实现验证

验证表单输入 使用JavaScript验证表单输入是常见的需求。可以通过监听表单提交事件,检查输入字段是否符合要求。 document.getElementById('myForm').addEve…

js实现tab选项卡切换

js实现tab选项卡切换

实现Tab选项卡切换的JavaScript方法 使用纯JavaScript实现Tab切换功能,可以通过监听点击事件动态切换内容显示状态。以下是两种常见实现方式: 基础DOM操作实现 // 获取所有…

js 实现链表

js 实现链表

链表的基本概念 链表是一种线性数据结构,由一系列节点组成,每个节点包含数据和指向下一个节点的指针。与数组不同,链表在内存中是非连续存储的,插入和删除操作效率较高。 链表的实现 在 JavaScrip…

js手势实现

js手势实现

手势识别实现方法 在JavaScript中实现手势识别通常涉及监听触摸事件(touchstart、touchmove、touchend)或鼠标事件(mousedown、mousemove、mouseu…

js实现图片

js实现图片

图片加载与显示 在JavaScript中,可以通过Image对象动态加载图片。创建实例后设置src属性触发加载,通过onload回调处理加载完成后的操作: const img = new Ima…