【面试刷题 】使用Promise实现红绿灯交替重复亮

第1题:使用Promise实现红绿灯交替重复亮

红灯3秒亮一次,绿灯2秒亮一次,黄灯1秒亮一次;如何让三个灯不断交替重复亮灯?

要求:用Promise实现

三个亮灯函数已经存在:

javascript 复制代码
function red() {
    console.log('red');
}
function green() {
    console.log('green');
}
function yellow() {
    console.log('yellow');
}
javascript 复制代码
	function lightOn(time,cb){
            return new Promise((resolve) => {
                cb()
                setTimeout(() => {
                    resolve()
                }, time);
            
            })
        }
        function pro(){
            Promise.resolve().then(() => {
                return lightOn(3000, red)
            }).then(() => {
                return lightOn(2000, green)
            }).then(() => {
                return lightOn(1000, yellow)
            }).then(()=>{
                pro()
            })
        }
        pro()
相关推荐
乌恩大侠23 分钟前
GH200 新增 NVMe SSD 分区、格式化与挂载完整流程
运维·服务器·前端
yume_sibai34 分钟前
Element Plus 数据展示组件完全指南(15个核心组件)
前端·javascript·vue.js
qiuhaipeng11 小时前
Claude code 升级后上下文长度变短问题
java·前端·数据库
zzz_23681 小时前
个人 AI 记忆如何跨工具复用:用 Markdown、索引和 Skill 搭一个可治理的记忆库
前端·人工智能·react.js·前端框架·agent·agent测评
剑之所向3 小时前
.NET 官方`System.Threading.Channels`
前端·javascript·数据库
计算机魔术师3 小时前
GPT-6 Astra幻觉砍到2%,却被一种老招数轻松绕过
前端
cjy0001114 小时前
2026AI 产品如何从一次性 Demo 变成可重复使用的业务工具?
前端·人工智能·fde
IT_陈寒4 小时前
React的状态更新坑得我差点加班到天亮
前端·人工智能·后端
风骏时光牛马4 小时前
深挖底层逻辑:XX源码深度拆解分析
前端
渡我白衣4 小时前
并查集:基础认识与模拟实现
android·java·javascript·数据结构·c++·算法·并查集