为了账号安全,请及时绑定邮箱和手机立即绑定

为什么一定要用balls.pop()呢

为什么用balls,shift()不可以呢,显示的效果就会差很多呢?最开始不是push()进去的吗,这个已经是插入最后了,用pop()岂不是把刚插入的又删掉了吗

正在回答

2 回答

由于x轴方向上的速度不一致,所以不一定在前面的一定先出去,所以用shift是不可取的,其次,老师之所以用pop是因为已经确定了显示区域内的小球一定是count个

0 回复 有任何疑惑可以回复我~

  if (balls[i].x+RADIUS>0 && balls[i].x-RADIUS<WINDOW_WIDTH) {
   balls[cnt++]=balls[i];
  }

研究下这句话,老师把区域内的小球又重新放到了balls的前CNT个,相当于覆盖,所以屏幕外的就是 

while (balls.length>cnt) {
  balls.pop();
 } balls[cnt]这个下标之后的,依次删掉

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消

为什么一定要用balls.pop()呢

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信