体式格局一 严谨的oop
var Rectangle = function(width, height){//必需要指定长、宽
this.width = width;
this.height = height;
};
Rectangle.prototype.area = function(){
return this.width * this.height;
};
Rectangle.prototype.girth = function(){
return (this.width + this.height) * 2;
};
//挪用体式格局
var rect = new Rectangle(2, 4);
rect.area();
rect.girth();
体式格局二
var rectangle = {
create : function(width,height){
this.width = width;
this.height = height;
},
area : function(){
return this.width * this.height;
},
girth : function(){
return (this.width + this.height) * 2;
}
};
//挪用体式格局
rectangle.create(2, 4);
rectangle.area();
rectangle.girth();
区分原型对象和当前对象 ,记着一个症结点,一个对象的原型对象是在上一级的
var Class_me = function(){};//既能够看作是对象,也能够看作是一个类(new症结字的时刻)
Class_me.prototype.aa=function(){alert(23)};//看成是类,这里定义其子类的原型对象
var object = new Class_me();//把Class_me看作是一个类
object.aa();//object对象挪用aa要领,假如object对象本身有这个要领,就会挪用本身的要领,假如没有这个要领,那末就回去挪用它对应的原型对象的这个要领,假如两个对象都没有这个要领,那末就会报undefined
Class_me.aa();//这个时刻Class_me是一个对象,这个对象去挪用aa要领,道理同上,这里报答undefined的,由于它本身没有定义aa要领,它关于的原型对象Object也没有aa要领,Class_me对象的原型对象应该在它的上一级,也就是new出这个对象的谁人类地点的那一层