首页 > Web开发 > 详细

js的原型继承小结

时间:2015-11-28 16:39:05      阅读:181      评论:0      收藏:0      [点我收藏+]

考虑:有一个想要复用的对象,并且想要创建的第二个对象需要从第一个对对象中获取其功能。

实现如下:

//要继承的对象
var parent = {
    name:"Papa"
};
//新对象
var child = object(parent);
console.log(child.name);

object函数实现如下:

//原型继承
function object(o){
    function F(){};
    F.prototype = o;
    return new F();
};

讨论:

可以使用构造函数创建父对象,这样做的话,“自身”属性和构造函数的原型属性都会被继承。

//父构造函数
function Person(){
    this.name = "jie";
};
//添加到原型的属性
Person.prototype.getName = function(){
    return this.name;
};
var papa = new Person();
var kid = object(papa);
//测试
console.log(kid.getName());

本模式的另一种变化,可以选择仅继承现有构造函数的原型对象。

//父构造器
function Person(){
    this.name ="jie";
}
//添加到原型的属性
Person.prototype.getName = function() {
    return this.name;
}
var kid = object(Person.prototype);
console.log(typeof kid.name);  //结果"undefined"
console.log(typeof kid.getName);  //结果"function"

 

js的原型继承小结

原文:http://www.cnblogs.com/scnuwangjie/p/5002768.html

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