老师我有几个问题

来源:6-1 上升到面向对象-红绿灯小案例

菜鸟瑞

2021-04-05 00:26:38


初始化方法是做什么的 讲的太笼统了 没听懂。。


监听那里 为什么要备份上下文 



为什么必须在红绿灯类的原型类上写着四个方法 ,为什么不可以直接写在红绿灯类上呢。



dom对象也没有详细讲解过 请老师结合代码详细讲下 谢谢。。。

写回答

1回答

好帮手慕星星

2021-04-05

同学你好,问题解答如下:

1、初始化方法一般是最开始执行的方法,初始化一些数据,为了保证后面正常进行。例如课程中在init方法中创建了img,然后追加到页面中

2、主要是this指向的问题。点击事件中的this指向的是this.dom,也就是点击的img,而changeColor是构造函数上的,不能通过img调用,所以提前备份this使用。

3、构造函数原型上的内容是共享的,也就是多次实例化的时候,原型上的内容只创建一次,减少内存占据。而构造函数上的内容,也就是通过this定义的,是私有化的,多次实例化也就会多次创建,比较占用内存。

函数一般是通用的,所以添加在了原型上。

4、课程中将创建的img挂载到了this.dom,也就是每次实例化就会创建一个img,也就会有this.dom,这样就可以通过this.dom修改对应的数据了。

自己再理解下,祝学习愉快!

0

0 学习 · 15276 问题

查看课程