return — це ключове слово в JavaScript, яке використовується для завершення виконання функції та повернення значення у виклик функції. Якщо після return вказати значення або вираз, результат цього виразу повернеться тому, хто викликав функцію. Якщо return викликати без параметрів, функція поверне undefined.
Конструкція return є основним способом передачі результатів роботи функції, що дозволяє використовувати функцію як частину складніших виразів. Наприклад:
function add(a, b) {
return a + b;
}
const sum = add(3, 5); // sum = 8
Ключове слово return завершує виконання функції. Код, розташований після нього, не буде виконаний:
function test() {
return "Значення";
console.log("Цей код ніколи не виконається");
}
return часто використовується для умовного повернення різних значень залежно від логіки функції:
function checkNumber(num) {
if (num > 0) {
return "Позитивне";
} else if (num < 0) {
return "Негативне";
}
return "Нуль";
}
Функції, які нічого не повертають, не обов’язково повинні використовувати return. Однак, якщо вказати return без значення, це явно позначає завершення роботи функції.
Ключове слово return можна використовувати для скорочення коду функції. Якщо результат операції не залежить від проміжних обчислень, повертайте результат прямо через return:
При роботі з функціями, які не повертають значення, використовуйте return без параметрів для явного завершення. Це особливо корисно в ситуаціях, коли функція може бути модифікована:
function logMessage(msg) {
console.log(msg);
return;
}
У функціях з вкладеною логікою повертайте результат якомога раніше. Це допомагає уникати багаторівневих вкладень і покращує читабельність коду. Наприклад:
function findValue(arr, target) {
if (!arr.includes(target)) return "Не знайдено";
return `Знайдено ${target}`;
}
У цьому прикладі return використовується для побудови рекурсивної функції, яка обчислює факторіал числа. Ключове слово дозволяє зберегти результат попередніх викликів для подальшого обчислення.
function factorial(n) {
if (n === 0) return 1;
return n * factorial(n - 1);
}
console.log(factorial(5)); // 120
Цей приклад показує, як return використовується для створення функції вищого порядку, яка генерує нові функції. Повернена функція отримує доступ до змінних, визначених у початковому контексті, що дозволяє створювати різні множники.
function createMultiplier(factor) {
return function (number) {
return number * factor;
};
}
const double = createMultiplier(2);
const triple = createMultiplier(3);
console.log(double(4)); // 8
console.log(triple(4)); // 12