Современному 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
Как выполняются функции в Javanoscript? Каков порядок их выполнения? Что такое контекст выполнения? Отвечаем на эти вопросы с иллюстрациями.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
CSS-анимации проще в использовании и работают быстрее, чем на JavaScript. В этом материале собрали 13 полезных библиотек, которые помогут вам без заморочек создавать крутые анимационные эффекты.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Современный веб-дизайн требует глубокого понимания возможностей CSS. Мы расскажем о 25 передовых CSS-техниках, которые помогут вам создавать стильные, функциональные и производительные веб-сайты, соответствующие последним трендам.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
В CSS появилось удобное центрирование объектов одной строкой кода через align-content
В 2024 году CSS получила долгожданное обновление — свойство align-content, которое устраняет сложные обходные решения для вертикального центрирования элементов. Теперь веб-разработчики могут центровать контент всего одной строкой кода.
Читать...
В 2024 году CSS получила долгожданное обновление — свойство align-content, которое устраняет сложные обходные решения для вертикального центрирования элементов. Теперь веб-разработчики могут центровать контент всего одной строкой кода.
Читать...
Добавь в свою коллекцию 4 полезных пользовательских хука для React. Они помогут сделать код чище, масштабируемее и упростят работу над проектами.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Разберемся, как наилучшим образом настроить авторизацию и другие предварительные шаги, которые повторяются сразу в нескольких тестах - и при этом сохранить читаемость и ясность кода.
Читать...
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
• Изнанка электронных календарей: как работает спецификация iCalendar и как создавать .ics-файлы
• Книга: «Рецепты PHP. Для профессиональных разработчиков»
• TypeScript клиент для Wildberries API
• Настройка алиасов путей с помощью Node.js Subpath Imports в TypeScript проекте
• В помощь разработчику: 6 полезных библиотек визуализации данных
Please open Telegram to view this post
VIEW IN TELEGRAM
Ответы на пять вопросов, ставящих в тупик каждого второго фронтендера.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Рассмотрим другие (массивоподобные) структуры – стеки, очереди и связные списки.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Анимированный переключатель с плавающей рамкой. Сделан на чистом CSS.
Открыть код
Please open Telegram to view this post
VIEW IN TELEGRAM
Вы не поверите, но теперь в CSS можно определять свойства, выполнять математические вычисления и даже напрямую получать размер окна! В этой статье мы расскажем вам, как это делается.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Для ускорения веб-приложений есть множество инструментов и паттернов. Один из них — key-value система Redis. Рассказываем, как ее установить и настроить для повышения производительности и надежности.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Начинающие веб-разработчики часто сталкиваются с трудностями при выборе интегрированной среды разработки (IDE). Рассказываем, как не прогадать и не усложнить себе жизнь.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Напишите функцию, которая принимает строку из одного или нескольких слов и возвращает ту же строку, но со всеми пятью или более буквенными словами в обратном порядке (точно так же, как название этого ката).
Передаваемые строки будут состоять только из букв и пробелов. Пробелы будут включены только в том случае, если присутствует более одного слова.
Пример кода:
spinWords( "Hey fellow warriors" ) => returns "Hey wollef sroirraw"
spinWords( "This is a test") => returns "This is a test"
spinWords( "This is another test" )=> returns "This is rehtona test"
Решение задачи
function spinWords(sentence) {
return sentence.split(' ').map(word => {
return word.length >= 5 ? word.split('').reverse().join('') : word;
}).join(' ');
}
// Примеры использования
console.log(spinWords("Hey fellow warriors")); // "Hey wollef sroirraw"
console.log(spinWords("This is a test")); // "This is a test"
console.log(spinWords("This is another test")); // "This is rehtona test"
Please open Telegram to view this post
VIEW IN TELEGRAM
Производительность - важнейший аспект веб-приложения. Однако одностраничные приложения React (SPA) известны плохой производительностью. Рассмотрим 7 методов, которые помогут это исправить и обеспечить беспроблемный пользовательский опыт.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Редкий владелец собственного бизнеса не имеет собственного сайта, и неважно – крупный это или мелкий предприниматель. Однако не все знают, как такие проекты создаются и какие технологии используют веб-разработчики.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM
Несколько практических советов для улучшения качества кода.
Читать...
Please open Telegram to view this post
VIEW IN TELEGRAM