作者:LAMP小白 点击:2157 发布日期:2013-01-06 23:18:00 返回列表
当将私有成员与构造函数一起使用时,其中一个缺点在于每次调用的构造函数以创建对象时,这些私有成员都会被重新创建
为了避免复制工作以及节省内存,可以将常用属性和方法添加到构造函数的prototype属性中,这样,通过同一个构造函数创建的多个实例可以共享常见的部分数据,此外还可以在多个实例中共享隐藏的私有成员,为了实现这一点,我们需要使用构造函数中的私有属性以及对象字面量中的私有属性,由于prototype属性仅是一个对象,因此可以使用对象字面量创建该对象
mio_lt;scriptmio_gt; function haha() { var name = "hahas name"; this.getName = function () { return name; }; } haha.prototype = (function () { var info = 1; return { getInfo: function () { return ++info; } } }()); var toy = new haha(); console.log(toy.getName()); console.log(toy.getInfo()); var toy2 = new haha(); console.log(toy2.getName()); console.log(toy2.getInfo()); mio_lt;/scriptmio_gt;
上一篇:对象字面量以及私有性 下一篇:快递查询API