JS об'єкт function
Загальний опис
function
— ключове слово для створення функції, яка є одним із основних будівельних блоків JavaScript. Функція дозволяє організувати код, зробити його повторно використовуваним і більш читабельним.
Створення функції починається з ключового слова function
, за яким іде ім'я функції (наприклад, calculateSum
). Потім у круглих дужках (()
) задаються параметри — вхідні дані, які функція приймає. Далі у фігурних дужках ({}
) розташовується тіло функції, яке виконує інструкції.
Функція може повертати результат за допомогою ключового слова return
. Якщо return
відсутній, функція повертає undefined
.
Ось приклад простої функції, яка обчислює суму двох чисел:
function calculateSum(a, b) {
return a + b;
}
console.log(calculateSum(5, 3)); // Виведе: 8
Функції можна викликати необмежену кількість разів, змінюючи вхідні дані:
console.log(calculateSum(10, 15)); // Виведе: 25
console.log(calculateSum(7, 2)); // Виведе: 9
Також функції можна вкладати одна в одну:
function square(x) {
return x * x;
}
function sumOfSquares(a, b) {
return square(a) + square(b);
}
console.log(sumOfSquares(2, 3)); // Виведе: 13
Функції є іменованими (мають ім'я) або анонімними (без імені). Анонімні функції часто використовуються як значення змінної:
const multiply = function(x, y) {
return x * y;
};
console.log(multiply(4, 5)); // Виведе: 20
Ще один тип функцій — стрілкові функції (arrow functions), які спрощують синтаксис:
const subtract = (a, b) => a - b;
console.log(subtract(10, 4)); // Виведе: 6
Функції — потужний інструмент, який дозволяє організовувати код у модульні та логічно завершені частини.
Порада: | Не обов'язково завжди використовувати
|
Порада: | Параметри функцій є опціональними. Якщо аргумент не передано, параметр отримає значення
|
Порада: | Функція може викликати саму себе — це називається рекурсія. Використовуйте її для складних завдань, таких як підрахунок факторіалу:
|
Синтаксис
function name(параметри) {
// Тіло функції
return; // Опціонально
}
Переглядачі
Переглядач | |||||
---|---|---|---|---|---|
1 |
1 |
1 |
3 |
12 |
Переглядач | ||||
---|---|---|---|---|
4.4 |
18 |
4 |
1 |
Переглядач | ||
---|---|---|
0.10.0 |
1.0 |
Приклади
Користувач вводить температуру, обирає напрямок конвертації (з Цельсія у Фаренгейт або навпаки) та натискає кнопку. JavaScript-функція convertTemperature
обробляє значення і виводить результат на сторінку. Це чудовий приклад того, як функції забезпечують динамічну взаємодію з користувачем.
Замикання зберігає доступ до змінної count
, навіть якщо зовнішня функція вже завершила роботу.
function createCounter() {
let count = 0;
return function() {
count++;
return count;
};
}
const counter = createCounter();
console.log(counter()); // 1
console.log(counter()); // 2
Цей приклад зберігає результати обчислень у кеші, щоб уникнути повторних розрахунків.
function memoize(fn) {
const cache = {};
return function(arg) {
if (cache[arg]) {
return cache[arg];
}
const result = fn(arg);
cache[arg] = result;
return result;
};
}
const square = memoize(x => x * x);
console.log(square(5)); // 25 (обчислено)
console.log(square(5)); // 25 (взято з кешу)