JavaScript заметки
Відкрити в Telegram
Регулярные заметки по практическому JavaScript. Обучащию посты позволят прокачать навыки во Frontend-разработке. Можно почитать пока компилируется проект :) Сотрудничество: @noname_media Канал на бирже: telega.in/channels/notesjs/card?r=Wj7h1mbl
Показати більше7 751
Підписники
Немає даних24 години
-107 днів
-7130 день
Архів дописів
7 751
Бинарный поиск
Нам нужно написать функцию, которая принимает отсортированный массив чисел
numberArray и возвращает индекс найденного числа. Если индекс не найден, тогда возвращается -1.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью7 751
Использование JavaScript Proxy для перехвата и изменения поведения объекта
JavaScript Proxy предоставляет механизм для перехвата и изменения поведения операций с объектами, таких как чтение и запись свойств.
#полезное
7 751
Типы событий в React и TypeScript
При работе с React и TypeScript вы часто сталкиваетесь с ошибками...
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Использование JavaScript Web Workers для параллельных вычислений
Web Workers позволяют выполнять вычисления в отдельном потоке, не блокируя основной поток браузера.
#полезное
7 751
Обработка событий в JavaScript: всплытие, перехват, делегирование и распространение событий
JavaScript поможет сделать веб-приложение интерактивным и отзывчивым. Важно только освоить методы обработки событий, которые заставляют приложения адекватно реагировать на действия пользователей и предотвращают неожиданное поведение.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Использование JavaScript Generators для ленивой загрузки данных
Генераторы позволяют лениво загружать данные по требованию, что может быть полезным при работе с большим объемом данных.
#полезное
7 751
Мои первые шаги в создании браузерных 2D игр на чистом JavaScript + Canvas
Статья представляет собой перевод одного англоязычного видеоурока. Если Вы хорошо владеете английским и Вам больше нравится видеоформат подачи материала — можете посмотреть видео. В статье же я буду вставлять участки кода и стараться также подробно как и автор видео — объяснять каждый свой шаг.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Сортировка массивов объектов
В примере мы создаем массив объектов
products, содержащий информацию о различных продуктах. Затем мы используем метод sort() для сортировки этого массива по полю price в порядке возрастания, используя функцию sortByPriceAscending в качестве функции сравнения. Вы можете создать аналогичные функции для сортировки в порядке убывания или для сортировки по другим полям объектов.
#полезное7 751
Как декораторы могут упростить разработку веб-форм
В статье я буду писать о подходе, использующем библиотеку MobX. Так что если вы в своих проектах её не используете, статья может быть не так полезна. Но вы можете рассматривать её, как возможный источник вдохновения по тому, как можно разрабатывать формы.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Работа с локальным хранилищем
localStorage позволяет хранить данные на стороне клиента (в браузере). Методы setItem() используются для записи данных, getItem() для чтения данных и removeItem() для удаления данных из локального хранилища.
#полезное7 751
Как типизировать Vuex Store
В этой статье мы поймем, нужно ли вам типизировать Vuex Store или нет, и если вы достаточно отчаянны, поймем, как его типизировать, чтобы не погибнуть.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Рекурсия и оптимизация рекурсивных функций
В первой части кода есть простая рекурсивная функция
factorial, которая вычисляет факториал числа n. Она вызывает себя с аргументом n - 1, пока n не станет меньше или равно 1.
Во второй части кода представлена оптимизированная версия функции factorialMemoized, которая использует мемоизацию. Мемоизация - это техника, при которой результаты предыдущих вызовов функции сохраняются в памяти и возвращаются в случае повторного вызова с теми же аргументами. В данном случае, мы используем объект memo для хранения результатов предыдущих вызовов factorialMemoized. Если результат уже вычислен для конкретного n, мы возвращаем его из memo, иначе вычисляем и сохраняем в memo.
Таким образом, оптимизированная версия factorialMemoized более эффективна при вычислении факториала для больших чисел, так как избегает переполнения стека вызовов, и вычисляет результаты только один раз для каждого n.
#полезное7 751
Как мы создаём Squadus. Реализуем «прыжок к сообщению» в мобильной версии
Весной этого года мы выпустили Squadus — цифровое рабочее пространство для компаний любого масштаба. Решение позволяет общаться в чатах, проводить конференции, совместно работать над документами и автоматизировать типовые действия с помощью ботов.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Работа с локализацией: перевод и форматирование текста на разных языках
Работа с локализацией является важной частью разработки веб-приложений, особенно при создании мультиязычных интерфейсов.
Для перевода текста на разные языки в JavaScript можно использовать объект Intl, который предоставляет функциональность для локализации. С помощью объекта Intl можно форматировать числа, даты, валюты и другие типы данных в соответствии с правилами языка и региона.
В данном примере мы создаем объект Intl с помощью конструктора
new Intl.NumberFormat(). Мы указываем язык и регион (в данном случае 'en-US' для английского языка в США) и опции форматирования (в данном случае стиль 'currency' и валюту 'USD').
Затем мы используем метод format() объекта Intl для форматирования числа amount в соответствии с указанными опциями. В данном примере мы форматируем число в денежный формат.
#полезное7 751
Один компонент, 20+ фич, A/B-тесты: Поможет ли машина состояний?
Сталкивались ли вы с проблемой возникновения багов из-за пересечения включенных фичей в приложении? Или, возможно, была необходимость одновременно проводить большое число A/B-экспериментов в одном компоненте?
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Друзья, привет!
FrontendConf нужна ваша помощь 😊⠀На основе глубинного интервью разработчиков из ведущих IT-компаний в России мы составили список основных вызовов и проблем во фронтенде в 2025 году.
Чтобы составить рейтинг наиболее интересных тем, благодаря чему мы сфокусируемся на самом полезном для вас при подготовке программы FrontendConf 2025, просим вас пройти опрос. Это займёт не более 5 минут.⠀
А в конце опроса будет архив из 370 докладов с наших конференций 🙌⠀
П.С. Будем очень благодарны, если поделитесь со своими друзьями и коллегами фронтендерами. Ведь чем больше будет ответов, тем качественнее соберем статистику и тем ценнее будет программа!
Опросник можно заполнить здесь✅
Спасибо! Знайте, вы просто космос! 💛
#реклама
О рекламодателе
7 751
Работа с графикой: использование библиотеки Canvas для рисования и визуализации данных
Работа с графикой является важной частью разработки веб-приложений, особенно при рисовании и визуализации данных. Для этого разработчики часто используют библиотеку Canvas, которая предоставляет мощные инструменты для создания интерактивных и красочных графических элементов.
Canvas - это элемент HTML5, который позволяет рисовать графику с помощью JavaScript. Он предоставляет API для создания и управления контекстом рисования, на котором можно рисовать линии, фигуры, текст и многое другое.
В данном примере мы получаем контекст рисования Canvas с помощью метода
getContext(). Затем мы используем методы контекста, такие как fillRect() для рисования прямоугольника, stroke() для рисования линии и fillText() для рисования текста.
Мы также можем устанавливать различные свойства контекста, такие как цвет заливки (fillStyle), цвет обводки (strokeStyle), толщина линии (lineWidth) и шрифт (font).
#полезное7 751
Что быстрее: Animated + useNativeDriver или Reanimated?
В этой статье попробуем разобраться, что же всё-таки работает быстрее: React-Native-Reanimated или Animated + useNativeDriver: true.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
7 751
Телеграм-канал с актуальными вакансиями для Frontend специалистов
- Свежие вакансии со всего интернета.
- Вакансии для студентов, юниоров, мидлов, сеньоров.
- Прямые ссылки на работодателей.
- Некоммерческий проект, без рекламы.
Ссылка на телеграмм-канал
7 751
Использование
eval для выполнения кода в контексте объекта
eval может выполняться в контексте объекта с помощью call. В данном случае this внутри eval ссылается на объект context.
#полезное
Вже доступно! Дослідження Telegram за 2025 — головні інсайти року 
