javascript 的对象(Object)

来源:互联网 发布:mac定妆喷雾 编辑:程序博客网 时间:2024/04/30 08:17

javascript是一 种 基于对象的弱类型语言,但是它有些特殊,因为没有类(class)。

那么javascript的对象编程是怎么实现的呢?用函数。

参考: http://www.ruanyifeng.com/blog/2010/05/object-oriented_javascript_encapsulation.html

总的来说用funcction来创建要变的属性。

然后用prototype 来添加通用的属性或方法


比如


function Person(name,sex) {

this.name = name;

this.sex = sex;

}

Person.prototype.Type = '人';

Person.prototype.SayHello = function(){ alert('Hello');}


var person = new Person('哇哈哈','男');

alert(person.name);

person.SayHello();

Person类的Type和SayHello是整个类都有的,而且是固定不变的。如果都写在Person类中,每new一次对象,都会在内存中写一次Type和SayHello,这样就会浪费内存。

所以使用prototype来扩展,这样不论你new多少次,他们的Type和SayHello都是指向一个内存地址。这就是一个简单的类。


 每个对象都一个属性  constructor     指向他们的构造函数

 每个对象有个属性  instanceof    来验证对象是否属于某个类

0 0
原创粉丝点击