如何在 javascript cavas 中每 5 秒移动一个矩形?

How to move a rectangle every 5 second in javascript cavas?

我需要每 5 秒在随机位置移动一个矩形,我有这个

function rectangle(x,y){
var ctx
ctx.beginPath();
ctx.rect(20, 20, 15, 10);
ctx.stroke();
}
function randomMove(){
var myVar;
var x;
var y;
myVar = setInterval( , 5000);
x = Math.floor(Math.random() * 10) + 1;
y = Math.floor(Math.random() * 10) + 1;
rectangle(x,y)
}

我不知道在5000旁边的setInterval中添加什么,我应该添加什么才能使它起作用?

你应该每 5 秒传递一次你想要执行的函数,因为你的函数有参数你必须在匿名 func 中传递它

 function rectangle(x,y){
    var ctx
    ctx.beginPath();
    ctx.rect(20, 20, 15, 10);
    ctx.stroke();
    }
    function randomMove(){
    var myVar;
    var x;
    var y;
    x = Math.floor(Math.random() * 10) + 1;
    y = Math.floor(Math.random() * 10) + 1;
    myVar = setInterval( ()=> {rectangle(x,y)}, 5000); // pass the rectangle function
    }