您的位置:首页 > Web前端 > JavaScript

JS面向对象

2015-12-14 10:23 441 查看
面向对象的特点

封装:封装是面向对象方法的一个重要原则,就是把对象的属性和服务结合成一个独立的系统单位,并尽可能隐蔽对象的内部细节。

继承:特殊类的对象拥有其一般类的全部属性和服务,称作特殊类对一般类的继承。

多态:多态性是指在一般类中的属性和行为,被特殊类继承之后,可以具有不同的数据类型或表现出不同的行为。

创建对象的4种方式:
   1.直接量
     var obj={属性:值,属性:值,方法:function(){..}}
   2.使用内置对象
     var obj=new Object();
   3.使用构造函数:2步:
       1. 定义构造函数:

         function 构造函数名(属性值,属性值,...){
           this.属性=属性值;
           this.方法=function(){...}
         }

       2. 使用new调用构造函数实例化一个对象
            var obj=new 构造函数名(属性值,属性值,...);
                1.创建新对象
          
2.设置新对象的__proto__属性为构造函数的prototype对象
          
3.调用构造函数,初始化对象中的属性
                4.将新对象的地址,赋值给obj变量
   4.创建对象同时设置继承
        var obj=Object.create(父对象);

this:指代正在调用当前方法的对象的指针

     
this指代的对象和定义位置无关!仅和调用时的对象有关。
   
调用方法时当前的对象是谁。
   
如果无主的方法,都属于window!

推荐写法:

function Dog(name,color){

  this.name = name;

  this.color = color;

}

Cat.prototype.type = "犬科动物";

Cat.prototype.eat = function(){alert("看家护院")};
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息