Що таке замикання в JavaScript з прикладом

pic

Замикання (Closure) в JavaScript — це можливість, коли внутрішня функція зберігає доступ до змінних зовнішньої функції, навіть після того, як зовнішня функція завершила своє виконання. Замикання створюються щоразу, коли функція визначена всередині іншої функції, що надає внутрішній функції доступ до:

  1. Змінних, оголошених у її власній області видимості.
  2. Змінних, оголошених у зовнішній (обгортній) функції.
  3. Глобальних змінних.

Замикання — це важлива концепція в JavaScript, що дає змогу створювати потужні програмні патерни, такі як інкапсуляція, каріювання (currying) і мемоізація (memoization).

Як працюють замикання в JavaScript

Коли в JavaScript створюється функція, вона несе з собою посилання на область видимості, в якій була визначена. Це … Читати далі

Впровадження управління токенами за допомогою Fetch у Next.js

У сучасній веб-розробці управління автентифікацією користувачів є критично важливим, особливо коли мова йде про RESTful API. Тут ми розглянемо, як керувати терміном дії токенів та їх оновленням у додатку Next.js, використовуючи рідний fetch API замість сторонніх бібліотек, таких як Axios.

Чому використовувати Fetch?

Використання fetch безпосередньо означає менше залежностей, що в свою чергу призводить до легшого пакету додатку та меншої вразливості до оновлень зовнішніх бібліотек.
``js
const response = await fetch('https://api.example.com/data', {
method: 'GET',
headers: {
'Authorization':
Bearer ${token}`
}
});

Ось як ми можемо це зробити:

Крок 1: Механізм оновлення токена

Спочатку нам потрібно створити функцію для оновлення … Читати далі

Дізнайтесь, як створити ефект тексту з частинками за допомогою Tailwind CSS та JavaScript.

Привіт всім! Сьогодні ми створимо грайливий ефект тексту з частинками за допомогою Tailwind CSS та JavaScript.

Ефект тексту з частинками анімує розсіяні частинки, які збираються разом, утворюючи текст, створюючи динамічне та захоплююче зображення. JavaScript відповідає за рух, а Tailwind CSS стилізує частинки та текст.

Прочитайте статтю, подивіться в реальному часі та отримайте код.

<div class="text-particles">Hello, world!</div>




Перекладено з: [Learn how to create a particle text effect with Tailwind CSS and JavaScript](https://michael-andreuzza.medium.com/learn-how-to-create-a-particle-text-effect-with-tailwind-css-and-javascript-65dc296adfc9?source=rss------javascript-5)
Читати далі

Як перевірити на null або порожній рядок в JavaScript

Використовуйте: https://www.freecodecamp.org/news/javascript-check-empty-string-checking-null-or-empty-in-js/

let myStr = null;  

if (myStr === null || myStr.trim() === "") {  
 console.log("Це порожній рядок!");  
} else {  
 console.log("Це не порожній рядок!");  
}

Це поверне:

"Це порожній рядок!"




Перекладено з: [How to Check for a Null or Empty String in JavaScript](https://khajehossini.medium.com/how-to-check-for-a-null-or-empty-string-in-javascript-9cf5ed5d35f4?source=rss------javascript-5)
Читати далі

Поглиблене занурення в розробку Android-додатків: методи, мови та майбутнє

Поглиблене занурення в розробку Android-додатків:

Ринок мобільних додатків бурхливо розвивається, і Android, зі своєю величезною аудиторією, залишається домінуючою силою.
```java
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}

Розробка високоякісних Android-додатків:

Розробка високоякісних Android-додатків вимагає ґрунтовного розуміння процесу розробки та необхідних інструментів.

Основні методи розробки:

  • Нативна розробка (Native Development):
  • Мови: Java та Kotlin — основні мови для нативної розробки Android.
  • Переваги: Забезпечує оптимальну продуктивність, доступ до всіх функцій пристрою та плавний користувацький досвід.
  • Недоліки: Потрібні окремі кодові бази для Android та iOS.

pic

  • Кросплатформенна розробка (Cross-Platform Development):
  • Фреймворки: React Native, Flutter, Xamarin
  • Переваги:
Читати далі

Оволодіння основами JavaScript: контекст виконання, підняття та області видимості

Розуміння основ JavaScript є ключем до опанування цієї мови. Такі концепції, як контекст виконання, підняття (hoisting) та області видимості (scoping), є основою того, як JavaScript працює за лаштунками. Давайте детально розглянемо ці концепції з чіткими поясненнями та прикладами.

Контекст виконання та стек викликів

JavaScript — це синхронна мова з одною ниткою виконання, яка виконує код по черзі, рядок за рядком. Стек викликів (Call Stack) — це інша назва для стека контексту виконання, який керує порядком виконання функцій.

Цей стек також має інші назви, такі як стек програми (Program Stack), контрольний стек (Control Stack), стек виконання (Runtime Stack) та машинний стек … Читати далі

Основи реалізації чистої архітектури в UE-5 за допомогою C++

Вивчаючи розробку ігор в Unreal Engine на C++ не так давно, я натрапив на проблему в проєкті, над яким працював. Мої класи ставали надто заплутаними, з великою кількістю методів та умов if else.

Тому я вирішив реалізувати більш чистий код, орієнтуючись на принципи Clean Architecture.

Я трохи пошукав в інтернеті, але не знайшов багато прикладів практичного використання Clean Architecture в Unreal Engine з використанням мови C++.

Сподіваюся, цей артикул буде корисним для інших розробників (devs) і стане відправною точкою.

Структура проєкту

pic

У межах Application ми маємо BallStaticMeshActor, що представляє футбольний м'яч, і ми хочемо маніпулювати його … Читати далі

Опанування основ JavaScript: контекст виконання, підняття змінних і області видимості

Розуміння основ JavaScript є ключем до оволодіння мовою. Концепції, такі як контекст виконання (Execution Context), підняття (Hoisting) і область видимості (Scoping), становлять основу того, як JavaScript працює "під капотом". Давайте глибше зануримося в ці поняття за допомогою зрозумілих пояснень та прикладів.

Контекст виконання (Execution Context) та стек викликів (Call Stack)

JavaScript є синхронною, однопотоковою мовою, яка виконує код рядок за рядком. Стек викликів (Call Stack) — це інша назва для стека контексту виконання (Execution Context Stack), що керує порядком виконання функцій.

Цей механізм також відомий під іншими назвами, такими як стек програми (Program Stack), стек управління (Control Stack), стек виконання … Читати далі

Як перевірити, чи є рядок порожнім або дорівнює null у JavaScript

Використання: https://www.freecodecamp.org/news/javascript-check-empty-string-checking-null-or-empty-in-js/

let myStr = null;  

if (myStr === null || myStr.trim() === "") {  
 console.log("Це порожній рядок!");  
} else {  
 console.log("Це не порожній рядок!");  
}

Цей код виведе:

"Це порожній рядок!"




Перекладено з: [How to Check for a Null or Empty String in JavaScript](https://khajehossini.medium.com/how-to-check-for-a-null-or-empty-string-in-javascript-9cf5ed5d35f4?source=rss------javascript-5)
Читати далі

Перехід по графу за допомогою JavaScript | BFS та DFS

Графи є фундаментальною структурою даних в інформатиці, що використовуються для моделювання взаємозв'язків між об'єктами. В JavaScript графи зазвичай представляються за допомогою списку суміжності, де кожна вершина (або вузол) має список своїх сусідів.

Тут ми розглянемо дві важливі техніки обходу графів: пошук в ширину (BFS) та пошук в глибину (DFS).

Що таке граф?

Граф складається з двох основних компонентів:

  1. Вершини (вузли): Це точки або об'єкти в графі.
  2. Ребра: Це зв'язки між вершинами.

Графи можуть бути:

  • Орієнтовані: Ребра мають напрямок, наприклад, від вершини A до вершини B.
  • Неорієнтовані: Ребра є двосторонніми, наприклад, від вершини A до вершини
Читати далі