JavaScript/return

カテゴリ:Book:JavaScript#return%20

return

return は、JavaScript のキーワードで、関数からの戻り値を指定するために使用されます。関数の実行を終了し、指定した値(または指定しない場合は undefined)を呼び出し元に返します。return 文は、関数の処理が終了する場所を明示的に示すため、制御フローの管理において非常に重要です。

構文

return [];

return は、任意の式を返すために使用します。式が指定されない場合、関数は undefined を返します。

使用例

戻り値を返す

function add(a, b) {
  return a + b;
}
console.log(add(3, 4));  // 7

この例では、add 関数が引数 a と b を足し合わせ、その結果を return で返します。

関数の終了

function checkNumber(number) {
  if (number < 0) {
    return 'Negative number';
  }
  return 'Positive number';
}
console.log(checkNumber(-5));  // Negative number

return は、関数の実行を終了させる役割も果たします。上記の例では、number が負の場合、関数は即座に終了し、"Negative number" を返します。

戻り値がない場合

function greet(name) {
  if (!name) {
    return;
  }
  return 'Hello, ' + name;
}
console.log(greet());  // undefined

return 文で戻り値を指定しない場合、関数は undefined を返します。この例では、name が指定されていない場合、return 文で何も返さず、undefined が返されます。

return の早期リターン

function processData(data) {
  if (!data) {
    return 'No data provided';
  }
  // データ処理
  return 'Data processed';
}
console.log(processData(null));  // No data provided

早期リターンは、関数の実行を早い段階で終了させ、残りの処理を省略する手法です。この場合、データが提供されていない場合に早期リターンを使い、残りの処理を実行しません。

配列やオブジェクトの返却

function createUser(name, age) {
  return { name: name, age: age };
}
console.log(createUser('Alice', 30));  // { name: 'Alice', age: 30 }

return を使用して、関数からオブジェクトや配列など複雑なデータ構造を返すこともできます。上記の例では、name と age を持つオブジェクトが返されます。

関数内で複数の return

function test(num) {
  if (num > 10) {
    return 'Greater than 10';
  } else if (num < 10) {
    return 'Less than 10';
  }
  return 'Equal to 10';
}
console.log(test(5));   // Less than 10
console.log(test(10));  // Equal to 10
console.log(test(15));  // Greater than 10

複数の return 文を使って条件によって異なる戻り値を返すことができます。上記の例では、条件に応じて異なるメッセージを返します。

関連項目

参考

カテゴリ:JavaScript
カテゴリ:Book:JavaScript カテゴリ:JavaScript カテゴリ:Pages using the JsonConfig extension