JavaScrip面向对象-构造器和对象原型
创建对象的方案-工厂模式https://i-blog.csdnimg.cn/direct/94e2e559103146378e58b848cf68c7d3.png
https://i-blog.csdnimg.cn/direct/2c63f4da09f1447da7e44364cf3af0d1.png
熟悉构造函数
https://i-blog.csdnimg.cn/direct/ccfb2aa9ece24f3faa7f69f51af59a90.png
new操作符调用的作用
通过new调用函数,是构造函数。通过new调可以不加括号
https://i-blog.csdnimg.cn/direct/197fd3fb41ba4b80a6734a8b4381a11f.png
https://i-blog.csdnimg.cn/direct/c76a7fd72f424780b26081129029ffae.png
创建对象的方案-构造函数
构造函数的缺点,每次new一个构造器,构造器的函数都会重新创建一个函数对象。浪费空间
https://i-blog.csdnimg.cn/direct/41cd5aea11154f54a6f4958ee51a9250.png
、https://i-blog.csdnimg.cn/direct/22df788d33be490e8eea41f7332c6c47.png
熟悉对象原型
https://i-blog.csdnimg.cn/direct/c0a182d8ae914ee38ca214e753807baf.png
.可以通过--proto--查看prototype,也可以通过getPrototypeOf(es5后提供)
https://i-blog.csdnimg.cn/direct/1b5d38e781f04551a3069d613155fa77.png
https://i-blog.csdnimg.cn/direct/43a2a601e3f24e929563f6e9ff88a865.png
打印obj对象属性age,obj对象中没找到age属性,就会去原型中找,原型中没有就真没有。相要原型中也有,就需要通过obj.--proto--.age="sd",添加一个age属性大概通过Person.prototype.name="sd",因为,Person.prototype和p1.--proto--指向的都是同一个
https://i-blog.csdnimg.cn/direct/debfbae2cc684803b4b0f2a3cc6f638d.png
.对象的隐式原型会通过--proto--指向函数的体现原型
打印出来的原型对象之所以是空的,是因为他的枚举类型是false
https://i-blog.csdnimg.cn/direct/6eef3db7d733400abeb550ed80b282d7.png
https://i-blog.csdnimg.cn/direct/6e08900e2dae4c3f803e08eca9b55bcd.png
再看new操作符
https://i-blog.csdnimg.cn/direct/b5a50ed662f3472e85dbd25642b8df80.png
https://i-blog.csdnimg.cn/direct/3b94fd6afb964960beabac35b0d63abc.png
通过getOwnPropertyDescriptors可以看到prototype中有个属性constructor,所以prototype.contructor,指向的是构造器本身
https://i-blog.csdnimg.cn/direct/b76917f8278a43989dd5ce1dd464e23e.png
https://i-blog.csdnimg.cn/direct/f7cee1d04d3b4387a904cf4c5d25e882.png
添加太多的属性时,可以直接将prototype指向新的对象,对象中放添加的属性,原来的prototype指向的会被烧毁,由于原型中有constructor原型,所以需要通过defineProperty添加该属性,把可枚举类型为false
https://i-blog.csdnimg.cn/direct/d52fdba0ba824821b31e3d23dd59c969.png
https://i-blog.csdnimg.cn/direct/fffe162a8a9f4491866262d7dcbd2e2e.png
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]