我已經在JavaScript/JQuery中做了大量的編程。什麼時候應該在JavaScript中使用「prototype」
但我從來沒有使用過「原型」。事實上,我不知道它的意思。
你有一個實用的例子,它有用嗎?
我已經在JavaScript/JQuery中做了大量的編程。什麼時候應該在JavaScript中使用「prototype」
但我從來沒有使用過「原型」。事實上,我不知道它的意思。
你有一個實用的例子,它有用嗎?
最簡單的例子:
function Foo() {
this.bar = function() {
return 42;
}
}
現在,只要你想,你可以創建Foo
許多實例,調用bar()
:
var a = new Foo();
var b = new Foo();
即使盡管這兩個對象都有bar()
方法在兩種情況下都完全相同,但這些方法是不同的。實際上,每個新的Foo
對象都會有這個方法的新副本。
在另一方面:
function Foo() {}
Foo.prototype.bar = function() {
return 42;
}
具有相同的最終結果,但該函數只存儲一次在對象prototype
而不是在對象本身。如果您創建了大量的Foo
實例並想要保存一些內存,這可能是一個難題。
這可能意味着2件事:一個JavaScript框架和一個JavaScript方法來擴展和定義對象。兩者完全不同。不確定你說的是哪一個。 –
這個問題不明確。 lib或obejcts屬性? – user278064
您應該閱讀:[MDN - 面向對象的JavaScript簡介](https://developer.mozilla.org/En/Introduction_to_Object-Oriented_JavaScript)。 –