扫码关注官方订阅号
实例对象里面有个_proto_,构造函数里面有个prototype,看了半天就是没看明白,谁能一语惊破天么!!!
认证0级讲师
var Person = function() {} var me = new Person() me.__proto__ === Person.prototype
不过 __proto__ 非标准, 不推荐使用.
__proto__
1.所有new出来的叫做实例(等号左边);2.被new的fn叫做构造函数(等号右边->new的右边);3.__proto__和prototype都是属性名,一个名字而已,就跟json={a:1}中的a一样一样!4.3中那两个属性名的值是一个json,但json是一个复合数据类型,所以又叫做指针(本质还是属性名,名字而已,just so so);5.prototype的值又叫做“原型对象”,__proto__的值又叫做“原型链对象”;6.prototype是挂在构造函数下面的,是构造函数的属性;7.构造函数的prototype跟实例没什么直接联系,就像你妈是你妈你是你,你俩通过血缘关系才有联系;8.__proto__就是实例跟构造函数的血缘关系;9.__proto__的值是构造函数prototype的值;10.竟然没问constructor;11.估计10没问是因为早就会了,所以我刚刚1-9纯属测试键盘,当然有不对的地方还请指正,我回去好修理键盘;12.以上。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
不过
__proto__非标准, 不推荐使用.1.所有new出来的叫做实例(等号左边);
2.被new的fn叫做构造函数(等号右边->new的右边);
3.__proto__和prototype都是属性名,一个名字而已,就跟json={a:1}中的a一样一样!
4.3中那两个属性名的值是一个json,但json是一个复合数据类型,所以又叫做指针(本质还是属性名,名字而已,just so so);
5.prototype的值又叫做“原型对象”,__proto__的值又叫做“原型链对象”;
6.prototype是挂在构造函数下面的,是构造函数的属性;
7.构造函数的prototype跟实例没什么直接联系,就像你妈是你妈你是你,你俩通过血缘关系才有联系;
8.__proto__就是实例跟构造函数的血缘关系;
9.__proto__的值是构造函数prototype的值;
10.竟然没问constructor;
11.估计10没问是因为早就会了,所以我刚刚1-9纯属测试键盘,当然有不对的地方还请指正,我回去好修理键盘;
12.以上。