论坛首页 Web前端技术论坛

javascript写类方式之二

浏览 1508 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (10) :: 隐藏帖 (0)
作者 正文
   发表时间:2009-06-27   最后修改:2009-06-29

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方法(相对于构造函数方式),没有造成内存浪费

 

 

 

 

 

 

 

 

   发表时间:2009-06-27  
属性应该是属于每个对象的,所以不该放到prototype里...呵呵
0 请登录后投票
论坛首页 Web前端技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics