我对javascript中“原型”的概念感到困惑。什么时候应该在javascript中使用对象增强时使用“prototype”?
当我定义对象以下两个似乎工作:
myObject = {};
myObject.prototype.method1 = function() { ... };
myObject.prototype.method2 = function() { ... };
myObject.prototype.method3 = function() { ... };
和...
myObject = {};
myObject.method1 = function() { ... };
myObject.method2 = function() { ... };
myObject.method3 = function() { ... };
任何人都可以阐明这一些轻?这两种创建对象的方式究竟有什么不同?为什么我会选择一种对象? (我有这种感觉,在我的肠道中,这很重要...)
谢谢!当它创建了我们的新
function Test() {}
Test.prototype.method1 = function() {/*...*/};
var obj = new Test();
的prototype
的构造函数性质,由new
运营商使用,:
会添加很多次,会有内部添加的方法,通过在构造函数内的每个实例:this.fn = function(){...};这对于有实例方法访问的私有实例变量很有用。 – Tracker1 2010-02-16 07:35:03