Javascript 更改“;“速度”;几秒钟

Javascript 更改“;“速度”;几秒钟,javascript,html,canvas,timer,Javascript,Html,Canvas,Timer,所以我有一个物体以“速度”移动,现在我设置代码,当物体与另一个物体碰撞时,物体的速度降低。我试着通过改变速度来实现这一点,当速度在3秒后改变时,将其恢复到原来的速度 这是我自己尝试过的东西,但不起作用。有人能解释我做错了什么,如果我在正确的轨道上,或者有更好的方法来做这件事吗?提前谢谢 speed = 10; if (c < r0+r1) { lives -=1; speed = 5; if(speed === 5){ setTimeout(speed =10 ,

所以我有一个物体以“速度”移动,现在我设置代码,当物体与另一个物体碰撞时,物体的速度降低。我试着通过改变速度来实现这一点,当速度在3秒后改变时,将其恢复到原来的速度

这是我自己尝试过的东西,但不起作用。有人能解释我做错了什么,如果我在正确的轨道上,或者有更好的方法来做这件事吗?提前谢谢

 speed = 10;

 if (c < r0+r1) { 
 lives -=1;

 speed = 5;

 if(speed === 5){
    setTimeout(speed =10 ,3000);
 }
速度=10;
如果(c
尝试过这一点,但当我使用此代码时,对象会在速度改变前等待3秒,而不会再改变。我尝试的是,当对象碰撞时,速度会改变3秒,然后又会变回原来的速度。感谢您的反应!@NickZijlstra您的问题一定在代码的另一部分,这将再次出现rn速度在3秒后变为10你完全正确我忘记删除了速度=5,所以没有变化。非常感谢!
setTimeout(function() {
    speed = 10 
}, 3000);