2
var MyClass = function() {};
MyClass.method = function (name, age) {
return "My name is " + name + " and I'm " + age + " years old";
}
MyClass.prototype.method = function (name, age) {
return "My name is " + name + " and I'm " + age + " years old";
}
console.log(MyClass.method('David','30'));
var instance = new MyClass();
console.log(instance.method('john', '23'));
在上面的代碼片段中,兩種方法都是做同樣的事情。在大多數情況下,兩者可以互換使用。你會選擇哪一個,爲什麼?對象方法vs原型方法
是否有任何理由使用非原型方法呢? – 2013-03-09 16:39:57
如果你不想每個實例都有特定的方法,並且你使用'new'聲明瞭對象,那麼沒有理由。 – 2013-03-09 16:41:51
儘可能使用構造函數/原型,效率更高。這是真的嗎? – 2013-03-11 15:52:22