Содержание курса
1. Ядро языка JS
8 уроков
29
11
0м
0
Открытый
1.1
Типы и сравнение: == vs ===, NaN/Infinity, BigInt
↗
12
2
-
0
Закрытый
1.2
Область видимости и hoisting
↗
3
2
-
0
Закрытый
1.3
this/context и bind/call/apply
↗
3
2
-
0
Закрытый
1.4
Замыкания и фабрики функций
↗
4
1
-
0
Закрытый
1.5
Деструктуризация, rest/spread
↗
1
1
-
0
Закрытый
1.6
Итераторы и генераторы
↗
2
1
-
0
Закрытый
1.7
Коллекции Map/Set/WeakMap/WeakSet
↗
2
1
-
0
Закрытый
1.8
Дата/время: ISO, тайм-зоны (без внешних либ)
↗
2
1
-
0
2. Функциональные утилиты
8 уроков
31
8
0м
0
Открытый
2.1
Полифиллы: map/filter/reduce
↗
19
1
-
0
Закрытый
2.2
compose/pipe
↗
2
1
-
0
Закрытый
2.3
once/memoize
↗
2
1
-
0
Закрытый
2.4
debounce/throttle
↗
2
1
-
0
Закрытый
2.5
deepEqual (без циклов)
↗
2
1
-
0
Закрытый
2.6
deepClone (Date/Array/Object)
↗
1
1
-
0
Закрытый
2.7
deepMerge (объединение с приоритетом)
↗
1
1
-
0
Закрытый
2.8
flatten/flatMap
↗
2
1
-
0
3. Объекты и структуры
8 уроков
25
8
0м
0
Открытый
3.1
LRU‑cache (O(1), двусвязный список)
↗
12
1
-
0
Закрытый
3.2
PriorityQueue (мин‑куча на массиве)
↗
2
1
-
0
Закрытый
3.3
LinkedList (вставка/удаление/печать)
↗
2
1
-
0
Закрытый
3.4
Простой роутер (path‑matching с параметрами)
↗
2
1
-
0
Закрытый
3.5
Range/Chunk итераторы
↗
1
1
-
0
Закрытый
3.6
Дифф объектов (поверхностный, ключи)
↗
2
1
-
0
Закрытый
3.7
Парсер подмножества JSON (токенизация+разбор)
↗
2
1
-
0
Закрытый
3.8
Шаблонизатор mini‑{{var}} (escape/replace)
↗
2
1
-
0
4. Асинхронность и управление
4 урока
8
4
0м
0
Закрытый
4.1
Promise.allSettled
↗
2
1
-
0
Закрытый
4.2
Ограничение параллелизма (pool)
↗
2
1
-
0
Закрытый
4.3
Очередь задач (serial queue)
↗
2
1
-
0
Закрытый
4.4
Семафор/мьютекс на промисах
↗
2
1
-
0