Действительно господа, раньше я страдал от отсутствия оператора пайп "|". Без этого оператора я тупо не мог понять, как изменить ети переменные странные, а теперь как пойдет работа, как закрутиться все! Ух! Уже бегу изменять переменные, которые ждут своих изменений.
@tuku_mann4 ай бұрын
Спасибо, что поделились вашей болью, я тоже из-за этого в js не мог(
@SergeyIT4 ай бұрын
Не перезакручивайтесь только
@dmitrykisel95644 ай бұрын
Наконец-то можно работать с JS!
@barbiturat14 ай бұрын
На самом деле это очень полезный оператор. Он позволяет 1. Писать более компактный код 2. Группировать изменения связанные с одной переменной вместе, что способствует читаемости кода. 3. Уменьшить в коде число переменных и констант что способствует уменьшению числа возможных ошибок связанных с этим. Это например тот момент из за которого некоторые люди переходят на функциональное программирование.
@mikemerinoff4 ай бұрын
Напишите код, который трансформирует данные переменной, не создавая новых переменных. Если вам близок такой код, поищите работу на лиспе
@pasza4 ай бұрын
3:06 пайплайн-операторы не применяются к переменной по очереди; они вычисляют выражение, которое по итогу один раз записывается в переменную "num"; полезное нововведение
@bloodjopa4 ай бұрын
осталось сафари познакомиться с этими достижениями js
@demimurych14 ай бұрын
топ левел await - єто превращение вашего топ левел кода в генератор со всеми вытекающими: от самой большого потреблерия ресурсов по сравнению с другими возможностями js, до отсутствия єффективных способов оптимизации такого кода или крайняя сложность оптимизации таких генераторов. что абсолютно справедливо и для обычной async функции
@drak0an4 ай бұрын
Всегда на страже центрального процессора!
@user-hijjjkkbv3454 ай бұрын
Спасибо больше ,полезная информация.
@ruslan-abdullaev4 ай бұрын
И совсем ничего про новые методы Set - intersection, union, difference, etc
@iconfael4 ай бұрын
Про решетку вообще я офигел. JavaScript развивается на глазах
@funcelot4 ай бұрын
Это вообще почти Erlang, на моих глазах язык перестает быть скриптиком для написания игр fluppy bird, вообще уже что-то академическое заезжает, круто, да.
@iconfael4 ай бұрын
@@funcelot осталось добавить статическую типизацию прямо на чистый JavaScript как многие это ждут. Я даже не знаю что случится с TypeScript тогда. И вообще примут ли это разработчики?
@ruslan-abdullaev4 ай бұрын
Непонятно для чего Михаил привел этот пример, т.к. неизвестно когда это появится в языке, Record & Tuple еще на stage 2
@vasman944 ай бұрын
@@ruslan-abdullaev # не будет? Блин, тотально необходимая штука, -.clooneDeep не придется везде пихать
@user-hijjjkkbv3454 ай бұрын
Реально заметил, нет у тебя почти видео работы с кодами, всякие игрушки написанные прикольные, так разгрузочка и для начинающих тоже прикольно)
@andreysakharov62103 ай бұрын
Неизменяемые структуры это круто. А можно будет их по значению сравнивать?
@HEX_CAT4 ай бұрын
Лайк в поддержку видео❤
@nazarfilippov26364 ай бұрын
А почему мы не можем использовать метод Object.freeze() вместо последнего нововведения (#)?
@IvanSen-pv6bu4 ай бұрын
Синтаксический сахар
@РусланОсманов-с7й4 ай бұрын
полезно,это мне найболее инетересно
@AlexanderBorshak4 ай бұрын
Тянут в язык всякий мусор, скоро от JS один только сахар останется. Лучше бы поддержку типизации добавили.
@trahar4 ай бұрын
4:28, для таких случаев рекомендуют использовать for loop вместо .forEach (чё-то про оптимизации компилятора)
@TalkerTube4 ай бұрын
а можно подробнее, для каких именно случаев рекомендуют for loop вместо forEach ?
@trahar4 ай бұрын
@@TalkerTube надо в сторону оптимизаций копать, не интересовался глубоко, чё-то связано с ссылкой this, c захватом контекста компилятору сложнее обработать forEach
@bloodjopa4 ай бұрын
@@trahar forEach переделывается под капотом в for loop, разницы в скорости с 2019 года уже нет
@trahar4 ай бұрын
@@bloodjopa вроде истинно для простых случаев, зачастую бывает, что компилер на справляется с этим и оставляет как есть, лучше читать доки
@isvladxxe4 ай бұрын
крутые новые фичи ! )
@paxpax17074 ай бұрын
Какие же бесполезные фичи только не придумают только чтобы не вводить паттерн матчинг. Просто сделайте нормальный паттерн матчинг чтобы не городить простыню из 10 if операторов господи прошу. Скоро будет 10 лет как висит RFC в репозитории TC39. Люди как только не изворачиваются чтобы контрлировать обработку ошибок. Возвращают строки, енамы или булеаны из функций. Пишут простыню из try/catch. Просто сделайте паттерн матчинг хотя на уровне оператора switch. Сделайте чтобы switch умел возвращать выражение как любом другом нормальной языке, а не вот эта клоунада со стейтментом. Сделайте чтобы if тоже был выражением. Господи боже. Нам ничего больше не надо для счастья. Нафига нам эти пайплайны или тьюплы?
@mastnova267621 күн бұрын
ну ты за всех то не говори. Вот мне ниче не надо, не трогайте ничего. Не хочу ничего учить, хочу зарплату побольше. Хватит нововведений! Даешь пивасик и Бали!
@ИванЛапшин-л2в3 ай бұрын
Немного странно, что рассказывая о новинках js вы используйте сильно устаревший оператор with))
@SergeSchekhovtsov3 ай бұрын
А чем он плох, чтобы его не использовать?
@OleksiyStr2 ай бұрын
@@SergeSchekhovtsov "with" сам по себе возвращает новый массив. "Return a new array with the element at index replaced with value."
@arahnid_98444 ай бұрын
Да, эти изменения неально удобные 👍
@showing75774 ай бұрын
що за extension для vs code?)
@funcelot4 ай бұрын
А, ну если кто ничего не понял, я просто пробую писать на языке Уильяма Шекспира, и хешбенгу быть. Очень рад, что всё-таки они это сделали!
@abbze82724 ай бұрын
Осталось строгую тпизацию завезти на уровне языка и будет норм язык.
@АлексейЦ-ы4я4 ай бұрын
Миша, а Вы сейчас работаете на чистом JS или все-таки через фреймворки (библиотеку React) ?
@tarque_4 ай бұрын
когда уже весь linq перенесут в JavaScript....
@eugenepotapenko4 ай бұрын
о! Иммутабельные данные и пайплайны делают из JS почти Clojure! Очень интересный поворот. Я на clojure пишу лет 8 уже, может смогу опять писать на JS без рвотных позывов.
@Jesiksss4 ай бұрын
Ну если у тебя рвотные позывы от js, стоит сходить к врачу
@eugenepotapenko4 ай бұрын
@@Jesiksss начал писать на js в1997 - имею право. Впрочем, вы конечно охуенно разбираетесь в js, вам виднее.
@Jesiksss4 ай бұрын
@@eugenepotapenko и что должна дать людям ваша дата начала кодинга на js? Умнее вы явно не стали
@eugenepotapenko4 ай бұрын
@@Jesiksss да я вообще даун по жизни. Не то что вы )
@Jesiksss4 ай бұрын
@@eugenepotapenko думаешь, этими комментариями сделаешь себя умнее? Ну понятно, когда ответить нечего, только и остается как писать всякую хрень
@user-glory-of-ukraine4 ай бұрын
Interesting changes but when it will be relised?
@M4Lets4 ай бұрын
Давай еще больше примеров кода разных кейсов
@Стоячаястабильнаяволна4 ай бұрын
Михаил, как Вы считаете, сколько лет ещё можно будет зарабатывать на JavaScript? В своём недавнем стриме Яков Файн предположил, что лет 30.
@funcelot4 ай бұрын
Этот язык изучают в университетах, следовательно - минимум лет 30, это гарантированно
@barbiturat14 ай бұрын
@@funcelotне согласен. через лет 10 важно будет не знание языка программирования а умение грамотно ставить задачи нейросетке.
@dgvgfg4 ай бұрын
@@barbiturat1 будет адская смесь лучших практик из javascript, java и python. Основные конструкции типа массивов, циклов, аспекты и аннотации если джавист или промисов если на джаваскрипте пишешь должен знать наизусть + основной фреймворк языка. Плюс обызательно лайфкод на алгоритмы это на джун+/миддл у меня такое постоянно, я постоянно прохожу собесы и постоянно заваливаю хотя отвечаю на 80% всего что спрашивают. Лучшие практики никуда не уйдут, будет больше синтаксического сахара кому как бы не хотелось без него ну и да умение пользоваться нейронкой. Ещё думаю CI/CD сейчас + тестирование сейчас почти обязательно спрашивают на собесах. Ну на практике это отдельный человек, хотя не факт скажут вот нейронка за тебя всё пишет давай ещё и кубики поддерживай))
@АлександрБолдырев-п7ц4 ай бұрын
@@barbiturat1и как же ты будешь писать промпт нейросетке не зная языка на котором ей нужно что то написать? Это будет что то типа "Дядь, сделай красиво". Нейросетки ещё долго будут только помощниками. Но знать как с ними работать маст хэв.
@un_defined4 ай бұрын
@@АлександрБолдырев-п7ц скорее вопрос контроля того что выдала сетка стоит, задачу поставить это не самое сложное,хотя тоже навык
@BlankaSmidova-j3u4 ай бұрын
А какие методы groupBy для массивов ты считаешь самыми полезными?) я тоже недавно решил сменить сферу и выбрал курсы Skypro для этого)) долго сомневался но не пожалел))
@drak0an4 ай бұрын
спамерский коммент, накрученные лайки.
@danke16734 ай бұрын
спам коммент сгенерированный чат гпт для рекламы скайпро лол
@diggerjke4 ай бұрын
Вчера смотрел новость про то что на блокчейне Tezos X завезли js
@yuriy.kostenko4 ай бұрын
Костыли с решеткой это супер! На что только не идут люди, чтобы не делать нормальные свойства с геттерами и сеттерами и поля с модификаторами доступа! ))
@dotvkab3 ай бұрын
Медианный уровень жс-ников в одном предложении
@alekseypavlov25394 ай бұрын
Не изменяемый объект и его копия const user = Object.freeze({ name: 'Aleksey', age: 24, }) const newUser = { ...user } newUser.age = 18 console.log(user, newUser)
@whatthepeople4 ай бұрын
суть tuple и records не только в том, что они иммутабельны, но и в свойствах, которые можно легко заиметь благодаря иммутабельности - сравнение по value (а не по ссылке) за константное время, не перебирая всю структуру, и, следовательно, становится возможным следующее: const map = new Map([ [#{ x: 0, y: 0 }, 'some value'] ]) map.get(#{ x: 0, y: 0 }) // 'some value'
@barbiturat14 ай бұрын
Получается что у ClojureScript теперь нет вообще никаких преимуществ перед js.
@ivanchernenko79584 ай бұрын
Кложура все еще остается лиспом с развитой системой макросов, иммутабельностью переменных и ахуевшим количеством скобочек. Она всегда будет иметь преимущества перед жсом, впрочем как и недостатки
node 22 версии все это есть, и в проекте можно использовать, но 22 нода сейчас не lts, вряд ли нормальный человек пустит аппликейшн с 22 нодой на продакшн
@Mousepiece3 ай бұрын
@@daniyarsariev6483 понял, спасибо
@brodabro4 ай бұрын
Когда же будет метод копирование объектов
@gerda-morozova4 ай бұрын
structuredClone(obj)
@kiryakirya-sila3774 ай бұрын
А как сделать такие подсказки, как у него? Я так понимаю это какой-то AI плагин? Но как он предугадывает? Или просто это уже было один раз написано перед записью видоса, а потом AI просто запомнил и предлагает?
@un_defined4 ай бұрын
да. copilot вероятно
@sokolawp4 ай бұрын
Это codeium
@brr35344 ай бұрын
Ну с нодой конечно так себе пример для withResolvers
@CJSurv4 ай бұрын
А в тайпскрипте оно будет работать?
@ivanovchin4 ай бұрын
конечо, type script этот тот же js только с синтаксисом типов
@funcelot4 ай бұрын
immutable data structures. it is been 40 years to pass to just add this feature to ECMAScript 2024? what a nonsence. really. whole langueages were created including Erlang, Go, Rust just to have this feature as the first-class language objects, including well-known React library. Immutability of data and a way to mutate throught cloning and not modifyhing objects pass throught whole architecture patterns like distributed systems, in-memory online transaction processing, clusters and database processing, serverless, stateless systems. All of this made available just to the simple fact that we do not track modifications of exact objects in memory. We just doing f*n copies which takes off responsibility of sending events to subscribed objectst about changes in source object. that a heck a really, really old idea. I like that they finally implemented it not using whole micro-frameworks, but on a language level #. F*uck, this is best morning i've ever had since 1997 in js scripting. Thank you, you are real man! Great news, and keep going!
@barbiturat14 ай бұрын
Вообще меня конечно радует что иностранцы смотрят русскоязычные ролики.
@arthurarthur40754 ай бұрын
Прям сильно в ФП дрифует
@dkuba4 ай бұрын
Если использовать # то можно и клонировать объект получается?
@brodabro4 ай бұрын
Расскажите как? Это реально боль
@TheBoris834 ай бұрын
Вряд ли это будет глубокое клонирование. Только первого уровня
@dkuba4 ай бұрын
@@TheBoris83 ну я не пробовал, но а если ))
@barbiturat14 ай бұрын
@@TheBoris83почему не глубокое? Если теперь все объекты под капотом будут иммутабельными, то их полное клонирование должно быть практически таким же быстрым как поверхностныое. Так реализовано например в языке Clojure.
@user-glory-of-ukraine4 ай бұрын
@@brodabrostructuredClone(obj,options)
@enterprise75854 ай бұрын
А что за плагин делает такой чудесный автокомплит?
@raskoltime31864 ай бұрын
Из того что я знаю, такое может Codeium и Copilot, первым сам пользуюсь, прикольная штука, это расширение в vs code, установил и все работает
@bidlo_menetil4 ай бұрын
Codeium он использует
@michaelinuente924 ай бұрын
ох уж эти любители спагетти :)
@mikep5414 ай бұрын
JS меняется, развивается - это круто. Скоро и типы строгие возможно подгонят, и нужны в TS больше не будет. А фишки норм, мне понравились. Ждём дженерики и модификаторы:)
@owl21374 ай бұрын
Первый :))
@romandeveloper77204 ай бұрын
5:24 - та ну, не особо и экономит время-то
@aleksandrdemidov60584 ай бұрын
а зачем использовать промис, если есть парадигма асинхронного программирования async-await ... я хочу сказать, что в этом смысле промис - рудимент ... или нет? )))
@eugenefedoryachenko87934 ай бұрын
все асинхронные функции возвращают промис в js
@enterprise75854 ай бұрын
иногда нужно что-то хардкорное самому завернуть в промис
@aleksandrdemidov60584 ай бұрын
@@eugenefedoryachenko8793 ) это понятно, и пусть возвращают, но напрямую зачем ими пользоваться сейчас?
@romandeveloper77204 ай бұрын
Promise.all, например, используется для параллельных запросов
@aleksandrdemidov60584 ай бұрын
@@romandeveloper7720 вот же как к калбекам прикипели, понимаю )))
@alexandrsharp9204 ай бұрын
разработчики на Rust смеются в стороне .....
@ted_res4 ай бұрын
В 2014 не писали "нет войне"?
@KopoLPedov4 ай бұрын
не модно было
@enterprise75854 ай бұрын
Просто не обращайте внимание, он же не с Донбасса, как мы с вами, ему простительно. Человек специалист, за это его и смотрим.
@iq240-14 ай бұрын
Так так... мамкины воины возбудились и прилетели написать комментарий)
@proletarian4 ай бұрын
8 лет дамбили бамбас?
@A.K-p3e4 ай бұрын
В Украине как раз все писали и говорили, только рашистам-путинистам похрен план захвата Украины уже начали реализовывать