関数式
CoddyのJavaScriptジャーニー「基礎」セクションの一部 — レッスン 49/77。
JavaScriptにおいて、関数式は式の一部として関数を定義する方法です。関数宣言とは異なり、関数式はホイスティング(巻き上げ)されないため、コード内で定義される前に呼び出すことはできません。
関数式の基本的な構文は次のとおりです:
let functionName = function(parameters) {
// 実行されるコード
// ...
return value; // 任意のreturn文
};functionキーワードの後には、オプションで関数名を指定できます。名前が指定された場合、それは名前付き関数式(named function expression)になります。そうでない場合は、匿名関数式(anonymous function expression)になります。パラメータは括弧内に指定され、関数本体は波括弧で囲まれます。
名前付き関数式の例を次に示します:
let add = function sum(a, b) {
return a + b;
};
console.log(add(3, 5)); // 出力: 8この例では、add は関数を保持する変数であり、sum は関数のオプションの名前です。関数に名前があっても、sum を直接呼び出すことはできません。変数 add を使用する必要があります。
無名関数式の例を次に示します。
let multiply = function(a, b) {
return a * b;
};
console.log(multiply(4, 2)); // Output: 8この場合、関数には名前がなく、変数 multiply に直接代入されています。
関数式は、ある関数を別の関数に引数として渡したい場合や、その場で関数を作成したい場合によく使用されます。
チャレンジ
簡単calculateArea という名前の関数式を作成してください。この関数は 2 つの引数 width と height を受け取り、長方形の面積を返します。この関数は calculateArea という名前の変数に代入してください。
例えば:
console.log(calculateArea(5, 10)); // 出力: 50
console.log(calculateArea(3, 7)); // 出力: 21チートシート
関数式は、式の一部として関数を定義し、ホイスティング(巻き上げ)されません(定義する前に呼び出すことはできません)。
基本構文:
let functionName = function(parameters) {
// 実行されるコード
return value; // オプション
};名前付き関数式:
let add = function sum(a, b) {
return a + b;
};
console.log(add(3, 5)); // 出力: 8無名関数式:
let multiply = function(a, b) {
return a * b;
};
console.log(multiply(4, 2)); // 出力: 8関数式は、関数を引数として渡したり、動的に関数を作成したりする場合に便利です。
自分で試してみよう
// 以下にコードを入力してください
// 以下の行は変更しないでください
console.log(calculateArea(5, 10));
console.log(calculateArea(3, 7));このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。