javascript - 关于js原型继承
ringa_lee
ringa_lee 2017-04-11 13:17:42
[JavaScript讨论组]
function F(){}
function A(){}
F.prototype = A;
console.log(new F())   //F {}
console.log(new F().prototype)    //A {}

为什么new F().prototype 会是 A{}
new 不是应该把new F().__proto__指向F.prototype吗
继承看的云里雾里是否有什么好的文章推荐呢

ringa_lee
ringa_lee

ringa_lee

全部回复(4)
PHP中文网

new F().prototype === (new F()).prototype而不是new (F().prototype),如果是new F.prototype,才是new (F.prototype)
new 是把new F().__proto__指向F.prototypeF.prototype = A;你把F.prototype指向了A构造器了,所以是有prototype属性的。new F().prototype === new F().__proto__.prototype

迷茫

F.prototype 不就是 A 了么 ..

ringa_lee

http://bonsaiden.github.io/Ja...

巴扎黑

Chrome 下面和你的打印结果不太一样啊

function F(){}
function A(){}
F.prototype = A;
console.log(new F())   //F {}
console.log(new F().prototype)    //Object {}
console.log(new F().__proto__)    //A{}

推荐阅读: http://blog.jobbole.com/66441/

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号