码迷,mamicode.com
首页 > Web开发 > 详细

js面向对象编程基础总结

时间:2015-07-19 16:10:02      阅读:136      评论:0      收藏:0      [点我收藏+]

标签:

通过游戏colorRun游戏项目接触面向对象编程思想,小小的总结下自己所学:

说对象就离不开类,我们把具有相同属性和行为的对象的集合称为类,类并不是真实存在的,类是对象的抽象,对象是类的一个实例。每一个对象都有自己的原型。

 js中如何定义一个类?

定义的function就是一个构造方法也就是说是定义了一个类;用这个方法可以new新对象出来。

function Person(name, age){

  this.name = name;

  this.age = age;

  this.showInfo = function(){

    alert(this.name + this.age + "");

  }

}

Person p1 = new Person(小明, 17);

 类的继承

我们把具有相同属性特征的类放到一个父类里,通过继承子类同样拥有父类的属性和特征。其中继承方法有对象冒充和原型链继承。

对象冒充:

function Rect(width, height){

    this.width = width;

    this.height = height;

    this.area = function(){return this.width*this.height;};

}

 

function MyRect(width, height, name){

//    this.newMethod = Rect;

//    this.newMethod(width,height);

//    delete this.newMethod;

    Rect.call(this,width,height);// Rect.apply(this, arguments);

    this.name = name;

    this.show = function(){

        alert(this.name+" with area:"+this.area());

    }

}

原型链(prototype chaining):

function Rect(){

}

Rect.prototype = {

        width:10,

        height : 10,

        area : function(){return this.width*this.height;}

};

 

function MyRect(name){

    this.name = name;

    this.show = function(){

        alert(this.name + " with area:" + this.area());

    }

}

MyRect.prototype = new Rect();

 

js面向对象编程基础总结

标签:

原文地址:http://www.cnblogs.com/gua-gua/p/4658626.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!