IT评测·应用市场-qidao123.com技术社区

标题: JavaScrip面向对象-构造器和对象原型 [打印本页]

作者: 用户国营    时间: 2024-12-13 19:23
标题: JavaScrip面向对象-构造器和对象原型
创建对象的方案-工厂模式



熟悉构造函数


new操作符调用的作用

通过new调用函数,是构造函数。通过new调可以不加括号


创建对象的方案-构造函数

构造函数的缺点,每次new一个构造器,构造器的函数都会重新创建一个函数对象。浪费空间 


熟悉对象原型


.可以通过--proto--查看prototype,也可以通过getPrototypeOf(es5后提供)


打印obj对象属性age,obj对象中没找到age属性,就会去原型中找,原型中没有就真没有。相要原型中也有,就需要通过obj.--proto--.age="sd",添加一个age属性大概通过Person.prototype.name="sd",因为,Person.prototype和p1.--proto--指向的都是同一个
 

.对象的隐式原型会通过--proto--指向函数的体现原型
打印出来的原型对象之所以是空的,是因为他的枚举类型是false


再看new操作符



通过getOwnPropertyDescriptors可以看到prototype中有个属性constructor,所以prototype.contructor,指向的是构造器本身 




添加太多的属性时,可以直接将prototype指向新的对象,对象中放添加的属性,原来的prototype指向的会被烧毁,由于原型中有constructor原型,所以需要通过defineProperty添加该属性,把可枚举类型为false





免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 IT评测·应用市场-qidao123.com技术社区 (https://dis.qidao123.com/) Powered by Discuz! X3.4