Discuss / JavaScript / PrimaryStudent.prototype = new F();这句话费解了半天

PrimaryStudent.prototype = new F();这句话费解了半天

Topic source

Up.

#1 Created at ... [Delete] [Delete and Lock User]

终于搞懂了,一直在尝试打印结果看有什么不同,初衷相同,但没总结new的时候做了啥

new的时候做了什么
也就是 var Child = new Parent(); 干了啥
通过对原型的理解,我们很容易解答
1、创建一个空对象(不创建一个空的怎么往里面塞东西)
2、让Prarent中的this指向Child,并执行Parent的函数体(classconstructor,Parent本身)
3、设置原型链,将Child的__proto__的成员指向了Prarent的prototype的成员
4、给Child赋值,Parent的返回值类型是个值child就是个值,是个对象,child就是这个对象
也有回答说:将初始化完毕的新对象地址,保存到等号左边的变量中
就是赋值,没啥好解释的,面试官听不懂公司就没必要去了
名词解释:
函数体:用class就是constructor,用构造函数就是Parent本身
prototype是原型才有的属性,__proto__对象跟原型都有,__proto__里面存的是Parent的constructor
————————————————
版权声明:本文为CSDN博主「飞飞飞鱼」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/qq_38217940/article/details/124159897


  • 1

Reply