Вёрстка сайтов | HTML, CSS, JS
4.79K subscribers
650 photos
3 videos
4 files
1.1K links
👋 Привет, друг!

В этом канале я выкладываю структурированные, обучающие уроки и материалы по вёрстке сайтов и фронтенду.
Присоединяйся и начинай учиться!

Связь: @Tigran1963
Download Telegram
Макет для тренировки (coinbank)

Перейти к макету 🧑‍💻

#практика | #макет
Задача: Проверка на сбалансированные скобки

Описание
Напишите функцию, которая проверяет, являются ли все скобки в строке сбалансированными. Сбалансированные скобки означают, что каждая открывающая скобка имеет соответствующую закрывающую скобку того же типа, и скобки правильно вложены.

Пример
isBalanced("{[()]}") // true
isBalanced("{[(])}") // false
isBalanced("{[}") // false


Указания
Функция должна поддерживать три типа скобок: круглые (), квадратные [] и фигурные {}.
Функция должна игнорировать все остальные символы в строке.
Строка может содержать любые символы, но интересуют только скобки.

Требования
Создайте функцию isBalanced с одним параметром — строкой, которую нужно проверить.
Функция должна вернуть true, если все скобки сбалансированы, и false в противном случае.

// Примеры использования
console.log(isBalanced("{[()]}")); // true
console.log(isBalanced("{[(])}")); // false
console.log(isBalanced("{[}")); // false

Объяснение
Создаём пустой массив stack для отслеживания открывающих скобок.
Создаём объект brackets, в котором ключи — это открывающие скобки, а значения — соответствующие закрывающие скобки.
Итерируемся по каждому символу строки.
Если символ является открывающей скобкой, добавляем соответствующую закрывающую скобку в стек.
Если символ является закрывающей скобкой, проверяем, совпадает ли он с последним элементом в стеке. Если нет, возвращаем false.
В конце возвращаем true, если стек пустой (все скобки были правильно закрыты), и false в противном случае.

#домашка
👍1
Как работают @container queries?

Читать 🧑‍💻

#css | #теория
4👍2
CSS Custom Properties: глубокий разбор переменных

Читать 🧑‍💻

#css | #полезности
👍5
Макет для тренировки (винное казино)

Перейти к макету 🧑‍💻

#макетдлятренировки
Какой метод позволяет изменять порядок элементов массива?
Anonymous Quiz
25%
sorting()
7%
shift()
10%
splice()
59%
reverse()
👍2🦄2
Задача: Реализуй функцию delayedQueue, которая принимает массив функций и вызывает каждую из них с задержкой 1 секунду.

Пример использования:
const tasks = [
() => console.log('Задача 1'),
() => console.log('Задача 2'),
() => console.log('Задача 3'),
];
delayedQueue(tasks);
// Вывод должен быть с интервалом 1 сек:
// "Задача 1"
// (спустя 1 секунду) "Задача 2"
// (спустя 1 секунду) "Задача 3"


#домашка
HTML Вопрос:

С точки зрения семантики может ли элемент <footer> содержать <main>?
Anonymous Quiz
28%
Да
67%
Нет
4%
Посмотреть ответы
Макет для тренировки (анкор)

Перейти к макету 🧑‍💻

#макетдлятренировки
1
JS Вопрос:

С помощью какого ключевого слова мы можем присвоить метод самой функции-классу, а не её "prototype"?
Anonymous Quiz
13%
public
23%
get
27%
set
26%
static
11%
Посмотреть ответы
Задача: Напиши функцию limitedParallel(promises, limit), которая выполняет limit промисов одновременно, а остальные ставит в очередь.

Пример использования:
const tasks = [
() => new Promise(res => setTimeout(() => res('A'), 1000)),
() => new Promise(res => setTimeout(() => res('B'), 500)),
() => new Promise(res => setTimeout(() => res('C'), 800)),
() => new Promise(res => setTimeout(() => res('D'), 300))
];
limitedParallel(tasks, 2).then(console.log);
// Промисы выполняются не больше чем по 2 за раз


#домашка
👍1