JavaScript заметки
8.58K subscribers
2.74K photos
4 videos
1.27K links
Регулярные заметки по практическому JavaScript. Обучащию посты позволят прокачать навыки во Frontend-разработке.

Можно почитать пока компилируется проект :)

Сотрудничество: @noname_media

Канал на бирже: telega.in/channels/notesjs/card?r=Wj7h1mbl
Download Telegram
Рекурсия и оптимизация рекурсивных функций

В первой части кода есть простая рекурсивная функция factorial, которая вычисляет факториал числа n. Она вызывает себя с аргументом n - 1, пока n не станет меньше или равно 1.

Во второй части кода представлена оптимизированная версия функции factorialMemoized, которая использует мемоизацию. Мемоизация - это техника, при которой результаты предыдущих вызовов функции сохраняются в памяти и возвращаются в случае повторного вызова с теми же аргументами. В данном случае, мы используем объект memo для хранения результатов предыдущих вызовов factorialMemoized. Если результат уже вычислен для конкретного n, мы возвращаем его из memo, иначе вычисляем и сохраняем в memo.

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

#полезное
👍2
Сообщаются ли ваши тесты?

Чтобы быстро продвигаться в рабочих задачах, необходимо иметь уверенность в том, что можно вносить изменения.
А уверенность в изменениях зависит от тестового покрытия.
С тех пор как мы это поняли, автоматические тесты стали просто необходимы. Это привело к массовому внедрению шаблонов для старта работы.
Однако начать работу недостаточно.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Аутентификация с использованием JSON Web Tokens

JWT - это стандарт для безопасной передачи информации между двумя сторонами и используется, например, для аутентификации пользователя.

#полезное
👍3
Redux-toolkit и переиспользование кода

В данной статье приведены несколько вариантов переиспользование кода в Redux-toolkit при создании слайсов, позволяющие сделать работу с ним более гибкой и удобной.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Работа с событиями клавиатуры

JavaScript позволяет отслеживать события клавиш и реагировать на них.

#полезное
👍1
Разработка браузерных игр с использованием Phaser3, React, Typescript

Думаю, ни для кого не секрет, что каждый уважающий себя разработчик программного обеспечения должен иметь в своем портфолио хотя бы один пет-проект, а лучше полноценный продукт, дающий дополнительный постоянный заработок. Предметных областей и тематик приложений великое множество, но среди них есть одна, которая заслуживает отдельного внимания — разработка своей собственной игры.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Интерактивные графики и визуализации с использованием библиотеки D3.js

Библиотека D3.js широко используется для создания интерактивных графиков и визуализаций на веб-страницах.

#полезное
👍2
Два frontend фреймворка. Два подхода

В статье сравниваются два подхода к созданию веб интерфейса пользователя.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Работа с асинхронностью при помощи async/await

async/await - это способ более чисто работать с асинхронными операциями, делая код более понятным и удобным в использовании.

#полезное
👍2
Уроки рисования красных квадратов

На этот раз покажу как парсил dom элементы и создавал для них визуальную подсветку. Разберу зачем это нужно и как сделано. Спойлер, очень просто.
Значительную часть статьи рассказываю на чём я споткнулся, пока это писал. Про высчитывание позиции блока.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Работа с массивами при помощи методов map, filter и reduce

Методы массивов map, filter и reduce предоставляют удобные средства для обработки данных в массивах.

#полезное
👍3
Интерактивный парсер web страниц

Для начала вкратце введу в курс дела. 3 года назад ко мне в голову закралась навязчивая мысль написать интерактивный словарь-помощник для чтения на английском языке. И с тех пор начались мои приключения в мире расширений для браузеров на ядре Chrome'а.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Работа с DOM

JavaScript используется для взаимодействия с DOM, позволяя изменять содержимое и стили элементов на веб-странице.

#полезное
👍1
Webpack vs esbuild — уже можно использовать в production?

Периодически я пробую разные инструменты, и если они стабильно покрывают все необходимые сценарии - включаю в свою экосистему для коммерческих проектов. С третьего подхода за последние 3 года esbuild, наконец, приблизился по функционалу к Webpack. В статье привожу проблемы, с которыми я столкнулся при миграции, и пути их решения.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
1👍1
Работа с итерируемыми объектами и циклом for...of

Цикл for...of позволяет удобно перебирать элементы в массивах, строках и других итерируемых объектах.

#полезное
👍2
Парадокс Монти Холла глазами JavaScript

Я хочу посвятить эту статью известной задаче в математике, относящейся к теории вероятности. Так же мы попытаемся решить эту задачу на JavaScript. Я сразу приступлю к условию задачи.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
Работа с формами и их валидация

JavaScript позволяет выполнять валидацию форм перед отправкой данных на сервер.

#полезное
👍6
Смерть third-party cookies. Что ждет нас в 2024?

Похоже, что в череде всевозможных инициатив по борьбе со «сторонними» куками начал проглядываться конец. Давайте разберемся, что происходит и зачем все это нужно.
Куки — браузерный механизм, который позволяет хранить данные по пользователю с привязкой к домену и затем передавать эти данные при запросах. Куку можно установить как со стороны сервера через специальный заголовок Set‑Cookie, так и в браузере прямо на странице через javascript. После этого кука будет передаваться при каждом запросе из браузера к домену.
Куки позволяют воплощать в жизнь множество как полезных, так и сомнительных механик. Из неприятных — возможность отслеживания пользователя сторонними сайтами или увеличение риска CSRF.

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью
2
Работа с условными операторами

Условные операторы позволяют выполнить различные блоки кода в зависимости от заданных условий.

#полезное
👍2
Какие методы используются для сбора данных о твоем браузере? Как собирают информацию о пользователях?

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

#статья

❤️ Прожимай реакции, если нравится такой формат

👉 Читать статью