関数を作ることを「定義」といい、関数のブロック内にJavaScriptの文をかいていきます。ブロック内ではこの書き方はこれまでのプログラムとあまり変わらないので、プログラムの一部を切り抜いて名前をつけるイメージです。
また、関数を自分で作るメリットとして構造を管理しやすくなる、何度も呼び出しができる、ということからプログラムを効率よく書いていくということにもつながっていきます。
let mailText = () => {
console.log('PT企画の高橋です。');
console.log('請求書を送ります。');
};
mailText();
mailTextに関数定義されたコンソールログを出力するためにmailTextと呼び出しています。
関数定義を行った上で「呼び出す」という処理が必要です。
let mailText = (recv) => {
console.log(recv + '様');
console.log('PT企画の高橋です。');
console.log('請求書を送ります。');
};
mailText('佐藤');
mailText('鈴木');
mailTextの中に引数「recv」を設定することでmailTextに設定した文字列を引き渡し、関数を呼び出したときに処理するようになっています。
シンプルなプログラムであれば関数はややこしくなりがちですが、プログラムは総じてややこしいからこそプログラム上で処理を行い、効率化を図る必要があります。
関数はプログラムを書く上で必須となり、この関数の書き方一つで複雑なプログラムにもなればわかりやすい、便利なプログラムにもなります。
一昔前(ES5と呼ばれた時代のJavaScript)では「function文」や「function式」が主流でもありましたが、ES2015と呼ばれるバージョンではアロー関数式を覚えたほうがわかりやすくもあります。
色々なWebサイトではfunctionを好んで多様するJavaScriptのサンプルコードもあるため、混乱するかもしれませんが動作としては広義の意味としてほぼ一緒と捉えてもいいです。
// アロー関数式
let mailText0 = (recv) => {
console.log(recv + '様');
};
mailText0('アロー');
// function文
function mailText1(recv){
console.log(recv + '様');
}
mailText1('文');
// function式
let mailText2 = function(recv){
console.log(recv + '様');
}
mailText2('式');