混合模式的用法:
1、混合使用构造函数模式和原型模式,是目前JS中使用最广泛、认同度最高的一种创建对象的方法
2、构造函数模式用于定义实例属性,原型模式用于定义共享的属性和方法,即可以共享方法,又可以向构造函数传递参数,集两种模式之长!
例如:
// 混合模式:
function Cat(name,sex,age){
this.name = name;
this.sex = sex;
this.age = age;
}
Cat.prototype.sayHi = function(){
console.log('这就是一个测试');
}
var cat1 = new Cat('折耳猫','男',1);
var cat2 = new Cat('短耳猫','女',3);
console.log(cat1.age);
console.log(cat2.sex);
cat1.sayHi();
console.log(cat1.sayHi === cat2.sayHi); //true
console.log(cat1.constructor); //f Cat{}