首页 > 其他 > 详细

通过原型继承创建一个新对象

时间:2018-06-24 15:47:53      阅读:218      评论:0      收藏:0      [点我收藏+]

// 通过原型继承创建一个新对象
function inherit(p){
if (p == null) throw TypeError();//p是一个对象,但不能是null
if(Object.create) //如果object.create()存在
return Object.create(p); //直接使用它
var t = typeof p;//否则进行进一步检测
if (t !== "object" && t !== ‘function‘) throw TypeError();
function f(){};//将其原型属性设置为p
f.prototype = p;//使用f()创建p的继承对象
return new f();
}

 

例如:
var o = {}
o.x = 1;//给o定义一个属性
var p = inherit(o);//p继承o和Object.prototype
console.log(p);
p.y =2;
var q = inherit(p);//q继承p、o、Object.prototype
q.z = 3;
console.log(q.x + q.y + q.z);//6
var s = q.toString();
console.log(s);//[object Object]

 

通过原型继承创建一个新对象

原文:https://www.cnblogs.com/studyh5/p/9220596.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!