駆け出しのエンジニア日記

プログラミング言語勉強中の奮闘日記

プロトタイプについて

JavaScriptで「継承」を実現する仕組みでもある「プロトタイプ(prototype)」についてです。

説明の前に実際にサンプルで配列を作成し、確認してみましょう。

中身を確認すると、「 Prototype 」の記載があります。

この「 Prototype 」の中に、「 push 」や「 pop 」などの配列で使用するメソッドが含まれています。

このプロパティは配列のプロトタイプへの参照を持っているプロパティです。

配列オブジェクトのひな型(テンプレ)となっており、プロトタイプオブジェクトがメ

ソッドを持っているおかげで、配列自身がメソッドを持っていなくても、自分がそのメ

ソッドを持っているかのように実行することが可能となります。

 

また、prototypeを使ってメソッドを定義することもできます。

// サンプルで「叫ぶ」という関数を作成
String.prototype.shout = function () {
console.log(this.toUpperCase());
}

'hello'.shout
// 結果
// Hello

※この時の「 this 」は helloというStringです。

記述の仕方は

オブジェクト名.prototype.メソッド名= function() {
}

となっています。

JavaScriptオブジェクト指向でもよく出てくるのでまず初めにプロトタイプについて簡潔にまとめてみました。

MDNもぜひ確認してみてください。

developer.mozilla.org