js是一种基于对象的语言
类和对象的关系
类是对象的模板,定义了同一组对象共有的属性和方法
//构造函数 类
function People(name,age){
//console.log(this)
this.name=name
this.age=age
}
//prototype 原型
//在js中,属性都是定义在构造函数中,而方法是定义在原型下的
People.prototype.showName=function(){
console.log(this.name)
}
//实例化一个对象
var xc=new People('chen',18)
xc.showName()
//console.log(xc)
继承
function Animal(name){
this.name=name
}
Animal.prototype.showName=function(){
console.log(this.name)
}
//子类继承父类属性 call可以改变this的指向
function Dog(name,color){
Animal.call(this,name)
this.color=color
}
//子类继承父类的方法
Dog.prototype=new Animal()//继承方法
Dog.prototype.constructor=Dog
var taidi=new Dog('wangcai','blue')
taidi.showName()
console.log(taidi)