码迷,mamicode.com
首页 > Web开发 > 详细

js实现继承的几种方式

时间:2018-10-04 10:45:22      阅读:202      评论:0      收藏:0      [点我收藏+]

标签:原型   his   一个   cat   log   ima   func   子类   new   

// 定义一个动物类
function Animal (name) {
  // 属性
  this.name = name || ‘Animal‘;
  // 实例方法
  this.sleep = function(){
    console.log(this.name + ‘正在睡觉!‘);
  }
}
// 原型方法
Animal.prototype.eat = function(food) {
  console.log(this.name + ‘正在吃:‘ + food);
};
        
function Cat(name){
  Animal.call(this);
  this.name = name || ‘Tom‘;
}
(function(){
  // 创建一个没有实例方法的类
  var Super = function(){};
  Super.prototype = Animal.prototype;
  //将实例作为子类的原型
  Cat.prototype = new Super();
})();
Cat.prototype.run = function(){
    console.log(this.name+"正在抓老鼠");
}

// Test Code
var cat = new Cat("jeetty");
console.log(cat.name);
cat.sleep();
cat.eat(‘饭‘);
cat.run();
console.log(cat instanceof Animal); // true
console.log(cat instanceof Cat); //true

 

js实现继承的几种方式

标签:原型   his   一个   cat   log   ima   func   子类   new   

原文地址:https://www.cnblogs.com/as3lib/p/9740145.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!