Compartiendo el ejercicio
<canvas width="600" height="400"> </canvas>
<script>
var pantalla = document.querySelector("canvas");
var pincel = pantalla.getContext("2d");
var colores = ["blue","red","yellow"];
var avanza=true;
var posicion=10;
var vcolor = 0;
pincel.fillStyle = "lightgrey";
pincel.fillRect(0,0,600,400);
function disenharCircunferencia(x,y,radio){
pincel.fillStyle = colores[vcolor];
pincel.beginPath();
pincel.arc(x,y,radio,0,2*Math.PI);
pincel.fill();
}
function limpiarPantalla(){
pincel.clearRect(0,0,600,400);
pincel.fillStyle = "lightgrey";
pincel.fillRect(0,0,600,400);
}
function actualizaPantalla(){
limpiarPantalla();
disenharCircunferencia(posicion,20,10);
if (avanza) {
posicion++;
if (posicion>=590) {
avanza=false;
}
} else {
posicion--;
if (posicion<=10) {
avanza=true;
}
}
}
setInterval(actualizaPantalla,10);
</script>