【初級編DAY12】JavaScriptの基本文法を学ぼう②
【初級編DAY12】JavaScriptの基本文法を学ぼう②
引き続き基本文法について学んでいきます。
関数(function)
ある複数の計算をいろいろなところで使いたいときなどに、その複数の計算に名前を付けて、必要なところで呼び出すことを可能とする処理。
基本的な書き方
基本的な書き方
関数名 ・・・関数を定義する。関数に名前を付ける。
引数 ・・・引数が必要な時は()内に記述※必須ではない
{}内 ・・・処理内容を記述
記述書いただけでは実行されないので、実行を行いましょう!
呼び出し方(実行)
これで作成した関数を呼び出し実行をすることができます。
引数
都度処理の際に値が代わる際は引数を使用することで値の受け渡しが可能となる。
例
showMessage関数内にconsole.log処理を記述。
messageを引数とし、処理内に引数を記述使用。すると処理実行時に指定した値がmessageに引き渡され実行される。
関数の宣言時にmessageに指定した部分に”こんにちわ"が入ったね!
複数の引数
複数の引数を当てることも可能です。
基本の記述方法
例
定義した関数の引数と呼び出す際に入れこむ引数は、同様の順番で記述を行ってください。
戻り値・返り値(return)
関数の結果を要求元に返すこと
関数を定義実行した際、通常実行のみが行われるため、自動的には答えは返ってこない。そのため「結果を教えて」と指示するのがreturnである。
returnを記述せずに実行させると結果がわからないため、undefined(未定義である)と返ってきてしまうので注意。
関数の実行を終了する
強制的に関数の実行が終了されてしまうので注意。
例
関数を定義する際に結果を関数doubleに返すよう指示を出している。
そうしたことでconsole.logで関数double・引数2で計算をした際に結果4としてコンソール画面に表示が可能となる。
仮にreturnを記述せず、number*2のみで記述をした際は計算をしても結果は教えてくれないため、処理を行っただけに過ぎなくなってしまう!
プログラミング初心者にはつまずきポイントでした・・
こちらのサイトがとても初心者向けに分かり易く解説をしてくださっています。
円の面積を求めてみよう!【練習問題】
上記のことを踏まえて円の面積を求めてみましょう。
<functionを使用しない場合>
<functionを使用して関数をまとめた場合>
最終的に表示する変数(円の面積)=calCircleArea
functionを使用した方がすっきりするね!
スコープの概念
変数や定数にはスコープという概念があります。
変数がどの場所から参照でき、どの範囲まで使えるのか。有効範囲のこと。同じスコープ上では使用が可能ですが、別のスコープのであれば使用や参照はできません。
グローバルスコープ
すべてのスコープから使用参照が有効であるスコープのことを指します。
注意事項
外で定義した変数をfunction内で使用や書き換えを行うことは可能ですが、基本的にfunction内で定義した定数に関しては、そのfunction内が有効範囲となります。
関数内で定義した際
関数外で変数定義をした際
最初はどこまで使えるのか、を意識しておくと良いね!
条件分岐(if)
ifを使うにあたり基本情報
という条件を指定したいときに使用する
基本的な記述方法
条件にはBoolean(ブーリアン)というデータ型を使用している。
true(一致) と false(不一致)を扱うデータ型のこと
※これまではこのようなデータ型を使用していたよ!※
String・・・文字列のデータ型
number・・数字のデータ型
このBoolean内で比較演算子を行い、trueとなるかfalseとなるかでifを使用し結果を返したい。
例
一般的な比較演算子
A>B AはBより大きい(Bは含まれない)
A<B AはBより小さい(Bは含まれない)
A>=B AはB以上である(Bも含まれる)
A<=B AはB以下である(Bも含まれる)
A===B AとBは同じ
A!==B AとBは異なる
こちらの比較演算を使用し、返ってきたtrueまたはfalseを使用し、ifで条件分岐を行っていく。
if 基本記述
複雑な条件分岐(論理演算子)【条件が or 又は and となるとき】
どちらかがまたはどちらも一致でtrue、どちらも一致しないfalse
AND(AND演算)・・・ && で表示
どちらも一致でtrue、どちらも一致ないまたは片方一致でもfalse
例
複雑な条件分岐【else、else if】
基本記述
ifにて結果がfalseであった際に、
①一致しなかった場合の処理を記述したい【else】
②一致しなかった場合に次の条件を指定する【else if(次の条件)】
③条件が重なりあう場合【入れ子】
if、比較演算、複雑な条件の書き方など記述方法を整理しよう!
switch文
基本記述
case 条件:・・・変数の値と比較したうえで処理の記述が可能となる。
break;・・・・・この処理から抜ける、という意味。breakを記述忘れるとそれ以降の処理を行ってしまうため、一致した時点で処理から抜ける必要が有る。
default:・・・・・条件に一致しないもの。条件以外のものに対しての処理
例
入り組んだif分の時はコチラで書くとすっきりするよ!
ifはフローチャート
switchは合う条件を上から当てはめていくイメージかな!
覚えることが増えてきて少しとっつきにくくなり始めてきました(;´・ω・)
まずは基本を理解して、頭で記憶するのではなく、「何ができるか」を把握して実際にコードを書く際の引き出しを増やしていきましょう!٩( ''ω'' )و