我正在學習面向對象的Java腳本。我有以下Factory Method的代碼。調用Javascript工廠方法
function Foo() {
var value = 1;
return {
method: function() {
return value;
},
value:value
}
}
Foo.prototype = {
bar: function() {}
};
new Foo();
Foo();
方法Foo可以通過兩種方式調用。 new Foo();
或Foo();
兩者都做同樣的事情和輸出是相同的。 java腳本處理的實際區別是什麼?
請注意,設置'Foo.prototype = {}東西'是沒有意義的,如果你打算從'富返回自己的對象()'函數,而不是去當你說'new Foo()'時,JS爲你創建的對象。 – nnnnnn 2012-01-03 03:47:32
@Bakudan - JavaScript是通過任何合理的術語定義來面向對象的。 – 2012-01-03 03:55:34
@Bakudan,如果您有話要說(面向對象vs基於對象),請用新答案中的示例來證明它的正確性。它會幫助新手:) – 2012-01-03 03:59:54