关于restPoint

关于restPoint

            for (var i = 0 ; i < this.restPoint.length ; i++) {
                if (Math.abs(po.x - this.restPoint[i].x) < this.r && Math.abs(po.y - this.restPoint[i].y) < this.r) {
                    this.drawPoint();
                    this.lastPoint.push(this.restPoint[i]);
                    this.restPoint.splice(i, 1);
                    break;
                }
            }

restPoint在哪里使用了,我理解是这里只是把数组中经过的圆数据删除了,不太理解为什么起到经过画过的圆就不再重复画的效果?

全部代码:慕课网的源文件有

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好,lastPoint存放的是选中的圆圈的X和Y轴坐标值,所以this.restPoint.splice(i, 1); 理解为 从restPoint 中删除选中的圆,使其不能再选了。

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

好帮手慕言 2020-03-02 14:55:07

同学你好,关于同学的疑问,解答如下:

1、restPoint里面存放的是还没有选中划线的圆的数据。在2-4小节有讲到。

http://img1.sycdn.imooc.com//climg/5e5cac4f092b1b4403450255.jpg

2、在创建圆的代码中定义了两个数组:

http://img1.sycdn.imooc.com//climg/5e5cad4f093ac16f09250219.jpghttp://img1.sycdn.imooc.com//climg/5e5cdeab09018a6106720145.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

  • 提问者 迷失的小麦 #1
    我知道老师的注释的意思,可是我的意思是这里只是把数组中经过的圆数据删除了,不太理解为什么起到经过画过的圆就不再重复画的效果?
    2020-03-02 15:27:38
  • 提问者 迷失的小麦 #2
    有没有可能是别的代码起到的效果? 效果:画过的圆不再重复画 这里只是对数组进行了操作
    2020-03-02 18:56:29
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
3.WebAPP开发与小程序
  • 参与学习           人
  • 提交作业       622    份
  • 解答问题       6815    个

微信带火了小程序,也让前端工程师有了更多的展现机会,本阶段带你从移动基础知识的学习到webAPP开发,及小程序开发,让你PC端与移动端两端通吃。

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师