Frage

Ich lerne über Objekte in JavaScript zu erstellen. Wenn ich dies tun ...

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

Ich weiß, dass ich eine Instanz einer Klasse Person erschaffe, aber ich weiß nicht, wie (oder ob) ich diese Klasse wiederverwenden kann eine andere Instanz zu erstellen. Was OOP Funktionen bietet JavaScript hat? Hat es die gleichen Eigenschaften wie OO andere Sprachen wie Java, oder Ruby? Kann jemand bitte erklären, wie JavaScript tut OOP?

War es hilfreich?

Lösung

In Ihrem Beispiel sind Sie nicht eine Instanz einer Person-Klasse zu schaffen. Sie sind eine Variable mit dem Namen ‚Person‘ zu schaffen, die ein anonymes Objekt enthält.

Um eine Klasse vom Typ Person erstellen Sie tun würden:

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

var somebody = new Person();

Ansonsten denke ich, dass Ihre Frage ist zu breit und komplex. Es gibt viele Javascript-Artikel und Tutorials im Internet (und Bücher in den Buchhandlungen). Go und studieren, und wenn Sie etwas Bestimmtes nicht verstehen, dann hier posten.

Andere Tipps

keine JavaScript-Klassen verwenden. Es verwendet Prototyping. Es gibt mehrere Möglichkeiten, neue Objekte zu schaffen.

Sie können tun:

var john = Object.create(Person);

Oder Sie könnten das new Schlüsselwort verwenden:

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

var john = new Person();

Weitere Informationen finden Sie:

Crockford hat einige gute Erklärungen hier etc.

Sehen Sie sich Oran Looney Artikel über diese: http://oranlooney.com/classes-and -Objekte-javascript /

Er mehr gute Javascript Artikel hat.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top