Урок 4
Функции
15 минФункции — это переиспользуемые блоки кода. Они делают программу чище и понятнее.
Объявление функции
// Классическое объявление
function greet(name) {
console.log("Привет, " + name + "!");
}
greet("Анна"); // Привет, Анна!
greet("Иван"); // Привет, Иван!
Параметры и аргументы
// Параметры — это переменные в определении функции
function sum(a, b) {
return a + b;
}
// Аргументы — конкретные значения при вызове
let result = sum(5, 3); // 8
// Параметры по умолчанию
function greet(name = "Гость") {
console.log("Привет, " + name);
}
greet(); // Привет, Гость
Возврат значения (return)
function multiply(a, b) {
return a * b;
// Код после return не выполнится
}
let product = multiply(4, 5); // 20
// Функция без return возвращает undefined
function sayHi() {
console.log("Hi!");
}
let result = sayHi(); // undefined
Стрелочные функции (ES6)
// Обычная функция
function add(a, b) {
return a + b;
}
// Стрелочная функция
const add = (a, b) => {
return a + b;
};
// Сокращённая запись (если одно выражение)
const add = (a, b) => a + b;
// Один параметр — скобки необязательны
const double = n => n * 2;
Когда использовать:
• Стрелочные функции — для коротких операций, колбэков
• Обычные функции — когда нужен свой
• Стрелочные функции — для коротких операций, колбэков
• Обычные функции — когда нужен свой
this или hoisting
Колбэк-функции
Функция, переданная как аргумент в другую функцию:
function processUser(name, callback) {
console.log("Обработка пользователя: " + name);
callback();
}
processUser("Иван", function() {
console.log("Готово!");
});
// Со стрелочной функцией
processUser("Анна", () => console.log("Готово!"));