簡體   English   中英

JavaScript如何做OOP?

[英]How JavaScript does OOP?

我正在學習如何在JavaScript中創建對象。 我這樣做的時候......

var Person = {
   name: "John Doe", 
   sayHi: function() {
   alert("Hi");
   }
};

我知道我正在創建一個Person類的實例,但我不知道如何(或者如果)我可以重用該類來創建另一個實例。 JavaScript有哪些OOP功能? 它是否具有與Java或Ruby等其他語言相同的OO功能? 有人可以解釋一下JavaScript如何做OOP嗎?

在您的示例中,您不是在創建Person類的實例。 您正在創建一個名為“Person”的變量,其中包含一個匿名對象。

要創建Person類,您將執行以下操作:

function Person() {
   this.name = "John Doe", 
   this.sayHi =  function() {
   alert("Hi");
   }
}

var somebody = new Person();

否則我認為你的問題過於寬泛和復雜。 網上有很多javascript文章和教程(書店里有書)。 去研究它們,如果你不了解具體的東西,請在這里發布。

JavaScript不使用類。 它使用原型設計。 有多種方法可以創建新對象。

你可以這樣做:

var john = Object.create(Person);

或者您可以使用new關鍵字:

function Person() = {
   this.name = "John Doe", 
   this.sayHi = function() {
     alert("Hi");
   }
};

var john = new Person();

欲了解更多信息:

克羅克福德在這里有一些很好的解釋等。

查看Oran Looney的文章: http//oranlooney.com/classes-and-objects-javascript/

他有幾篇很好的Javascript文章。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM