JS高级面向对象和类

面向对象和类

JS高级面向对象和类_第1张图片
image.png

JS高级面向对象和类_第2张图片
image.png

JS高级面向对象和类_第3张图片
image.png

JS高级面向对象和类_第4张图片
image.png

类的创建

JS高级面向对象和类_第5张图片
image.png

JS高级面向对象和类_第6张图片
image.png
JS高级面向对象和类_第7张图片
image.png

JS高级面向对象和类_第8张图片
image.png
JS高级面向对象和类_第9张图片
image.png

JS高级面向对象和类_第10张图片
image.png

继承

JS高级面向对象和类_第11张图片
image.png

JS高级面向对象和类_第12张图片
image.png
JS高级面向对象和类_第13张图片
image.png
JS高级面向对象和类_第14张图片
image.png

image.png

JS高级面向对象和类_第15张图片
image.png
JS高级面向对象和类_第16张图片
image.png

JS高级面向对象和类_第17张图片
image.png

子类继承父类后,在自己中类中扩展方法

JS高级面向对象和类_第18张图片
image.png

JS高级面向对象和类_第19张图片
image.png

image.png

JS高级面向对象和类_第20张图片
image.png

类和对象的注意事项

JS高级面向对象和类_第21张图片
image.png
JS高级面向对象和类_第22张图片
image.png

此时 this.sing 不要加小括号! 加括号是直接调用,我们希望点击按钮才调用!

this的指向问题

JS高级面向对象和类_第23张图片
image.png

JS高级面向对象和类_第24张图片
image.png

sing()


JS高级面向对象和类_第25张图片
image.png

所以在sing()中 this.uname 指向undefined 因为此时this是btn, btn没有uname

如果想输出name怎么办!??? 使用that。 因为我们已经把this赋值给that全局变量了!


JS高级面向对象和类_第26张图片
image.png

完整代码


JS高级面向对象和类_第27张图片
image.png

JS高级面向对象和类_第28张图片
image.png

JS高级面向对象和类_第29张图片
image.png
JS高级面向对象和类_第30张图片
image.png
JS高级面向对象和类_第31张图片
image.png
JS高级面向对象和类_第32张图片
image.png
JS高级面向对象和类_第33张图片
image.png
JS高级面向对象和类_第34张图片
image.png

静态成员和实例成员

JS高级面向对象和类_第35张图片
image.png

JS高级面向对象和类_第36张图片
image.png

JS高级面向对象和类_第37张图片
image.png

构造函数的问题 -- 浪费内存

JS高级面向对象和类_第38张图片
image.png
JS高级面向对象和类_第39张图片
image.png
JS高级面向对象和类_第40张图片
image.png

JS高级面向对象和类_第41张图片
image.png

原型对象-对象原型

JS高级面向对象和类_第42张图片
image.png

JS高级面向对象和类_第43张图片
image.png

constructor

JS高级面向对象和类_第44张图片
image.png

JS高级面向对象和类_第45张图片
image.png

JS高级面向对象和类_第46张图片
image.png

JS高级面向对象和类_第47张图片
image.png

你可能感兴趣的:(JS高级面向对象和类)