我试图在序列中添加另一个步骤之前重复记忆游戏simon中的模式,但我认为循环正在如此快速地迭代,以至于序列中的每个数字基本上同时调用setTimeout(function,1000)然后他们同时进行而不是一个接一个地进行 . 有没有什么办法解决这一问题?

function playPattern(){

var i;

for(i=0; i

var currentNum = pattern[i];

if(currentNum === 0){

var greenNoise = new Audio("greenNoise.mp3");

greenNoise.play();

ctx.fillStyle = "#71FF4A";

ctx.fillRect(10, 30, w/2-10, h/3);

setTimeout(drawGameBoard, 1000);

} else if (currentNum === 1){

var redNoise = new Audio("redNoise.mp3");

redNoise.play();

ctx.fillStyle = "#F73B3E";

ctx.fillRect(w/2, 30, w/2-10, h/3);

setTimeout(drawGameBoard, 1000);

} else if (currentNum === 2){

var yellowNoise = new Audio("yellowNoise.mp3");

yellowNoise.play();

ctx.fillStyle = "#FFF269";

ctx.fillRect(10, h/3+30, w/2-10, h/3);

setTimeout(drawGameBoard, 1000);

} else { //currentNum === 3

var blueNoise = new Audio("blueNoise.mp3");

blueNoise.play();

ctx.fillStyle = "#58ACF5";

ctx.fillRect(w/2, h/3+30, w/2-10, h/3);

setTimeout(drawGameBoard, 1000);

}

}

setTimeout(increasePattern, 1000);

}

java进入下一个_在进入下一个循环迭代之前执行setTImeout操作相关推荐

  1. java创建ee项目_项目头像–下一个Java EE功能?

    java创建ee项目 又是一年中的这个时候. 圣诞节假期快到了,Java Advent Calender不断填满. 今天要写我的惊喜帖子. 我是Markus ,也称为@myfear , 多年来我一直在 ...

  2. java 多版本管理工具_简介linux下的多版本管理工具—alternatives

    alternatives是Unix下重要的版本管理工具,它最早是在debain的系统中出现,因为它强大实用性使得它在各个Unix环境中大量的移植使用,而我们在平时的时候可能最经常使用的是java的op ...

  3. Python 单下划线(“_“)与双下划线(“__“)以及以双下划线开头和结尾的的区别

    由于python 中没有java 语言中的private ,public, protected 之类的,就引用了下划线. 单下划线的作用: 以单下划线("_")开头的模块变量或者函 ...

  4. linux java串口读写权限_解决linux下java读取串口之权限问题 No permission to create lock file. | 学步园...

    在终端或IDE中运行java读取串口程序时,总是报告如下信息: [lhwtouch@localhost root]$ java Main Experimental: JNI_OnLoad called ...

  5. java linux解压_在LINUX下 用JAVA如何解压rar文件

    展开全部 楼主试试这个代码~~ package decompress; import java.io.File; import java.io.FileOutputStream; import org ...

  6. java正则表达式 字母数字下划线_字母数字下划线常用正则表达式

    1.由数字.26个英文字母或者下划线组成的字符串: ^[0-9a-zA-Z_]{1,}$ 2.非负整数(正整数 + 0 ): ^/d+$ 3. 正整数: ^[0-9]*[1-9][0-9]*$ 4.非 ...

  7. dell kvm java 会话报错_生产环境下戴尔 R820 kvm虚拟化部署三(virt-manager图形化安装kvm虚拟机)...

    三.kvm虚拟化部署 #安装kvm软件包 yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qem ...

  8. java webservice超时设置_[CXF]Spring下设置CXF的WebService客户端超时时长

    评论 # re: [CXF]Spring下设置CXF的WebService客户端超时时长 2010-01-05 21:47 Emily32Av A kind of good information a ...

  9. java窗体 个人信心_帮忙写下代码java swing,个人信息实例

    展开全部 本人急忙62616964757a686964616fe59b9ee7ad9431333332636264做的:有什么不合要求的请再告诉我: package show; import java ...

最新文章

  1. 【K8S实践】关于Kubernetes Dashboard的实践学习
  2. kinect+java3d+robot开发备忘录
  3. HTML5 Canvas Text文本居中实例
  4. Getting Installation aborted (Status 7) ApplyParsePerms: lsetfilecon of /syst...【转】
  5. 【论文解读】ICLR 2021丨当梯度提升遇到图神经网络,“鱼和熊掌”皆可兼得
  6. $(function(){})和$(document).ready(function(){})
  7. Ubuntu12.04 root用户登录设置
  8. jvm高并发_JVM上的高并发HTTP客户端
  9. 把转变为json_如何使用7行JSON将您的网站转变为移动应用程序
  10. Web安全-之文件上传漏洞场景
  11. java 两个list相等_java 怎么比较两个list是否相同
  12. podspec文件介绍
  13. 几行代码就能实现为何要多此一举
  14. 小程序 房租水电费记录管理_智慧物业管理小程序怎么开发?
  15. ZYNQ-7 PS的中断
  16. 2010-04-20 代码复用、使用率情况分析
  17. MFC的使用——在共享DLL中使用MFC、在静态库中使用MFC
  18. 使用ps制作端午海报
  19. Clipping input data to the valid range for imshow with RGB data ([0..1] for floats or [0..255]解决方法
  20. CDOJ 1355 柱爷与三叉戟不得不说的故事(枚举子集状压dp)

热门文章

  1. Windows下编译tensorflow-gpu教程
  2. cannot import name 'multiarray'
  3. KCF目标跟踪方法分析与总结
  4. 青龙羊毛——旅游链(搬运,非原创)
  5. 远程连接linux虚拟网卡,Linux 虚拟机虚拟网卡问题导致无法连接问题
  6. linux上离线安装mysql_Linux下安装mysql(离线安装和在线安装)
  7. 理解Git的设计思想,详解git文件夹,以及详解add、commit、push,fetch、pull、merge指令
  8. Jmeter性能测试之请求MXL格式报文
  9. 一个操作系统的实现第九章笔记
  10. python列表索引 end start_python学习--list列表操作