Javascriptの関数
関数は複数の文で書かれた命令をまとめて呼び出せるようにする仕組みです。関数をうまく使いこなせるかどうかはプログラミングの効率を左右する大きなポイントです。
複雑な手順をまとめる
いきなりですが次の3つの命令は何をするためのものでしょうか?
- 取っ手をつかむ
- 取っ手をひねって留め金を外す
- 取っ手を持ったまま手前に引く
正解はドアを開けるです。言葉では一言の動作でも手順化して文に分けると何を行っているのかわかりにくくなってしまうときがあります。できることなら単にドアを開けると表現したいです。そんな時に便利なのが関数です。関数は複数の文で書かれた命令に名前を付けてまとめて呼び出せる仕組みです。
関数は複数の命令をまとめる
出社プログラム
ドアを開ける:家を出る
ドアを開ける:会社に入る
ドアを開ける:自分の席に着く
利用
ドアを開ける関数
・取っ手をつかむ
・取っ手をひねって留め金を外す
・取っ手を持ったまま手前に引く
読みやすくて再利用しやすいプログラムが書ける
関数を使うメリットはたくさんありますが特に重要な2つのメリットはプログラムが読みやすくなることとプログラムを再利用できることです。関数を使いことでたくさんの手順が意味のある単位にまとまりプログラムが読みやすくなります。そして一度関数を定義してしまうば簡単に再利用することができます。例えば100行の命令を10回行うには100行×10で1000行の記述が必要ですが関数を使えば定義するときに必要な100行ちょっとの命令と関数を呼び出すときに必要な1行の命令10回で済みます。もし修正があったときも10か所すべて修正するのではなく関数の定義1か所だけ修正すれば済みます。
はじめから用意されている関数もたくさんある
実はこれまで使用してきたconsole.log()やparseFloat()なども関数の1種です。本当は複雑な手順が必要なプログラムも関数化することで簡単に利用できるようになっているのです。
console.log:関数 コンソールに情報を表示
alert:関数 警告ダイアログボックスを表示
prompt:関数 入力ダイアログボックスを表示
parseFloat:関数 文字列を数値に変換
confirm:関数 確認ダイアログボックスを表示