Работа с графикой: использование библиотеки Canvas для рисования и визуализации данных
Работа с графикой является важной частью разработки веб-приложений, особенно при рисовании и визуализации данных. Для этого разработчики часто используют библиотеку Canvas, которая предоставляет мощные инструменты для создания интерактивных и красочных графических элементов.
Canvas - это элемент HTML5, который позволяет рисовать графику с помощью JavaScript. Он предоставляет API для создания и управления контекстом рисования, на котором можно рисовать линии, фигуры, текст и многое другое.
В данном примере мы получаем контекст рисования Canvas с помощью метода
Мы также можем устанавливать различные свойства контекста, такие как цвет заливки (
#полезное
Работа с графикой является важной частью разработки веб-приложений, особенно при рисовании и визуализации данных. Для этого разработчики часто используют библиотеку Canvas, которая предоставляет мощные инструменты для создания интерактивных и красочных графических элементов.
Canvas - это элемент HTML5, который позволяет рисовать графику с помощью JavaScript. Он предоставляет API для создания и управления контекстом рисования, на котором можно рисовать линии, фигуры, текст и многое другое.
В данном примере мы получаем контекст рисования Canvas с помощью метода
getContext(). Затем мы используем методы контекста, такие как fillRect() для рисования прямоугольника, stroke() для рисования линии и fillText() для рисования текста.Мы также можем устанавливать различные свойства контекста, такие как цвет заливки (
fillStyle), цвет обводки (strokeStyle), толщина линии (lineWidth) и шрифт (font).#полезное
❤5👍1
Один компонент, 20+ фич, A/B-тесты: Поможет ли машина состояний?
Сталкивались ли вы с проблемой возникновения багов из-за пересечения включенных фичей в приложении? Или, возможно, была необходимость одновременно проводить большое число A/B-экспериментов в одном компоненте?
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Сталкивались ли вы с проблемой возникновения багов из-за пересечения включенных фичей в приложении? Или, возможно, была необходимость одновременно проводить большое число A/B-экспериментов в одном компоненте?
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Работа с датами и временем: использование объекта Date и библиотек для работы с датами
Работа с датами и временем является неотъемлемой частью разработки веб-приложений, особенно при работе с расписаниями, сроками и другими временными данными. Для работы с датами в JavaScript мы можем использовать встроенный объект Date, который предоставляет функциональность для работы с датами и временем.
В данном примере мы создаем объект Date с помощью конструктора
Затем мы используем различные методы объекта Date, такие как
Мы также форматируем дату и время, используя шаблон строки и значения, полученные от объекта Date. В данном примере мы форматируем дату в формате "день.месяц.год" и время в формате "часы:минуты:секунды".
#полезное
Работа с датами и временем является неотъемлемой частью разработки веб-приложений, особенно при работе с расписаниями, сроками и другими временными данными. Для работы с датами в JavaScript мы можем использовать встроенный объект Date, который предоставляет функциональность для работы с датами и временем.
В данном примере мы создаем объект Date с помощью конструктора
new Date(), который инициализирует его текущей датой и временем.Затем мы используем различные методы объекта Date, такие как
getFullYear(), getMonth(), getDate(), getHours(), getMinutes() и getSeconds(), чтобы получить текущие значения года, месяца, дня, часа, минуты и секунды.Мы также форматируем дату и время, используя шаблон строки и значения, полученные от объекта Date. В данном примере мы форматируем дату в формате "день.месяц.год" и время в формате "часы:минуты:секунды".
#полезное
👍8❤1🔥1🫡1
Как добавить несколько товаров в Shopify корзину одним кликом?
Недавно я писал конфигуратор в Shopify и решил поделиться тем, как добавить несколько товаров в Шопифай корзину. Я находил не так много материалов по этому вопросу, тем более на русском языке.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Недавно я писал конфигуратор в Shopify и решил поделиться тем, как добавить несколько товаров в Шопифай корзину. Я находил не так много материалов по этому вопросу, тем более на русском языке.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍1
Работа с локализацией: перевод и форматирование текста на разных языках
Работа с локализацией является важной частью разработки веб-приложений, особенно при создании мультиязычных интерфейсов.
Для перевода текста на разные языки в JavaScript можно использовать объект Intl, который предоставляет функциональность для локализации. С помощью объекта Intl можно форматировать числа, даты, валюты и другие типы данных в соответствии с правилами языка и региона.
В данном примере мы создаем объект Intl с помощью конструктора
Затем мы используем метод
#полезное
Работа с локализацией является важной частью разработки веб-приложений, особенно при создании мультиязычных интерфейсов.
Для перевода текста на разные языки в JavaScript можно использовать объект Intl, который предоставляет функциональность для локализации. С помощью объекта Intl можно форматировать числа, даты, валюты и другие типы данных в соответствии с правилами языка и региона.
В данном примере мы создаем объект Intl с помощью конструктора
new Intl.NumberFormat(). Мы указываем язык и регион (в данном случае 'en-US' для английского языка в США) и опции форматирования (в данном случае стиль 'currency' и валюту 'USD').Затем мы используем метод
format() объекта Intl для форматирования числа amount в соответствии с указанными опциями. В данном примере мы форматируем число в денежный формат.#полезное
👍2
Как мы создаём Squadus. Реализуем «прыжок к сообщению» в мобильной версии
Весной этого года мы выпустили Squadus — цифровое рабочее пространство для компаний любого масштаба. Решение позволяет общаться в чатах, проводить конференции, совместно работать над документами и автоматизировать типовые действия с помощью ботов.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
Весной этого года мы выпустили Squadus — цифровое рабочее пространство для компаний любого масштаба. Решение позволяет общаться в чатах, проводить конференции, совместно работать над документами и автоматизировать типовые действия с помощью ботов.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
❤2
Работа с файлами: загрузка, чтение и запись файлов с помощью JavaScript
В данном примере мы используем различные методы и события для загрузки, чтения и записи файлов.
Для загрузки файла мы добавляем обработчик события
Для чтения файла мы создаем объект
Для записи файла мы создаем текстовое содержимое с помощью переменной
#полезное
В данном примере мы используем различные методы и события для загрузки, чтения и записи файлов.
Для загрузки файла мы добавляем обработчик события
change на элемент input type="file". Внутри обработчика мы получаем загруженный файл с помощью event.target.files[0] и выводим его в консоль.Для чтения файла мы создаем объект
FileReader и добавляем обработчик события load. Внутри обработчика мы получаем содержимое файла с помощью event.target.result и выводим его в консоль. Затем мы вызываем метод readAsText() объекта FileReader, чтобы начать чтение файла.Для записи файла мы создаем текстовое содержимое с помощью переменной
fileContent. Затем мы создаем объект Blob с помощью содержимого и указываем тип файла. Мы создаем URL объекта Blob с помощью URL.createObjectURL() и создаем ссылку для скачивания файла. Затем мы автоматически кликаем по ссылке с помощью link.click(), чтобы начать загрузку файла.#полезное
🔥13❤2👍2
React 18: что поменялось
React — одна из самых популярных JavaScript-библиотек для создания пользовательских интерфейсов. В её новой версии произошли значительные изменения, и сейчас я расскажу про самые важные.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
React — одна из самых популярных JavaScript-библиотек для создания пользовательских интерфейсов. В её новой версии произошли значительные изменения, и сейчас я расскажу про самые важные.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
❤10👍3🔥2
Функции высшего порядка и их использование
Функции высшего порядка в JavaScript - это функции, которые могут принимать другие функции как аргументы или возвращать их как результат. Они являются мощным инструментом для абстракции и повторного использования кода. Рассмотрим пример функции высшего порядка, которая принимает функцию обратного вызова и применяет ее к каждому элементу массива
В этом примере
Функция
Затем мы создаем массив
#полезное
Функции высшего порядка в JavaScript - это функции, которые могут принимать другие функции как аргументы или возвращать их как результат. Они являются мощным инструментом для абстракции и повторного использования кода. Рассмотрим пример функции высшего порядка, которая принимает функцию обратного вызова и применяет ее к каждому элементу массива
В этом примере
forEach - это функция высшего порядка, которая принимает массив arr и функцию обратного вызова callback. Она итерирует по элементам массива и вызывает callback для каждого элемента.Функция
printItem представляет собой функцию обратного вызова, которая просто выводит элемент в консоль.Затем мы создаем массив
numbers и используем forEach, чтобы применить функцию printItem к каждому элементу массива. Результатом будет вывод всех элементов массива в консоль.#полезное
👍9❤2🫡2🔥1
Heretic: full stack фреймворк на основе Marko.js
В последнее время вышло так, что я по неведомой причине стал часто заниматься популяризацией Marko.js, декларативного и реактивного языка разметки, который разрабатывается eBay. С одной стороны, это связано с тем, что Marko незаслуженно часто обходят стороной, хотя он позволяет делать из коробки делать многое из того, что не получится сделать на мейнстримовых фреймворках. С другой стороны, это действительно классно, когда можно использовать обычный HTML, при необходимости расширяя его синтаксисом Marko (вроде условных операторов и циклов). Одним словом, если вы еще не видели, что это такое - посмотрите, возможно, вам это очень понравится.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В последнее время вышло так, что я по неведомой причине стал часто заниматься популяризацией Marko.js, декларативного и реактивного языка разметки, который разрабатывается eBay. С одной стороны, это связано с тем, что Marko незаслуженно часто обходят стороной, хотя он позволяет делать из коробки делать многое из того, что не получится сделать на мейнстримовых фреймворках. С другой стороны, это действительно классно, когда можно использовать обычный HTML, при необходимости расширяя его синтаксисом Marko (вроде условных операторов и циклов). Одним словом, если вы еще не видели, что это такое - посмотрите, возможно, вам это очень понравится.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍4🔥2❤1
Рекурсия и оптимизация рекурсивных функций
В первой части кода есть простая рекурсивная функция
Во второй части кода представлена оптимизированная версия функции
Таким образом, оптимизированная версия
#полезное
В первой части кода есть простая рекурсивная функция
factorial, которая вычисляет факториал числа n. Она вызывает себя с аргументом n - 1, пока n не станет меньше или равно 1.Во второй части кода представлена оптимизированная версия функции
factorialMemoized, которая использует мемоизацию. Мемоизация - это техника, при которой результаты предыдущих вызовов функции сохраняются в памяти и возвращаются в случае повторного вызова с теми же аргументами. В данном случае, мы используем объект memo для хранения результатов предыдущих вызовов factorialMemoized. Если результат уже вычислен для конкретного n, мы возвращаем его из memo, иначе вычисляем и сохраняем в memo.Таким образом, оптимизированная версия
factorialMemoized более эффективна при вычислении факториала для больших чисел, так как избегает переполнения стека вызовов, и вычисляет результаты только один раз для каждого n.#полезное
👍6🔥2
Как типизировать Vuex Store
В этой статье мы поймем, нужно ли вам типизировать Vuex Store или нет, и если вы достаточно отчаянны, поймем, как его типизировать, чтобы не погибнуть.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В этой статье мы поймем, нужно ли вам типизировать Vuex Store или нет, и если вы достаточно отчаянны, поймем, как его типизировать, чтобы не погибнуть.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍5🔥3❤2
Стрелочные функции и их особенности
В данном примере мы создали две функции:
#полезное
В данном примере мы создали две функции:
обычнаяФункция и стрелочнаяФункция, которые выполняют сложение двух чисел x и y.#полезное
👍9❤1🔥1
Кулинарный гид по Vue.js: всё о props
В этой статье разберемся, как frontend-разработчику готовить на «кухне» props. Выбирайте подходящий уровень сложности: джуны-поварята смогут лучше разобраться в работе и применении props на фреймворке Vue.js, а еще мы затронем тему валидации. Для мидлов и более опытных специалистов — настоящих шеф-поваров мы приготовили продвинутые кулинарные техники props, где можно освежить в памяти некоторые детали или решить проектную проблему, если замылился глаз.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В этой статье разберемся, как frontend-разработчику готовить на «кухне» props. Выбирайте подходящий уровень сложности: джуны-поварята смогут лучше разобраться в работе и применении props на фреймворке Vue.js, а еще мы затронем тему валидации. Для мидлов и более опытных специалистов — настоящих шеф-поваров мы приготовили продвинутые кулинарные техники props, где можно освежить в памяти некоторые детали или решить проектную проблему, если замылился глаз.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍7🔥1
Работа с локальным хранилищем
#полезное
localStorage позволяет хранить данные на стороне клиента (в браузере). Методы setItem() используются для записи данных, getItem() для чтения данных и removeItem() для удаления данных из локального хранилища.#полезное
👍11🫡3❤2🔥2
Как декораторы могут упростить разработку веб-форм
В статье я буду писать о подходе, использующем библиотеку MobX. Так что если вы в своих проектах её не используете, статья может быть не так полезна. Но вы можете рассматривать её, как возможный источник вдохновения по тому, как можно разрабатывать формы.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
В статье я буду писать о подходе, использующем библиотеку MobX. Так что если вы в своих проектах её не используете, статья может быть не так полезна. Но вы можете рассматривать её, как возможный источник вдохновения по тому, как можно разрабатывать формы.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
👍2
Работа с обещаниями
Обещания (Promises) используются для работы с асинхронными операциями и управления обработкой успеха и ошибок. В этом примере мы создаем обещание, которое разрешается (resolve) через 2 секунды с успешным результатом.
#полезное
Обещания (Promises) используются для работы с асинхронными операциями и управления обработкой успеха и ошибок. В этом примере мы создаем обещание, которое разрешается (resolve) через 2 секунды с успешным результатом.
#полезное
👍11❤3🔥2
Фонетический словарь. Пет-проект в полезное приложение
У меня есть хобби — изучение английского языка, и последнее время я увлекся фонетикой британского английского языка, но почти все словари дают транскрипцию «Королевского английского», на котором говорят, по данным Гугла, около 3 процентов жителей Соединённого Королевства.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
У меня есть хобби — изучение английского языка, и последнее время я увлекся фонетикой британского английского языка, но почти все словари дают транскрипцию «Королевского английского», на котором говорят, по данным Гугла, около 3 процентов жителей Соединённого Королевства.
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
❤3🔥2👍1
Работа с массивами и метод
Метод
#полезное
.map()Метод
.map() применяет указанную функцию к каждому элементу массива и создает новый массив, содержащий результаты операции. В этом примере мы удваиваем каждое число из исходного массива.#полезное
👍6❤1🔥1
Infinite scroll + Virtualization на примере ReactJS + RTK Query
На сегодняшний день любое уважающее себя предприятие, будь то магазин строительных товаров или компания по предоставлению услуг в сфере бизнеса, все они стремятся «выложить» свои товары и услуги в интернет. Это и понятно – мы живем в век бурно развивающихся технологий и доступ в интернет имеет более 65% населения мира, а к 2025 году это число увеличится до 6.54 млрд. Так, о чем я, всех их нужно обслуживать, всем им нужно предлагать услуги, товары и т.д. Как говорится: «На вкус и цвет – товарища нет» и правда сколько людей – столько мнений, а в нашем случае товаров и услуг. На фоне этого возникает резонный вопрос: «А как все это отобразить у меня на сайте, чтобы пользователь не ждал до следующего года загрузки страницы сайта, когда к тому времени успеют появиться еще товары, которые необходимо будет подгрузить?».
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью
На сегодняшний день любое уважающее себя предприятие, будь то магазин строительных товаров или компания по предоставлению услуг в сфере бизнеса, все они стремятся «выложить» свои товары и услуги в интернет. Это и понятно – мы живем в век бурно развивающихся технологий и доступ в интернет имеет более 65% населения мира, а к 2025 году это число увеличится до 6.54 млрд. Так, о чем я, всех их нужно обслуживать, всем им нужно предлагать услуги, товары и т.д. Как говорится: «На вкус и цвет – товарища нет» и правда сколько людей – столько мнений, а в нашем случае товаров и услуг. На фоне этого возникает резонный вопрос: «А как все это отобразить у меня на сайте, чтобы пользователь не ждал до следующего года загрузки страницы сайта, когда к тому времени успеют появиться еще товары, которые необходимо будет подгрузить?».
#статья
❤️ Прожимай реакции, если нравится такой формат
👉 Читать статью