Задача: Группировка по первому символу
Напиши функцию groupByFirstLetter, которая принимает массив строк и возвращает объект, где ключами являются первые буквы строк (в нижнем регистре), а значениями — массивы строк, начинающихся на эту букву.
Пример:
Ожидаемый вывод:
Условия:
Игнорируй регистр при группировке (т.е. "Apple" и "avocado" — одна группа).
Порядок элементов внутри групп сохраняй.
Пустые строки можно игнорировать.
#домашка
Напиши функцию groupByFirstLetter, которая принимает массив строк и возвращает объект, где ключами являются первые буквы строк (в нижнем регистре), а значениями — массивы строк, начинающихся на эту букву.
Пример:
const input = ["Apple", "apricot", "banana", "Avocado", "Blueberry", "cherry"];
const result = groupByFirstLetter(input);
console.log(result);
Ожидаемый вывод:
{
a: ["Apple", "apricot", "Avocado"],
b: ["banana", "Blueberry"],
c: ["cherry"]
}
Условия:
Игнорируй регистр при группировке (т.е. "Apple" и "avocado" — одна группа).
Порядок элементов внутри групп сохраняй.
Пустые строки можно игнорировать.
#домашка
👍1
Подборка лучших постов за прошлую неделю
Лучшие статьи @free_html_lessons:
1. Атрибут srcset
2. Какой тег выбрать для заголовка?
3. robots.txt
Лучшие фронтенд вакансии @job_webdev:
1. HTML-верстальщик
2. Frontend разработчик
3. Разработчик
Лучшие дизайн вакансии @job_webdesign:
1. Дизайнер бизнес-коммуникаций
2. UI/UX-дизайнер
3. Web-дизайнер
#лучшеезанеделю
Лучшие статьи @free_html_lessons:
1. Атрибут srcset
2. Какой тег выбрать для заголовка?
3. robots.txt
Лучшие фронтенд вакансии @job_webdev:
1. HTML-верстальщик
2. Frontend разработчик
3. Разработчик
Лучшие дизайн вакансии @job_webdesign:
1. Дизайнер бизнес-коммуникаций
2. UI/UX-дизайнер
3. Web-дизайнер
#лучшеезанеделю
👍2
Задача: Создание интерактивной формы регистрации
Описание задачи:
Создайте простую веб-страницу с формой регистрации. Форма должна содержать поля для ввода имени, электронной почты и пароля. Пользователь должен увидеть сообщение об ошибке, если введенные данные не соответствуют следующим требованиям:
- Имя: не может быть пустым и должно содержать минимум 3 символа.
- Электронная почта: должна быть в формате email (например, user@example.com).
- Пароль: должен содержать минимум 8 символов, хотя бы одну цифру и одну заглавную букву.
Требования:
- HTML для создания формы.
- CSS для стилизации формы.
- JavaScript для проверки введенных данных в реальном времени и отображения соответствующих сообщений об ошибках.
Шаги:
- Создайте HTML файл с формой.
- Стилизуйте форму с помощью CSS.
- Добавьте JavaScript код для валидации полей формы в реальном времени.
#домашка
Описание задачи:
Создайте простую веб-страницу с формой регистрации. Форма должна содержать поля для ввода имени, электронной почты и пароля. Пользователь должен увидеть сообщение об ошибке, если введенные данные не соответствуют следующим требованиям:
- Имя: не может быть пустым и должно содержать минимум 3 символа.
- Электронная почта: должна быть в формате email (например, user@example.com).
- Пароль: должен содержать минимум 8 символов, хотя бы одну цифру и одну заглавную букву.
Требования:
- HTML для создания формы.
- CSS для стилизации формы.
- JavaScript для проверки введенных данных в реальном времени и отображения соответствующих сообщений об ошибках.
Шаги:
- Создайте HTML файл с формой.
- Стилизуйте форму с помощью CSS.
- Добавьте JavaScript код для валидации полей формы в реальном времени.
#домашка
❤2👍2
Подборка лучших постов за прошлую неделю
Лучшие статьи @free_html_lessons:
1. Что такое JavaScript фреймворки?
2. Тернарный оператор
3. Тег <output>
Лучшие фронтенд вакансии @job_webdev:
1. Frontend developer
2. HTML-верстальщик
3. Верстальщик
Лучшие дизайн вакансии @job_webdesign:
1. Web-дизайнер
2. UI/UX-дизайнер
3. Графический дизайнер
#лучшеезанеделю
Лучшие статьи @free_html_lessons:
1. Что такое JavaScript фреймворки?
2. Тернарный оператор
3. Тег <output>
Лучшие фронтенд вакансии @job_webdev:
1. Frontend developer
2. HTML-верстальщик
3. Верстальщик
Лучшие дизайн вакансии @job_webdesign:
1. Web-дизайнер
2. UI/UX-дизайнер
3. Графический дизайнер
#лучшеезанеделю
👍3
Задача: Ленивый бесконечный генератор простых чисел
Напиши генератор primeGenerator(), который при каждом вызове next() будет возвращать следующее простое число.
Пример:
Подсказка:
Можно реализовать простую проверку на простое число (через деление на числа до √n), и в генераторе перебирать числа от 2 и выше, возвращая только простые
#домашка
Напиши генератор primeGenerator(), который при каждом вызове next() будет возвращать следующее простое число.
Пример:
const gen = primeGenerator();
console.log(gen.next().value); // 2
console.log(gen.next().value); // 3
console.log(gen.next().value); // 5
console.log(gen.next().value); // 7
console.log(gen.next().value); // 11
Подсказка:
Можно реализовать простую проверку на простое число (через деление на числа до √n), и в генераторе перебирать числа от 2 и выше, возвращая только простые
#домашка
👍4
Подборка лучших постов за прошлую неделю
Лучшие статьи @free_html_lessons:
1. Стоит ли использовать bootstrap?
2. Как использовать БЭМ на практике?
3. Ошибки в js
Лучшие фронтенд вакансии @job_webdev:
1. Frontend developer
2. HTML-верстальщик
3. Frontend разработчик
Лучшие дизайн вакансии @job_webdesign:
1. Web-дизайнер
2. UI/UX-дизайнер
3. Intern web дизайнер
#лучшеезанеделю
Лучшие статьи @free_html_lessons:
1. Стоит ли использовать bootstrap?
2. Как использовать БЭМ на практике?
3. Ошибки в js
Лучшие фронтенд вакансии @job_webdev:
1. Frontend developer
2. HTML-верстальщик
3. Frontend разработчик
Лучшие дизайн вакансии @job_webdesign:
1. Web-дизайнер
2. UI/UX-дизайнер
3. Intern web дизайнер
#лучшеезанеделю
❤2