问答详情
源自:4-3 华丽的小球滚动效果

数组长度不断增加,运行越来越慢

function updateBalls(){
	for(var i=0;i<balls.length;i++){
		balls[i].x+=balls[i].vx;
		balls[i].y+=balls[i].vy;
		balls[i].vy+=balls[i].g;
		if(balls[i].y>=WINDOW_HEIGHT-RANIUS){
			balls[i].y=WINDOW_HEIGHT-RANIUS;
			balls[i].vy=-balls[i].vy*0.75;
		}
		if(balls[i].x>WINDOW_WIDTH+RANIUS||balls[i].x<-RANIUS){
			balls.splice(i,1);
		}  // 从balls数组中移除跳出画布的小球
	}
	console.log(balls.length);
}


提问者:你别再这样 2014-12-31 23:03

个回答

  • l1uyub0b0b0
    2015-01-04 21:09:53

    这样从数组中移除小球是有bug的,仔细想想看:)