Javascript 在画布上水平移动对象

Javascript 在画布上水平移动对象,javascript,canvas,requestanimationframe,Javascript,Canvas,Requestanimationframe,我需要对象从左向右移动,但在我的代码中,它保持从右向左,并返回从左向右: function draw() { var time = new Date().getTime() * 0.002; var x = Math.sin(time * 0.5)*700 var y = 58; 问题在第3行。Math.sin值在-1和1之间振荡,这就是为什么你看到你的对象从右向左然后再回到右。它在Math.sin的最小值和最大值之间循环 使用它而不是Math.sin来实现所需的效果

我需要对象从左向右移动,但在我的代码中,它保持从右向左,并返回从左向右:

function draw() {
    var time = new Date().getTime() * 0.002;
    var x = Math.sin(time * 0.5)*700
    var y = 58;

问题在第3行。

Math.sin值在-1和1之间振荡,这就是为什么你看到你的对象从右向左然后再回到右。它在Math.sin的最小值和最大值之间循环


使用它而不是Math.sin来实现所需的效果:
var x+=time

为什么要使用Math.sin? 只要用这个:

var x += time;

你为什么用Math.sin?