function drawAll(ball) { ctx.clearRect(0,0,864,664); drawBorder(); ball.moveBall(); ctx.drawImage(ball_img,ball.location_x,ball.location_y,2*ball.ballrad,2*ball.ballrad); requestAnimationFrame(drawall);}预想的是向drawall这个函数中传递ball这个对象,moveball是改变ball的位置,drawimage一行是根据ball的位置绘制ball,但这样做不能成功。我知道可以用全局变量去实现,但求教有没有向callback中传参的方法呢,尤其是未来drawAll函数可能接受多个参数的情况下。
1 回答

胡说叔叔
TA贡献1804条经验 获得超8个赞
其实跟setTimeout类似,我们知道传参传的是一个函数,那么我们是不是可以用一个匿名函数来包裹这个函数的执行呢
比如:
function fn(fc){ console.log('fc:',fc) fc++; setTimeout(function(){ fn(fc) },1000) } fn(1);
添加回答
举报
0/150
提交
取消