原型式继承函数

前边继承虽然我们也 var p=new Person() Student.prototype=p 但是这种方式会在new Person()的时候执行Person,会有很多弊端

这里我们采用使用原型式继承函数,来创建类似于之前的p,但是有点是,不用多次去调用函数,直接举例子

复制代码
 1 var obj = {
 2         name: 'tyy',
 3         age: 18
 4     }
 5     // 我们想要构造对象newobj,让该想要继承对象的原型指向newobj,而newobj的原型指向obj
 6     //方法一
 7 function object(obj) {
 8     var newobj = {}
 9     Object.setPrototypeOf(newobj, obj) //Object里面的一个方法,设置newobj的原型指向obj
10     return newobj
11 }
12 //方法二 通过一个函数原型当中转
13 function createobject(o) {
14     function Fn() {}
15     Fn.prototype = o
16     return new Fn()
17 }
18 //方法三,直接使用Object.create()方法
19 var stu3 = Object.create(obj)
20 
21 var stu1 = object(obj)
22 var stu2 = createobject(obj)
23 console.log(stu1.name);
24 console.log(stu2.name);
25 console.log(stu3.name);
复制代码

 

posted @   沁霓  阅读(43)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Ollama——大语言模型本地部署的极速利器
· 使用C#创建一个MCP客户端
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· Windows编程----内核对象竟然如此简单?
· ollama系列1:轻松3步本地部署deepseek,普通电脑可用
点击右上角即可分享
微信分享提示