首页 > 其他 > 详细

构造函数的继承

时间:2019-04-20 00:36:07      阅读:173      评论:0      收藏:0      [点我收藏+]

 

// 构造函数
function Animal() {
this.species = "动物";
}
function Cat(name, color) {
this.name = name;
   this.color = color;
}

// 1, 使用call或者apply方法,将父对象的构造函数绑定在子对象上,即在子对象构造函数中加一行
// function Cat(name, color) {
// Animal.apply(this, arguments);
// this.name = name;
// this.color = color;
// }
// var cat1 = new Cat(‘大猫‘,‘黄色‘);
// console.log(cat1);


// 2. 第二种 prototype属性
// 第一行,将prototype对象指向一个Animal的实例
// Cat.prototype = new Animal();
// 第二行,constructor属性,指向它的构造函数,
// 如果没有Cat.prototype = new Animal(),Cat.prototype.constructor指向Cat
// 现在指向Cat.prototype.constructor指向Animal
// Cat.prototype.constructor = Cat;
 
// var cat1 = new Cat(‘大毛‘,‘黄色‘);
// console.log(cat1);

// 3.直接继承prototype
// function Animal() {
 
// }
// Animal.prototype.species = "动物";
// Cat.prototype = Animal.prototype;
// Cat.prototype.constructor = Cat;
// var cat1 = new Cat(‘大毛‘,‘黄色‘);
// console.log(cat1.species);

// 5. 拷贝继承
// function Animal() {}
// Animal.prototype.species = "动物";
// function extend(Child, Parent) {
// var p = Parent.prototype;
// var c = Child.prototype;
// for(var i in p) {
// c[i] = p[i];
// }
// c.uber = p;
// }
// extend(Cat,Animal);
// var cat1 = new Cat(‘大毛‘,‘黄色‘);
// console.log(cat1);

 摘自阮老师的博客:http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_inheritance.html

构造函数的继承

原文:https://www.cnblogs.com/neilniu/p/10739560.html

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