Наповнення JS розділу

Добридень, Пані та Панове, завдяки вам вдалося зібрати більше 19тис грн з необхідних 15тис на впровадження JS розділу.

JS розділ вже впроваджено - переходимо до його наповнення і почнемо бігти довгий марафон, адже JS має більше 1100 різноманітних методів, властивостей, подій і т.д., які необхідно описати.

Будемо працювати, і вдень, і вночі, щоб орієнтовно взимку закінчити наповнювати JS розділ!

Ви також можете допомогти нам в цьому. Долучайтеся до нашої спільноти в дискорді - ставайте її частиною і допомагайте нашому розвитку.

Також, підтримуйте нас матеріально.

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

Функції — потужний інструмент, який дозволяє організовувати код у модульні та логічно завершені частини.

Порада:

Не обов'язково завжди використовувати return. Наприклад, функції можуть просто виконувати дії, як у цьому прикладі:

function logMessage(message) {
  console.log(message);
}
logMessage("Привіт, світ!");
Порада:

Параметри функцій є опціональними. Якщо аргумент не передано, параметр отримає значення undefined. Можна додати значення за замовчуванням:

function greet(name = "Гість") {
  return `Привіт, ${name}!`;
}
console.log(greet()); // Привіт, Гість!
Порада:

Функція може викликати саму себе — це називається рекурсія. Використовуйте її для складних завдань, таких як підрахунок факторіалу:

function factorial(n) {
  if (n === 1) return 1;
  return n * factorial(n - 1);
}
console.log(factorial(5)); // 120

Синтаксис

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 (взято з кешу)

Методи

Властивості