javascript 写类方式之二
2、原型方式
复制代码 代码如下:
/**
* Person类:定义一个人,有个属性name,和一个getName方法
*/
function Person(){}
Person.prototype.name = "jack";
Person.prototype.getName = function() { return this.name;}
把类的属性(字段),方法都挂在prototype上。
造几个对象测试下:
复制代码 代码如下:
var p1 = new Person();
var p2 = new Person();
console.log(p1.getName());//jack
console.log(p2.getName());//jack
可以看出输出的都是jack,所以原型方式的缺点就是不能通过参数来构造对象实例 (一般每个对象的属性是不相同的) ,优点是所有对象实例都共享getName方法(相对于构造函数方式),没有造成内存浪费 。
相关文章
new后的constructor属性使用说明,需要的朋友可以参考下。
2010-08-08Javascript是一种面向(基于)对象的动态脚本语言,是一种基于对象(Object)和事件驱动(EventDriven)并具有安全性能的脚本语言。他具有面向对象语言所特有的各种特性,比如封装、继承及多态等
2012-03-03这里的面向对象主要是使用prototype属性,大家可以参考下。
2009-12-12javascript面向对象编程实例代码,代码也算比较基础了,不懂得朋友可以参考脚本之家之前发布的文章。
2010-06-06对于正在从事或者打算从事编程的人来说,面向对象是一个耳熟能详的词,几乎每一个人都能列举出一些面向对象的编程语言,例如C++,JAVA,C#等等。
2009-11-11在"初识Javascript"章节中,提到通过作用域和闭包来隐藏内部细节,并给外部提供访问接口,就初次接触到了信息隐藏的概念了
2012-01-01在Javascript里,对面向对象并没有一个直接的实现,对于代码方面也是非常的灵活。
2010-04-04在JavaScript中,继承可以通过三种手法实现原型链继承 使用apply、call方法 对象实例间的继承。
2009-10-10原创的一个cssQuery对象,类似于jQuery的$函数通过css选择器选择DOM元素,目前还不支持xPath语法
2009-07-07"继承是面向对象开发的又一个重要概念,它可以将现实生活的概念对应带程序逻辑中"。“ 虽然在JavaScript中没有专门的机制来实现类的继承,但可以通过拷贝一个类的prototype 到另外一个类来实现继承”。
2009-08-08