JavaScript组合继承的代码编写顺序

这篇博客通过一个Dog对象的示例,详细讲解了JavaScript中的面向对象编程概念,包括构造函数、原型、继承以及对象的方法定义。实例中创建了三个Dog类的实例Fido、Fluffy和Spot,并为它们各自添加了特有的方法。博客内容涵盖了类的创建、方法的继承与扩展,以及实例化和调用方法的过程。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

下面用一个老师上课讲的实例来讲解:

// Dog对象

  // 基类
  //     构造函数
  //     name,breed,weight

  // 原型
  //     run() ==> console.log(name + "RUN!!!")
  //     wag() ==> console.log(name + "WAG!!!")

  // 子类--三个对象Fido、Fluffy和Spot
  //     构造函数
  //         继承基类构造函数
  //     原型
  //         info() => console.log("输出信息:name,breed,weight")
  // 在三个对象自定义一个方法
// 4.基类(父类)
//构造函数
function DogType(name,breed,weight){
            this.name = name;
            this.breed = breed;
            this.weight = weight;
        }
 // 5.基类原型
DogType.prototype.run = function(){
            console.log(this.name + "RUN!!!");
        }
DogType.prototype.wag = function(){
            console.log(this.name + "WAG!!!");
        }
//2.子类   
//构造函数
function Dog(name,breed,weight){
     // 3.继承基类构造函数
     DogType.apply(this,[name,breed,weight])
}
// 6.子类继承基类原型
Dog.prototype = DogType.prototype;
// 7.定义子类原型方法
Dog.prototype.info = function(){
            console.log("输出信息:"+this.name+"--"+this.breed+"--"+this.weight)
        }
//1.实例化参数,传参
var fldo = new Dog("fldo","柴犬",38);
var fluffy = new Dog("fluffy","贵宾",38);
var spot = new Dog("spot","吉娃娃",38);
// 8.输出结果
console.log(fldo);
fldo.run();
fldo.wag();
fldo.info();
// 9.对象创建单独方法
fldo.fldoFun = function(){
            console.log("柴犬看门能力。。。")
        }
fluffy.fluffyFun = function(){
            console.log("吸引有钱人。。。")
        }
spot.spotFun = function(){
            console.log("卖萌。。。")
        }
// 10.输出每个对象方法
fldo.fldoFun();
fluffy.fluffyFun();
spot.spotFun();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值