当前位置:首页 > JavaScript

js实现暂停代码

2026-02-03 07:24:59JavaScript

实现暂停代码的方法

在JavaScript中,可以通过多种方式实现代码的暂停或延迟执行。以下是几种常见的方法:

使用 setTimeout 延迟执行

setTimeout 可以在指定的毫秒数后执行一段代码,从而实现暂停效果。

js实现暂停代码

console.log("开始执行");
setTimeout(() => {
    console.log("延迟2秒后执行");
}, 2000);

使用 async/awaitPromise

通过 Promiseasync/await 可以更灵活地控制代码的暂停。

js实现暂停代码

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

async function demo() {
    console.log("开始执行");
    await sleep(2000);
    console.log("暂停2秒后继续");
}
demo();

使用 Generator 函数

Generator 函数可以通过 yield 暂停代码执行,并通过 next() 恢复执行。

function* pauseableCode() {
    console.log("第一步");
    yield;
    console.log("第二步");
}

const generator = pauseableCode();
generator.next(); // 执行到第一个 yield
setTimeout(() => generator.next(), 2000); // 2秒后继续执行

使用 requestAnimationFrame

对于动画或需要与浏览器帧同步的暂停,可以使用 requestAnimationFrame

function pauseWithAnimation(duration, callback) {
    const start = performance.now();
    function checkTime(now) {
        if (now - start < duration) {
            requestAnimationFrame(checkTime);
        } else {
            callback();
        }
    }
    requestAnimationFrame(checkTime);
}

console.log("开始");
pauseWithAnimation(2000, () => console.log("2秒后继续"));

注意事项

  • setTimeoutPromise 是异步的,不会阻塞主线程。
  • Generator 函数适合需要手动控制暂停的场景。
  • requestAnimationFrame 适用于动画或高频更新的场景。

根据具体需求选择合适的方法,避免在主线程中使用同步阻塞(如 while 循环),以免导致页面卡顿。

标签: 代码js
分享给朋友:

相关文章

js 实现倒计时

js 实现倒计时

实现倒计时的基本方法 使用 JavaScript 实现倒计时可以通过 setInterval 或 setTimeout 结合日期计算来完成。以下是两种常见实现方式。 使用 setInterval 实…

js实现抽奖

js实现抽奖

实现抽奖功能的基本思路 抽奖功能的核心是随机选择奖项并展示结果。可以通过数组存储奖项,利用随机数生成索引,最后通过动画增强用户体验。 准备奖项数据 定义一个数组存储奖项信息,每个奖项可以包含名称、图…

js实现变形

js实现变形

使用 CSS 和 JavaScript 实现元素变形 在 JavaScript 中实现变形效果通常结合 CSS 的 transform 属性,通过动态修改该属性实现元素的旋转、缩放、倾斜或平移。 基…

网页表格制作css代码

网页表格制作css代码

基础表格样式 使用CSS为HTML表格添加基础样式,包括边框、间距和背景色: table { width: 100%; border-collapse: collapse; margin…

js验证码的实现

js验证码的实现

验证码的基本实现原理 验证码(CAPTCHA)的核心目标是区分人类用户和自动化程序。JavaScript可用于生成或验证客户端验证码,但需注意纯前端验证可能被绕过,通常需结合后端验证。 纯前端验证码…

js实现菜单

js实现菜单

实现基本HTML结构 使用HTML创建菜单的基本框架,通常包含<ul>和<li>元素。示例结构如下: <ul id="menu"> <li><…