2

JavaScriptでオブジェクトを作成する方法を学んでいます。私がこれをするとき...

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

Personクラスのインスタンスを作成していることは知っていますが、そのクラスを再利用して別のインスタンスを作成する方法(またはその場合)がわかりません。JavaScriptにはどのようなOOP機能がありますか?JavaやRubyなどの他の言語と同じOO機能がありますか?JavaScriptがOOPをどのように行うかを誰かに説明してもらえますか?

4

5 に答える 5

3

あなたの例では、Personクラスのインスタンスを作成していません。匿名オブジェクトを含む「Person」という名前の変数を作成しています。

Personタイプのクラスを作成するには、次のようにします。

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

var somebody = new Person();

そうでなければ、あなたの質問は広すぎて複雑すぎると思います。Web(および書店の本)には多くのJavaScriptの記事とチュートリアルがあります。それらを調べてみてください。具体的なことを理解していない場合は、ここに投稿してください。

于 2010-10-08T20:44:37.697 に答える
3

JavaScriptはクラスを使用しません。プロトタイピングを使用します。新しいオブジェクトを作成する方法は複数あります。

あなたができること:

var john = Object.create(Person);

newまたは、次のキーワードを使用できます。

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

var john = new Person();

詳細については、以下をお読みください。

于 2010-10-08T20:46:33.713 に答える
2

Crockfordはここにいくつかの良い説明があります。

于 2010-10-08T20:46:32.730 に答える
0

これに関するOranLooneyの記事をチェックしてください:http: //oranlooney.com/classes-and-objects-javascript/

彼はいくつかの良いJavascriptの記事を持っています。

于 2010-10-08T20:58:01.877 に答える