#関数
JavaScriptにおける関数とは、『いくつかの処理をまとめたもの』である。
const 定数名 = function() {
//いくつかの処理をまとめたもの
};
定数の後にfunction()と書き{}の中にまとめたい処理を書。
const selfintroduction = function() {
console.log("こんにちは");
console.log("私はtakahashiです");
console.log("40歳です");
};
self_introduction();
結果
こんにちは
私はtakahashiです
11歳です
最後の行のself_introduction()で関数を呼び出している。
関数の呼び出し方は 定数名() で呼び出す。
呼び出された関数は{}内の処理が実行される。
#アロー関数
関数の『function()』の部分を『()=>』(アロー関数)にしても関数を定義できる。
ES6から導入された新しい書き方である。
const self_introduction = () => {
console.log("こんにちは");
console.log("私はtakahashiです");
console.log("40歳です");
};
self_introduction();
結果
こんにちは
私はtakahashiです
11歳です
#引数
引数とは関数を呼び出す時に値を渡すことで、処理をする時に渡した値を用いて処理をしてくれる。
const 定数名 = (引数名) => {
//処理
};
定数名(値);
>```javascript
const self_introduction = (name) => {
console.log("こんにちは");
console.log(`私は${name}です`);
};
>
self_introduction("dai");
self_introduction("syou");
結果
こんにちは
私はdaiです
こんにちは
私はsyouです
関数を呼び出す時に渡した値を用いて処理してくれる。
#複数の引数
複数の引数を渡したい時には、 『,』(コンマ)で区切る。
const self_introduction = (name, age) => {
console.log(私は${name}です
);
console.log(${age}歳です
);
};
self_introduction("gotou", 17);
結果
私はgotoです
17歳です
self_introduction("gotou", 17); で name に "gotou" 、 age に 17 を渡している。
#戻り値
戻り値は、関数の処理結果を呼び出し元で受け取る。
『return』を使うと呼び出し元であたいを受け取れるようになる。
>```javascript
const 定数名 = () => {
return 値;
};
const add = (a,b) => {
return a + b;
};
const sum = add(1, 3); // add(1, 3);が return a + b;を呼び出している
console.log(sum);
結果
4
『add(1, 3)』で『return a + b;』を呼び出し『const sum』に代入している。
#戻り値(例)
const check = (number) => {
return number % 2 === 0;
//return後にある処理は行われない
console.log("計算しました");
};
console.log(check(6));
console.log(check(7));
結果
true
false
>```javascript
const check = (number) => {
return number % 3 === 0;
};
>
if (check(123)) {
console.log("3の倍数です");
} else {
console.log("3の倍数ではありません");
}
結果
3の倍数です
#スコープ
スコープとは定数や変数の使用できる範囲のことをいう。
const introduction = () => {
const name = "dai";
// 定数nameが使えるスコープ
};
// 定数nameが使えないスコープ
>```javascript
if (条件式) {
const name = "dai";
// 定数nameが使えるスコープ
}
// 定数nameが使えないスコープ
while (条件式) {
const name = "dai";
// 定数nameが使えるスコープ
}
// 定数nameが使えないスコープ