Логово верстальщика – Telegram
Логово верстальщика
8.03K subscribers
996 photos
48 videos
4 files
1.71K links
Канал для верстальщиков с инфой о HTML и CSS, а так же JavaScript на уровне верстальщиков.

Канал на бирже - https://telega.in/c/webdevlair

По вопросам рекламы или разработки: @g_abashkin
Download Telegram
👩‍💻 Первые шаги в JavaScript: создание калькулятора

Начинаете осваивать JavaScript? Создание простого калькулятора позволит вам оценить его возможности. Вы получите базовое представление о синтаксисе JavaScript и о том, как использовать его для создания интерактивных веб-приложений.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ Чистая архитектура фронтенда

Концепции и практики, такие как SOLID, KISS, DRY и DDD, помогут создавать более чистые архитектуры фронтенда. А правила создания компонентов с учетом развития бизнес-логики позволят коду оставаться ожидаемо поддерживаемым.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ Микрофронтенд: что это такое и зачем он нужен?

В этой статье сравним разные способы организации микрофронтенда, изучим их преимущества и стратегии реализации.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Лайки, но не собаки

Вы, наверное, знаете систему «лайков» из Facebook. Люди «лайкают» публикации и рядом появляется текст. В этой задаче нужно создать текст, который должен отображаться рядом с таким элементом.

Реализуйте функцию, которая принимает массив, содержащий имена людей, которым понравилась публикация. Она должна возвращать отображаемый текст, как показано в примерах:

Пример кода:

likes([]) => 'no one likes this'
likes(['Peter']) => 'Peter likes this'
likes(['Jacob', 'Alex']) => 'Jacob and Alex like this'
likes(['Max', 'John', 'Mark']) => 'Max, John and Mark like this'
likes(['Alex', 'Jacob', 'Mark', 'Max']) => 'Alex, Jacob and 2 others like this'


Для 4 и более имен число в строке "and 2 others" просто увеличивается

Решение задачи🔽


function likes(names) {
switch(names.length) {
case 0:
return "no one likes this";
case 1:
return `${names[0]} likes this`;
case 2:
return `${names[0]} and ${names[1]} like this`;
case 3:
return `${names[0]}, ${names[1]} and ${names[2]} like this`;
default:
return `${names[0]}, ${names[1]} and ${names.length - 2} others like this`;
}
}
Please open Telegram to view this post
VIEW IN TELEGRAM
➡️ 50 лучших ресурсов с бесплатными HTML/CSS/JS шаблонами

50 сайтов, где можно скачать бесплатные шаблоны для HTML, CSS и JavaScript.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍 25 полезных HTML тегов, элементов и атрибутов, которые должен знать каждый фронтендер

В HTML есть средства для создания раскрывающихся виджетов, индикаторов прогресса и скалярных значений, переадресации на нужный URL, воспроизведения аудио/видео, сохранения форматирования кода и валидации с помощью regex.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Neumorphic Rocker Switch

Анимированный переключатель в стиле неоморфизм. Сделан на SCSS и TypeScript.

Открыть код
Please open Telegram to view this post
VIEW IN TELEGRAM
⚙️ 8 инструментов для разработчиков, которые нужно заценить в 2024 году

В 2024 году выделили восемь крутых инструментов, которые стоит попробовать каждому разработчику. Это не просто очередной список — эти штуки реально заслуживают внимания.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Sniper-CSS: как избавиться от неиспользуемых стилей

Рассмотрим на практическом примере, как сократить код приложения, избавившись от неиспользуемых стилей. Кроме того, поделимся эффективными инструментами для работы.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 6 современных возможностей JavaScript, о которых не знает большинство разработчиков

Современному JavaScript есть что предложить разработчикам для решения насущных задач. Эти 6 советов помогут писать лаконичный, хорошо читаемый и отлично работающий код JavaScript.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Поиск анаграмм

Два слова являются анаграммами, если они оба содержат одни и те же буквы. Например: 'abba' и 'baab', 'abba' и 'bbaa'. Слова 'abba' и 'abbba', 'abba' и 'abca' не являются анаграммами.

Напишите функцию, которая найдет все анаграммы слова из списка. Функция будет принимать одно слово (строку) и один массив со словами (строками). Функция должна вернуть массив всех анаграмм или пустой массив, если их нет.

Пример кода:

anagrams('abba', ['aabb', 'abcd', 'bbaa', 'dada']) - вернёт ['aabb', 'bbaa']

anagrams('racer', ['crazer', 'carer', 'racar', 'caers', 'racer']) - вернёт ['carer', 'racer']

anagrams('laser', ['lazing', 'lazy', 'lacer']) - вернёт []


Решение задачи🔽


function isAnagram(word1, word2) {
return word1.split('').sort().join('') === word2.split('').sort().join('');
}

function anagrams(word, words) {
return words.filter(w => isAnagram(word, w));
}

// Test cases
console.log(anagrams('abba', ['aabb', 'abcd', 'bbaa', 'dada'])); // Output: ['aabb', 'bbaa']
console.log(anagrams('racer', ['crazer', 'carer', 'racar', 'caers', 'racer'])); // Output: ['carer', 'racer']
console.log(anagrams('laser', ['lazing', 'lazy', 'lacer'])); // Output: []
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Стек вызовов JavaScript: объяснение с помощью иллюстраций

Как выполняются функции в Javanoscript? Каков порядок их выполнения? Что такое контекст выполнения? Отвечаем на эти вопросы с иллюстрациями.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
13 библиотек для создания крутых анимаций на CSS

CSS-анимации проще в использовании и работают быстрее, чем на JavaScript. В этом материале собрали 13 полезных библиотек, которые помогут вам без заморочек создавать крутые анимационные эффекты.


Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
🪄 25 CSS-трюков, которые должен знать каждый разработчик

Современный веб-дизайн требует глубокого понимания возможностей CSS. Мы расскажем о 25 передовых CSS-техниках, которые помогут вам создавать стильные, функциональные и производительные веб-сайты, соответствующие последним трендам.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Rollback Toggle

Переключатель с имитацией физики. Сделан на SCSS и TypeScript.

Открыть код...
Please open Telegram to view this post
VIEW IN TELEGRAM
В CSS появилось удобное центрирование объектов одной строкой кода через align-content

В 2024 году CSS получила долгожданное обновление — свойство align-content, которое устраняет сложные обходные решения для вертикального центрирования элементов. Теперь веб-разработчики могут центровать контент всего одной строкой кода.

Читать...
👩‍💻 4 крутых хука React, которые нужны каждому девелоперу

Добавь в свою коллекцию 4 полезных пользовательских хука для React. Они помогут сделать код чище, масштабируемее и упростят работу над проектами.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Как структурировать API-вызовы при автоматизированном тестировании с Playwright и JavaScript

Разберемся, как наилучшим образом настроить авторизацию и другие предварительные шаги, которые повторяются сразу в нескольких тестах - и при этом сохранить читаемость и ясность кода.

Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
👩‍💻 Код гласных

Напишите функцию с именем encode() для замены всех строчных гласных в заданной строке числами в соответствии со следующим шаблоном:

a => 1
e => 2
i => 3
o => 4
u => 5


Пример кода:

encode("hello") => "h2ll4"


Создайте функцию с именем decode(), чтобы преобразовать числа обратно в гласные в соответствии с тем же шаблоном, который показан выше.

decode("h3 th2r2") => "hi there"


Решение задачи🔽

function encode(str) {
// Создаем объект для соответствия гласных и чисел
const vowelsToNum = { 'a': '1', 'e': '2', 'i': '3', 'o': '4', 'u': '5' };
// Заменяем каждую гласную в строке соответствующим числом
return str.replace(/[aeiou]/g, match => vowelsToNum[match]);
}

function decode(str) {
// Создаем объект для соответствия чисел гласным
const numToVowels = { '1': 'a', '2': 'e', '3': 'i', '4': 'o', '5': 'u' };
// Заменяем каждую цифру в строке соответствующей гласной
return str.replace(/[1-5]/g, match => numToVowels[match]);
}

// Тестирование функций
console.log(encode("hello")); // должно вывести "h2ll4"
console.log(decode("h3 th2r2")); // должно вывести "hi there"
Please open Telegram to view this post
VIEW IN TELEGRAM