直接用splice()去掉出界的小球
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-RADIUS ){
? ? ? ? ? ?balls[i].y = WINDOW_HEIGHT-RADIUS;
? ? ? ? ? ?balls[i].vy = - balls[i].vy*0.75;
? ? ? ?}
? ? ? ?
? ? ? ?if(balls[i].x<-RADIUS || balls[i].x>WINDOW_WIDTH+RADIUS){
? ? ? ? balls.splice(i,1);
? ? ? ?}
? ?}
}
2015-08-19
我也是用這個,測試下來是可以的.保持在310個左右.不過我的跟你的不太一樣
2015-07-27
我也嘗試用了這個方法,但是時間長了,還是不行,還是會劇增,不知道是什么問題,不知道你解決了嗎?
2015-02-11
優化的方法是么?!贊!在哪里可以查到array函數文檔???