目次

ご挨拶

皆さま、どうもこんにちは。
今回から、JavaScriptで頻繁に用いられるであろうメソッドやプロパティを紹介していきたいと思います。
JavaScript?メソッド?プロパティ? 何言ってんだコイツと思ったあなた。どうかブラウザバックしないでいただきたい。
今回のブログでは、そもそもメソッドとプロパティがどんなものなのかを説明したいと思っています。
わかるよー、というところは読み飛ばしていただいて構いません。
それでは、ごゆっくりどうぞ^^

JavaScriptはオブジェクト指向言語

JavaScriptがわからない方向けに説明しますと、JavaScriptは、プログラミング言語の一種です。
人がパソコンにやってほしいことを、コンピューターにわかるように書いた言葉のことをプログラミング言語と呼びます。
そんなプログラミング言語は、大きく二種類に分けられます。

1.コンパイルが必要な言語(コンパイラ言語)
2.コンパイルが必要ない言語(スクリプト言語)
※コンパイルとは・・・プログラミングしたものを、さらにもう一段階機械にわかるように翻訳する作業
JavaScriptはこのうちの2に入り、コンパイルは必要ありません。

また、JavaScriptはオブジェクト指向の言語でもあります。
オブジェクト指向とは、この世のあらゆる全てをオブジェクトとみなし、プログラムをそのオブジェクト同士の干渉と捉える考え方のことです。
ちょっとわかりづらいかもしれませんね。
オブジェクトの例を出します。

犬、猫、パソコン、この記事を読んでいるあなた、音、空、平和、愛

そう、本当にあらゆるものがオブジェクトなのです。
JavaScriptは、そのオブジェクト同士の働きあいによって動いているという考え方で成り立っています。

そんなこんなで一旦休憩です(私も)。オブジェクトの世界に想いを馳せながら、コーヒーでもお飲みになってください。ミルクティーでも構いません。午後の紅茶のホットミルクティー美味しいですよね。
こちらもどうぞ↓

プロパティとメソッド

さて、休憩は終わりです。
ここからは、本題であるプロパティとメソッドについて解説します。
まず、オブジェクトは「属性」と「行動」を持っていることを知ってもらいましょう。
例えば「犬」や「空」オブジェクトだと、どんな属性・行動を持っているか考えます。

オブジェクト 属性 行動
茶色い ワンと吠える
青い 雨を降らす

いかがでしょうか。
属性とは、そのオブジェクトの見た目や様子、状態などのことです。
行動はそのままの意味で、そのオブジェクトがすることができる動き・動作のことを指します。
プロパティとはこの属性のことで、メソッドとは動作のことです。
JavaScriptに出てくるオブジェクトの状態をプロパティと呼び、動作をメソッドと呼ぶわけですね。

関数とメソッド

またまた新しい言葉が出てきましたね。
関数とは・・・「処理を一つの固まりとし、何度も使えるようにしたもの」です。

例をあげましょう。
ちょっとしたプログラムっぽく書いてみると、

オブジェクト:悟空{
  関数名:怒る {・・・①
   ・血管を浮き上がらせる
   ・地団駄を踏む
   ・「クリ○ンのことかー!」と言う
  }
} 「悟空」内にある「怒る」発動・・・②

こんな感じでしょうか。
①で関数「怒る」を定義し、②で実際に「怒る」を使用しています。
こうすることでいろんな状況で、怒ることができますね!
さて、ここで注意です。
「悟空」オブジェクトの中にある関数「怒る」は、オブジェクトの「動作をまとめた動作」。。。つまり、メソッド?
(動作をまとめたもの「関数」を使用するのも、「動作」の一種。)
と、察しの良い方は考えた方はご名答。その通り! 関数とメソッドを見分けるにはどうすれば良いのでしょうか?
関数は、オブジェクトとの紐付き関係なく使用できるもの。 メソッドは、オブジェクトの中にある関数であるため、使用する場合は「オブジェクト〜の中の関数〜」という感じに書かなければならない。 また、プログラミングの世界では、「Aの中にあるB」を、「A.B」と表します。 そういうわけで、「オブジェクト名.関数名」と書かれているものがメソッドとなります。 また、プロパティもメソッドと同じように、「オブジェクト名.プロパティ名」と書かれているものがプロパティです。

まとめ

今回の記事で書いたことを短くまとめましょう。

  • JavaScriptはオブジェクト指向言語
  • オブジェクトは万物
  • 関数は処理をまとめたもの
  • メソッドはオブジェクト内の動作(関数)で、プロパティはオブジェクト内の属性

さて、いかがだったでしょうか。 最後の方はちょっと走ってしまいましたが、このブログは「わかりやすく・読みやすく・ゆるく」を目標にしておりますので、これからもお気軽にお読みいただければ幸いです。 それでは、お読みくださり、ありがとうございました!!!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA