JavaScript 2024: Temporal API - работа с датой и временем

2024 ж. 3 Мам.
6 670 Рет қаралды

Сегодня разберёмся с Temporal API новой фичёй, которая появится в JavaScript и даст возможность работать с датой, временем, календарями и TimeZone совершенно по-новому.
🔗 Ссылки:
Promise.withResolvers: • JavaScript 2024: Полны...
Temporal API Docs: tc39.es/proposal-temporal/docs/
🎓 Все курсы по разработке: purpleschool.ru
💬 Telegram канал с полезными советами:
t.me/purple_code_channel
Разделы видео:
0:00 - Введение
0:37 - О Temporal API
3:28 - Подключение polyfill
5:55 - Текущие дата и время - Now
8:48 - Преобразование из Date
9:51 - Создание Instant
11:52 - Создание ZonedDateTime
14:13 - PlainDateTime
16:05 - Расчёт дат
17:37 - Сравнение дат
19:05 - Документация
20:00 - Заключение

Пікірлер
  • 🔗 Ссылки: Promise.withResolvers: kzhead.info/sun/a6uun5dqaHN5lo0/bejne.html Temporal API Docs: tc39.es/proposal-temporal/docs/ 🎓 Все курсы по разработке: purpleschool.ru 💬 Telegram канал с полезными советами: t.me/purple_code_channel

    @PurpleSchool@PurpleSchool16 күн бұрын
  • Такими темпами может через 10 лет можно будет нормально стилизовать инпуты. А ещё через 20 скролл

    @DubinArtur@DubinArtur15 күн бұрын
    • Будет отлично)

      @PurpleSchool@PurpleSchool15 күн бұрын
    • Слишком оптимистичный прогноз))))

      @nikolassmakovsky4032@nikolassmakovsky403215 күн бұрын
    • Обратная совместимость имеет ограничения, но зато развиваться можно бесконечно долго)

      @chorny33@chorny3315 күн бұрын
    • А в чем проблема стилизовать скролл? Вот селект стилизовать проблема)

      @Furamy@Furamy15 күн бұрын
    • @@Furamyа в чем проблема стилизовать селект?)

      @victorhytrop@victorhytrop15 күн бұрын
  • Я luxon js использую в проекте, что то наподобие moment js, база одна у них. Методы тоже похожие

    @chorny33@chorny3315 күн бұрын
    • 👍

      @PurpleSchool@PurpleSchool15 күн бұрын
  • ❤❤❤🎉🎉🎉

    @HEX_CAT@HEX_CAT15 күн бұрын
    • ♥️

      @PurpleSchool@PurpleSchool15 күн бұрын
  • Luxon как метод работы с датой очень удобный

    @Vandomas@Vandomas15 күн бұрын
    • Да, но благо сможем обойтись в будущем без сторонних библиотек

      @PurpleSchool@PurpleSchool15 күн бұрын
  • я почему то думал что плюсик после времени 23:15+2 это и есть тайм зона UTC+2. То есть у меня сейчас 23:15 в часовом поясе +2. Что соответствует Москве и ряду других городов в этом поясе. Соответственно любой кому я перешлю время в формате 23:15+2 понимает какая между нами разница в часах. Так понимаю мне нужно подтянуть теорию☺️ А то получается что символ плюс это смещение, а ещё и часовой пояс указываем. Одно другому не мешает?)

    @maksikgregory4988@maksikgregory498816 күн бұрын
    • Да, я вот тоже почему-то так думал. А тут в видео получается он для даты создал произвольное смещение и поставил таймзону лондон

      @kkulebaev@kkulebaev16 күн бұрын
  • Антон здраствуйте, вы записываете курс по GO? видел вашу репу, с тасками по go, пришел к подобному выводу, если это действительно так, то когда ждать курс? и каково ваше мнение об GO?

    @deuxego@deuxego11 күн бұрын
    • Да, записываю курс и он выйдет в мае или июне. Go люблю)

      @PurpleSchool@PurpleSchool10 күн бұрын
  • const date = new Date() date.setDate(date.getDate() + 1)

    @alexander.p.kuznetsov@alexander.p.kuznetsov15 күн бұрын
  • Обычно использовал moment

    @makarasty1@makarasty116 күн бұрын
    • Он кстати больше не поддерживается

      @PurpleSchool@PurpleSchool16 күн бұрын
  • Будет ли в Instant возможность выводить относительные даты? Например, "10 мин назад" и подобное

    @KostaRMax@KostaRMax16 күн бұрын
    • Думаю можно сделать через Duration tc39.es/proposal-temporal/docs/duration.html

      @PurpleSchool@PurpleSchool16 күн бұрын
    • @@PurpleSchool ​ Да, похоже, что облегчит разбитие на юниты времени (часы/минуты/секунды) и, возможно, поможет в превращении конкретных юнитов в строку со склонением (Intl.DurationFormat, который для этого используется, пока живет только в Safari, похоже). Но формат вывода полного сообщения походу останется на людях - выводить только старший юнит ("1 день назад") или, например, несколько ("1 день и 2 часа назад"). Это, конечно, логично - это бизнес-логика конкретного приложения, но хотелось бы иметь готовый самый распространенный вариант а-ля RelativeTime из Day.js.

      @CJIu3eHb@CJIu3eHb13 күн бұрын
  • 12:28 не понял, какой еще bigint, давно ли в js появились новые типы данных?)

    @awenn2015@awenn201515 күн бұрын
    • давненько уже существует

      @Furamy@Furamy15 күн бұрын
    • Очень давно)

      @PurpleSchool@PurpleSchool15 күн бұрын
    • 😅

      @victorhytrop@victorhytrop15 күн бұрын
    • @@PurpleSchool а, это класс обычный, под капотом наверно как то реализуется, хз для чего он на фронте нужен

      @awenn2015@awenn201514 күн бұрын
    • @@awenn2015 Это не класс, а тип данных. Нужен для работы с большими числами

      @PurpleSchool@PurpleSchool14 күн бұрын
  • Привет! Можете подсказать по strapi плюс docker? Я разворачиваю strapi через docker и заполняю данными условно какие-нибудь карточки товара. Потом покупаю vps, закидываю туда свои файлы и выполняю команду docker-compose все запускается и работает, но данных которые я заполняла локально нет В чем может быть проблема и как ее решить? Есть вариант сразу на vps данные заполнять, но решение такое себе Знаю что не по теме видео, но уже долго ищу ответ и не могу найти

    @kolchinanyaa@kolchinanyaa15 күн бұрын
    • Почитай про volume docker, корректно с strapi незнаком, но возможно он хранит конфиги отдельно где то в системе, нужно в документации посмотреть, backup

      @montecristo31@montecristo3113 күн бұрын
  • В терминале copilot или что-то другое?

    @user-do4by5kp7x@user-do4by5kp7x11 күн бұрын
    • Codeium

      @PurpleSchool@PurpleSchool11 күн бұрын
  • +

    @iGotton@iGotton16 күн бұрын
    • 👍

      @PurpleSchool@PurpleSchool16 күн бұрын
  • Как называется тема vscode?

    @mrblacklord6143@mrblacklord614315 күн бұрын
    • PurpleSchool Theme

      @PurpleSchool@PurpleSchool15 күн бұрын
  • Антон, привет, почини новый сайт. Почту от старого не принимает, восстановить пароль не даёт - письмо не приходит, зарегаться заново тоже потому что эта почта уже используется. А старый урл редиректит на новую версию. Всё, я без доступа.

    @UC1C0GDMTjasAdhELHZ6lZNg@UC1C0GDMTjasAdhELHZ6lZNg16 күн бұрын
    • Напишите на contact@purpleschool.ru и мы вам вышлем ссылку на восстановление пароля

      @PurpleSchool@PurpleSchool16 күн бұрын
  • Еще бы имплементировали нормальную кастомизацию селектов, а то одни костыли разной степени паршивости

    @dimatsyhanenko9503@dimatsyhanenko950315 күн бұрын
    • Уже работают в эту сторону

      @PurpleSchool@PurpleSchool15 күн бұрын
KZhead