javascript新手,尝试使用setTimeout

javascript新手,尝试使用setTimeout,javascript,settimeout,Javascript,Settimeout,我对javascript还很陌生,我希望在crickit.motor1.run(60)中添加一个参数,以便在2秒后将其设置为0,但它不起作用,而且我没有选择下一步该做什么。 这是我的密码 永远(函数(){ 如果(crickit.touch1.touchRead()>400){ light.setPixelColor(0,0x00ffff) crickit.motor1.run(60); } 暂停(100) }) 函数motorOff(){ crickit.motor1.run(0); } 永远(

我对javascript还很陌生,我希望在crickit.motor1.run(60)中添加一个参数,以便在2秒后将其设置为0,但它不起作用,而且我没有选择下一步该做什么。 这是我的密码

永远(函数(){
如果(crickit.touch1.touchRead()>400){
light.setPixelColor(0,0x00ffff)
crickit.motor1.run(60);
}
暂停(100)
})
函数motorOff(){
crickit.motor1.run(0);
}
永远(函数(){
如果(crickit.motor1.run()=60)
设置超时(motorOff(){
}, 2000);
})
这些将起作用:

setTimeout(motorOff,2000)

setTimeout('motorOff()',2000)


setTimeout(function(){motorOff()},2000)

您必须像这样使用它:
setTimeout(motorOff,2000)

如果您有一个使用参数的函数,比如motorOff(param)将接受1个参数,那么您必须这样使用它:

setTimeout(motorOff,2000,参数)

不要调用
motorOff
函数,只需将函数名传递给
setTimeout
-->
setTimeout(motorOff,2000)
crickit.motor1.run()=60
应使用
=
==
进行比较。单数
=
表示赋值,它仍然说我在这部分的某个地方犯了一个错误:永远(函数(){if(crickit.motor1.run()==60)设置超时(函数(){motorOff()},2000);}),我不知道那会是什么be@Snain没有错误消息吗?应该是
if(){line1-line2}
如果没有
{}
,JS只将第一行添加到
if