ES6关于类的改变

首先我们先复习一下原来的继承的实现

function People(name,age,sex){
	this.name = name;
	this.age = age;
	this.sex = sex;
}
People.prototype.changge = function(){
	console.log(`我是一个${this.name},我今年${this.age}岁了`);
}
function Student(name,age,sex,xuehao,banji){
	this.name = name;
	this.age = age;
	this.sex = sex;
	this.xuehao = xuehao;
	this.banji = banji;
}
Student.prototype = new People();
Student.prototype.kaoshi = function(){
	console.log(`${this.name}在考试`);
}
var xiaohua = new Student("小花",12,"女",10001,"1班");
xiaohua.changge();
xiaohua.kaoshi();

ES6中简化了类的继承:

class People{
	constructor(name , age , sex){
		this.name = name;
		this.age = age;
		this.sex = sex;
	}

	changge(){
		console.log("我是一个" + this.name + "今年" + this.age + "岁啦!!");
	}

	goDie(){
		console.log("死啦");
	}
}

class Student extends People{
	constructor(name , age , sex , xuehao , banji){
		super(name , age , sex);	 //调用超类的构造器
		this.xuehao = xuehao;
		this.banji = banji;
	}

	kaoshi(){
		console.log(`${this.name}在考试`);
	}
}

var xiaohua = new Student("小花",12,"女",10001,"1班");
xiaohua.changge();
xiaohua.kaoshi();

特别难以看出区别,而且从代码量上也没怎么简化
所以对比图

在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值