JavaScriptクラス作成方法:とりあえずまとめ

白石俊平(あゆた)
2008-03-14 18:00:00
  • このエントリーをはてなブックマークに追加

前回までのおさらいと今回のあらすじ

 これまで二回にわたって、「JavaScriptでオブジェクト指向を行うには」というトピックについてお話ししてきました。

 前々回は、「コンストラクタ=関数」であるという事実を紹介し、独自のクラスを作成する方法についてお話ししました。

 前回は、JavaScriptによるオブジェクト指向の中核とも言える「プロトタイプ」と言う仕組みについて紹介しました(プロトタイプについてのお話はまだ終わりではありません。次回、さらに進んだ「プロトタイプチェイン」と言うテクニックについてお話します)。

 ここまでの説明で、JavaScriptでオブジェクト指向を行うための基本的な知識はほとんど押さえたことになります。そこで今回は、これまで学んだことをしっかり身につけるためにも「JavaScriptでクラスを作るには」という点をしっかりおさらいしておきたいと思います。その過程で、今までお話ししていなかった事柄も少し取り上げます。

コンストラクタとクラスの属性

 今回作成するクラスは、これまで取り上げてきたものと同様Personクラスです。まず、コンストラクタは単なるJavaScript関数でした。そして、「this」キーワードを使用して属性に値をセットすることができます。

function Person(name) {
  this.name = name;
}

メソッド

 次に、メソッドの作成方法です。メソッドは、オブジェクトのインスタンス間で共通に扱えればよいので、プロトタイプに対して定義を行います。

Person.prototype.hello = function() {
  alert("Hello, " + this.name);
};

クラスを使用する側のコード

 ここまで理解していれば、クラスとしての基本的な体裁は全て整えていることになります。例えば、「白石」と言う名前を持つオブジェクトを作成するには次のようにします。

var shiraishi = new Person("白石");

 作成したオブジェクトは、nameというプロパティを持っています。

alert(shiraishi.name);

 プロトタイプに対して設定した、hello()メソッドを呼び出してみましょう。

shiraishi.hello();

 また、オブジェクトにプロパティを後からセットすることも可能です。ここでは、年齢を表すageプロパティをセットしてみましょう。

shiraishi.age = 73;
  • 新着記事
  • 特集
  • ブログ
このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]