関数は、必要な要素を入れてあげたら、正しい答えを返してくれる。そんなブラックボックスのようなものです。
元となるデータがあり、それをブラックボックスに入れてあげると、答えが自動で出てくる、そんなイメージですか。
関数の定義はいくつかの方法がありますが、最も簡単なのは
function 関数名(引数1, 引数2, 引数3…){
関数の中の処理
return 答え
}
という形になります。
例えば、二つの数値data1, data2の大きな方の値を選ぶというanswerBigという関数を作るとすれば
function answerBig( data1, data2 ){
var ans;
if(data1 >= data2){
ans = data1;
} else {
ans = data2;
}
return ans;
}
みたいな形で記述することが出来ます。
で、実際の処理を行うところで、kotae1, kotae2という2つの変数のうち、より大きな数を取得したい場合は、
var kotae = answerBig(kotae1, kotae2);
のように関数を記述します。
kotaeにはkotae1とkotae2のいずれか大きな方の数値が入る形になります。
このように、同じような処理をいろんなところで行う場合に関数は役に立ちます。
なお、関数の中で定義した変数については、その関数の中でだけ使えるローカル変数になります。
どこででも使える変数はグローバル変数といいます。関数の外で定義することが出来ます。
いずれにしても関数の中で定義している変数については、関数の外では使えないということをご理解ください。
var sampledata = 3; // グローバル変数
var kotae = hikizan(15);
document.write("引き算の答えは" + kotae + "になります<br>");
document.write("ローカルのans2は" + ans2 + "になります<br>");
// ans2は、hikizan関数の中で定義されたローカル変数なので、ここでは扱うことが出来ない
function hikizan(data) {
var ans; // ローカル変数
ans = data - sampledata;
// グローバル変数のsampledataには3が入っているので、dataから3を差し引いたものがansに入る
var ans2 = ans++; // ansに1インクリメントしたものをans2に入れる
return ans;
}