javascript如何实现红绿灯
发表于:2024-11-24 作者:千家信息网编辑
千家信息网最后更新 2024年11月24日,本篇内容介绍了"javascript如何实现红绿灯"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!ja
千家信息网最后更新 2024年11月24日javascript如何实现红绿灯
本篇内容介绍了"javascript如何实现红绿灯"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
javascript实现红绿灯的方法:1、使用setTimeout和递归来实现循环改变颜色;2、使用Promise,并把下一次的颜色改变写在then里面;3、使用async await和while实现红绿灯效果。
本教程操作环境:windows7系统、javascript1.8.5版本、Dell G3电脑。
javascript怎么实现红绿灯?
JavaScript 实现红绿灯
使用setTimeout、Promise、async await 三种方式实现红绿灯代码,红灯2秒,黄灯1秒,绿灯3秒,循环改变颜色。改变颜色的方法,就简单写成打印出颜色。
setTimeout实现
使用setTimeout是最基本的实现方式,代码如下,使用递归来实现循环改变颜色。
function changeColor(color) {console.log('traffic-light ', color);}function main() {changeColor('red');setTimeout(()=>{changeColor('yellow');setTimeout(() => {changeColor('green');setTimeout(main, 2000);}, 1000);}, 2000);}main();
Promise 实现
使用Promise,把下一次的颜色改变写在then里面,最后同样使用递归完成循环。
function sleep(duration){ return new Promise(resolve => { setTimeout(resolve, duration); })}function changeColor(duration,color){ return new Promise(resolve => {console.log('traffic-light ', color); sleep(duration).then(resolve);})}function main() {return new Promise(resolve => {changeColor(2000, 'red').then(() => {changeColor(1000, 'yellow').then(() => {changeColor(3000, 'green').then(() => {main();})})})})}main();
async await 实现
使用async await就可以避免Promise的一连串.then.then.then,也不再需要递归,使用while就可以实现循环。
function sleep(duration) {return new Promise(resolve => {setTimeout(resolve, duration);})}async function changeColor(color, duration) {console.log('traffic-light ', color);await sleep(duration);}async function main() {while (true) {await changeColor('red', 2000);await changeColor('yellow', 1000);await changeColor('green', 3000);}}main();
"javascript如何实现红绿灯"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!
红绿灯
颜色
循环
递归
代码
内容
方式
方法
更多
知识
实用
一连串
学有所成
接下来
困境
实际
情况
效果
教程
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
为什么需要数据库
英语网络技术发展利与弊
软测什么情况下用到数据库
卢龙县网络安全工作
vlc搭建点播服务器
数据库两张表关联
恒生科技与中证海外互联网
工控数据库用哈希表还是字典
数据库安全性笔记
网络安全工程师 岗位要求
网络安全工作领导要求
独立服务器租赁多少钱
网上通过网络技术赚钱
国内网络安全研究现状分析
松林互联网科技
数据库表的说明怎么设置
数据库怎么查询整点数据
网络技术论坛 知乎
活动方案关于校园网络安全
access修复数据库
京宝网络技术有限公司
服务器龙头的上市公司
软件开发类法律条文
阿里云主机安装数据库
软件开发专业哪家不错
和平精英gm服务器怎么进
数据库sql创建存储过程
服务器移动端
网络安全与运维关系大吗
连接数据库jar