Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
>>1962747 (OP) Объясните плиз как сделать в VS Code фишку, когда половина экрана - VS Code, а другая половина - браузер, чтоб можно было сразу видеть результаты своей писанины?
>>1962805 → >Да, они мне ConfigurationFactory тип не запилили. А @types сделали. Ты поехавший ставить отдельный пакет ради одного генерик интерфейса? Ещё и вебпаковские типы удаляет, одна история охуительней другой просто.
>>1962903 Потому что у всех по-разному. Плюс многое зависит от того, насколько быстро ты найдешь ту методигу обучения, с которой ты максимально быстро будешь обучаться.
Пасаны подскажите как на кастомный инпут юзая Реакт сделать маску вида (\d+)\.(\d+)\.(\d+) , не ограничивая кол-во символов до того момента как точку не поставят которая в маске нужна ,я Джун джунский прошу памагити :0
The click event is raised when the user clicks on an element. It fires after the mousedown and mouseup events, in that order. это типа если нажать над или под элементом?
>>1962945 Надо версию приложений туда вписывать, а там неизвестно скок цифр будет , может 0.0.1 а может 103.5489.9038737378 , надо как то сделать, хз как , плачу в углу :(
>>1962747 (OP) Парни, как замутить подобное: сделать так чтобы некое окно для ввода сообщения увеличивалось при вводе текста для того, чтобы видеть весь набранный текст (на ванильном жс)
>>1963017 так блин, а почему он обращается к объекту this вместо объекта Event который должен передаваться как аргумент функции-хендлера? хотя тут жкьюри юзается, это уже о многом говорит
>>1962892 >какая разница между onfocus и onmouseover? >>1962944 >The click event is raised when the user clicks on an element. It fires after the mousedown and mouseup events, in that order. >это типа если нажать над или под элементом? >>1962998 >console.log('List: + ${key} +" "+${user[key]}' ); >где ошибка?
>>1963117 Это вообще другим умным словом называется: каррирование (очередная калька с английского currying). Ну а замыкания – техника языка, хуй знает что конкретного тыт ту хочешь знать.
>>1963017 1. keyup/keydown в инпутах юзать нельзя, только событие oninput 2. У этого клована окно расширится и если каким-то образом данные оттуда сотрутся (отправятся на бэк например и сотрутся), то высота останется прежней
А как собственно ооп надо использовать? Я правильно понимаю, что создаётся, например, класс, инициализируется его экземпляр, а потом на хтмл элементы вешаются его методы?
>>1963135 > было время, когда в стандартной библиотеке не было ни bind ни call ни даже apply, и мы их имплементировали вручную. Они еще до ес3 были даже, кого ты там вручную имплементировал?
>>1963375 Да я просто никогда не пробовал, а в вакансиях пишут про ооп - вот и решил, сделать калькулятор на ооп и посмотреть, вдруг это реально удобнее.
Как заставить прокси перехватывать вызовы? Пока вижу только один способ: в качестве target передавать функцию - тогда apply в хендлере работает корректно. Но это как бы немного по-уродски, если мне нужна не функция, а объект с полями, просто с дополнительной возможностью перехватывать вызовы.
>>1963369 эт jsx >>1962747 (OP) Как мне сделать так чтоб по клику из моей функции-рендера, которая мапит мои обьекты, выбранный обьект переносился в другой компонент? Я пробывал в функции инициализировать стейт и просто класть элементы в массив из стейта, но тогда все очень медленно начинает работать
Пиздец я тупой. Почему написанная мной хуйня работает? 123/10 ~ 12 12/10 ~ 1 1/10 < 1 то есть, третьей итерации цикла уже не должно быть и, соответственно, i должно быть равно 2. Но в конце программы у меня получается нужное число. Что происходит???? Заранее спасибо за ответ.
>>1962747 (OP) > Руководство для вката - https://github.com/acilsd/wrk-fet#javascript У вас там абзац устарел. > Фрилансить версталой - гиблое дело. Да и вообще фрилансить без опыта работы - гиблое дело. Да и вообще фрилансить в 2017 - гиблое дело.
Какую йобу можно написать, чтобы покрыть требования на позицию джун/премиддл в JS/Angular/Node. Сервер буду писать чисто для эксперимента, а наскиловываться планирую в Ангуляре. Нужен проект, или список задач, например: поиск данных по тегам, поиск по каким-то булевым переменным (что-то типа расширенного серча на авито), какая-нибудь йоба с сервером. Ну все в таком духе, опишите пожалуйста, а то курить документацию всю как-то не очень хочется, не вникая в сам процесс разработки. Интересует именно планомерное становление джуна, который может уже устроиться на работу и там наскиляться до сениора.
Привет бандиты. Подскажите, есть експрес, который отдает билд реакта (express.static(путь)). И всё. Гет запросы после этого мне нужны только для того, что бы обновлять csrf токен. Как сделать редирект в экспрессе? Что бы любой гет запрос, редиректил на главную страницу и обновлял вместе с этим токен? Пока что любой роут (не/) ведёт на cannot get.
Почему здесь вывело только десятки? Как в этом случае (если объявлять через var) работает инициализация? Поясните пожалуйста максимально подробно. Получается что хоть таск и запланирован при каждой итерации, значение идентификаторов подставляется только перед самим выполнением таска или что? Типа переменная i хоистнулась, но почему только последнее её значение пошло в таск?
>>1963920 for работает без задержек, он проходит полный цикл от 1-до 10 после чего в работу идет таймер, он показывает то что отработал в конце цикл - 10, у тебя стоит таймер на результат цикла, а не на сам цикл. Если хочешь что бы таймер работал на тело цикла - надо сам таймер обернуть в таймаут, учи матчасть и ваще пиздай кантора читать, там все написано
>>1963933 Да хуле там спрашивать. Сколько не был на собесах всегда спрашивали про отличия var от let. Отвечал что у вар только функциональная и глобальная области видимости а у let глобальная и блочная.
Объясните плез почему у нодовиков такие огромные зарплаты? Щас пошарился по вакансиям с разным мест, средняя за на ноду - от 200к и выше. Почему так много?
>>1963931 Зумерок тут пару тредов назад загибал что его заставляют писать var в тех легаси-частях проекта где уже есть var. Он все копротивлялся и верещал о какой-то "битве" которую ему не выиграть. Это ты? Как сосется?
>>1963943 А откуда вкатываются? Слышал, что нодовик - это как правило бекендер, перешедший с другого языка (например Java), а вовсе не вчерашняя реакт-мартышка, которая захотела попробовать себя в бэкенде.
>>1963974 Вдруг меня заебет фронтенд и захочется что-то новое, но без дрочева с другими языками. На JS же можно все что хочешь делать, это очень удобно. Но это только на первый взгляд, на самом деле ты заперт в пределах профессии.
>>1963923 Расскажи как именно он работает без задержек. Пошагово. Когда что идёт в стек, в очередь задач. Когда задачи начинают выполняться. Куда и какое значение переменной i сохраняется. Ну ты понял.
>>1963982 Ну подучи другой язык. Сам язык ты за месяц новый поучишь. Основная ебля пойдет с бэком а там что на ноде что в другой среде одинаково будешь ебаться и лишь сэкономишь месяц поскольку знаешь жс уже. Оно того стоит? Я считаю что нет.
>>1963997 Прочитай про block scope и function scope. Если коротко то все вары в глобальной области видимости кроме тех что внутри блока {} функции. А let не выходит в глобальную область видимости если внутри любого блока {} будь то функция, объект, if или for
>>1964012 Ну просто это пиздец долго, надо пересмотреть кучу видосов и статей, где говорят одно и то же, но с разными нюансами. Я надеялся что кто-то здесь хотя-бы минимально может объяснить все по шагам.
Ну типа вызвали функцию а (на пике), в стеке глобал говно и эта функция. Переменная і поднялась, в ней undefined. Идём по циклу, на каждую итерацию в і идёт значение и планируется таск с текущим значением... Так по крайней мере выглядит. Но на деле всё не так, а как? Откуда в запланированный таск идёт значение переменной?
>>1964026 Я это понимаю, но мы ведь планируем таск с текущим значением, разве нет? Если нет, то на каком моменте в таск подставляется значение переменной, разве оно не замыкается?
>>1964063 Вот именно что ты тупой. Изначально ты говорил про use strict. И выяснилось что это пиздеж и глобал скоуп есть в use strict. Едем дальше. Модули. Глобальная область видимости и там есть поскольку: When a module system is enabled it’s harder to make global variables, but one can still do it. By defining a variable in HTML, outside any function, a global variable can be created
When a module system is enabled it’s harder to make global variables, but one can still do it. By defining a variable in HTML, outside any function, a global variable can be created
>>1964079 >>1964082 >ряяяяяя игнорируем неудобный пост Мы вас перезвоним кек
When a module system is enabled it’s harder to make global variables, but one can still do it. By defining a variable in HTML, outside any function, a global variable can be created
>>1964072 >Since the code is a module, not a script, all the declarations will be scoped to that module, not globally visible across all scripts and modules.
>>1964114 >Ряяяяя врети ваша консоль неправильная вы все врети
>>1964118 Эхехехехех When a module system is enabled it’s harder to make global variables, but one can still do it. By defining a variable in HTML, outside any function, a global variable can be created
>>1964286 == и === при сравнении объектов в js проверяет являются ли они одним и тем же объектом а не сравнивают одинаково ли их содержимое. Для этого есть deepEqual из lodash
В html вставлен скрипт: <script src="https://zalupen.com/src"></script> (zalupen.com это другой ресурс) Если при исполнении этого внешнего скрипта падает какая-то ошибка, то как мне ее перехватить?
>>1964315 >Да там чухонцы одни в этом Яндексе! Сброд пидорасов, кто вообще туда пойдет? >Да Гугол ваш это кибергулаг ебаный, там пидорасы да BLM одни, нахер их >Microsoft - подсосники Гейца, пусть Виндой своей сами обмазываются, 2021 год на дворе кому они нужны?! >Пейсбук ибаное гавно на похапэ написанное! Даже если оффер мне дадут, пошлю их нахер! >"Pro Massive BioTech Enterprise (ИП Дрищукин) ищет молодых амбициозных программистов к себе в стартап! Оплата сдельная, первые 2 месяца работаем за идею, потом как получится!" БЛЯ ВОТ ЭТО Я ПОНИМАЮ ПЕРЕДОВЫЕ ТЕХНОЛОГИИ!
Надо в VSCode переключаться время от времени между вёрсткой HTML+CSS+JS и кодингом на питоне (пишу код в Вскоде питоновский).
Нет варианта настроить так, чтобы я мог переключаться между этими задачами (HTML и Python) и у меня настройка конфигурации от одной не цеплялась к другой.
Или надо всё таки каждый раз папку менять когда хочу поменять "платформу"?
>>1964330 Есть дохуя конторок вроде Evil Martians, которые нормальный код релизят и беспокоятся над качеством кода. Еще и руководства выпускают в паблик и опенсорс двигают. И зарплатка там 5-8к изи будет. Яндекс, гугл и прочее дерьмо - днина без этических убеждений и работают там пидорасы буквально.
>>1964580 Через второй аргумент connect'а mapDispatch, сначала ты импортиш акшонкреатор через import потом передаешь его в mapDispatch, далее компонент уже получает "пережеванный" редаксом твой ac, через пропсы
Антуас, расскажи как правильно хранить компоненты в реакте. Суть в чем: есть пользователь и он может создавать из заранее подготовленных компонентов набор. Каждый компонент сам по себе тоже настраивается. Так вот вопрос в том как правильно хранить его набор с настройками на серве, в жсоне? Т.е. как конвертить компонент в жсон и обратно, туда и обратно, туда и обратно ...
>>1964590 А как ещё собираешься хранить данные за пределами оперативной памяти? Даже с БД ты в любом случае что-то читаешь на диске, а потом конвертируешь в джейсон и обратно на любой пук клиента. В твоём конкретном случае разве что только строгое разделение состояния между "пользователь редактирует компоненты" и "пользователь подтверждает изменения" поможет. Соответсвенно первое состояние исключительно на клиентской стороне пропукиванием локалстораджа существует и только при втором идёт запрос в бэк.
>>1964607 Действительно. Только вот если у меня поддержка 1000 компонентов, а он использует 3. Мне надо всю 1000 импортировать, чтоб применить к нужному настройки и отрендерить....или есть способ как-то динамически ипорт только нужных компонентов сделать?
>>1964418 >днина без этических убеждений Правильно я понимаю, если тебе придет оффер из этой "днины" то ты даже на собес не пойдешь? М? Самому себе пиздеть-то не зазорно?
>>1962747 (OP) Тут слышал что в том же Реакте пишут в функциональном стиле но вот чего не понимаю: как блин вообще можно писать крупные проекты (где хотя бы несколько модулей на 200+ строк и несколько сущностей) без ООП? КАК? Ты же запутаешься пиздец в своих сущностях и то что из чего вызывается
>>1964641 Конечно не запутаешься, надо просто запомнить всю цепочку наследований и все переопределения методов в этих цепочках. Всё это смазывать выражениями типа this.props.hui без каких-либо деструктуризаций.
>>1964655 Делаешь ключи просто строчки cat, dog Потом джойнишь ключи через | и крафтишь одну регулярку (joined)s? И потом по матчу выбираешь обратно значение.
>>1964686 Ну да, никто не запрещает. Но мы ж программисты, нам анус распидорасит даже если мы комменты на русском начнём писать. Даже если проект строго на российский рынок, в текстовках забит русский язык и делает его только русскоязычная команда.
Антуас, как это технически реализовано? Берется свойство объекта и сразу же присрата шаблонная строка. Этож вроде обычный js файл. это styled components
Могут взять Ангуляр разработчиком, если я умею верстать и работать с Ангуляром, кроме RxJs и работы с сервером, если всю тренировку проходил только на переменных, которые сам создал? Если нет, то как подтянуть базу, чтобы не завалить собеседование?
Прочитал тут ydkjs, ожидал увидеть что то тяжелое трудночитаемое, в итоге все тоже самое что и кантора только проще излагается и интереснее примеры, ну и акцент только на полезных вещах которые пригодятся в практике, а не на всем подряд что есть в js.
Я так понял что если я легко читаю ydkjs, то уже можно приступать к изучению фреймворка?
>>1964762 Да. Если есть понимание основ джс, то фреймворки не проблема. См. выше скрин чела, которые спрашивает почему if else не работает. Джса не знает, зато костыли на реакте пытается писать уже
>>1964826 Кто-то должен остаться непродажным. Иначе весь мир погрязнет в монополии капиталистического дерьма. Если уж я битард-аутист, то почему бы не я.
>>1964838 >не продаваться Откуда вы блин беретесь?.. "Не продается" чувак который в свое время сам же вызвался чтобы продать жопу ФСБшникам? Он известный инцел и черт, всерьез думать что такой чел "не продается", значит иметь ICQ 50
>>1964836 >в монополии капиталистического дерьма Либерального ты хотел сказать? >>1964838 Братишка, тебя даже вчерашний шторм не разбудил. Телеграм теперь с радостью делится инфой с фсбшниками, если окажется, что ты дохуя террорист. >>1964841 >Он известный инцел и черт, всерьез думать что такой чел "не продается" Охуенные истории. Как раз женатики моментально и продаются, у них ведь жена, дети, кредиты, РАБотка и всё это мигом улетучится, если они по линии партии не будут ровно шагать.
>>1964838 Ну так-то телега то еще дерьмо. В идеале подобные чятики/соцсети должны быть основаны на технологиях вроде gun.js, но лучше, чтобы на тайпскрипте и с компилятором тайпскрипта и собственная минималистичная распределённая файловая система, для файловой и kv бд
>>1964839 А еще мои решения могут быть некорректными. По этому даже принятие решений должно быть максимально децентрализованным и оторванным от конкретного человека. И основанными на регламенте, каких-то базовых идеях и принципах принятия решений. Все эти проблемы давно известны и обоссаны.
>>1964943 >на технологиях вроде gun.js, но лучше, чтобы на тайпскрипте и с компилятором тайпскрипт Чиво блять?) тыскозал? Пиздец, когда дети уже научатся что стек технологий это лишь инструмент и перестанут совать свои must have вскукареки куда ни вздумается
>>1964955 Проиграл с шизика. У децентрализованной либы должна быть одна кодовая база под всё, чтобы хэши совпадали и можно было устраивать проверки на подлинность.
>>1965115 Лол, если ты полез в семантику, то нет. ExpressionStatement нужен сверху чтобы Expression в Statement переделать. В говнокоде выше такового и нет.
Есть приложуха на реакте, руками с нуля собранная (не через create react app), есть папка public и в ней img с картинками. Картинки работают только если указать полный путь, т.е. C:/zaloopa/idiNahui/public/img/pizda.jpg. Как сделать так, чтобы картинки работали при относительном пути, сейчас путь просто дописывается к localhost т.е. localhost:1428/img/pizda.jpg, и естественно, ничего там не находит. И еще вопрос: если eslintrc лежит не в src, а, например, в config, то eslint plugin для вебпака начинает ругаться на отсутствие файла конфига, в ридми плагина на гитхабе искал как указать местоположение конфига, но нихуя не нашел.
Очередной залётный вкатун на связи. На какой паек можно рассчитывать после задротства вашей хуйни?? Если серьезно, то стоит ли вкатываться, если я работаю на заводе получаю 45к на руки? Через сколько я смогу выйти на походу за? Я не тролль.
Как лучше всего реализовать очередь из неизвестного количества обсервабл? Пример нахуя: дженерик форма, которая не знает что в ней, должна пульнуть beforeSubmit, и дождаться, чтобы все, кто на это подписался, отработали, и дали добро. Как я сделяль: сервис с одной обсерваблой (beforeSubmit) и пустым массивом обсервабл, все желающие компоненты добавляют мердж своих обсервабл с beforeSubmit в массив сервиса, форма подписывает свой сабмит на мердж этого массива, а по нажатию кнопки пуляет beforeSubmit. Это нельзя как-то сократить до одной?
>>1965153 >через сколько я смогу выйти на походу за? Год после начала работы. 3 года после начала вката. >задротства вашей хуйни Но ты не вкатишься, так как охуеешь от объема "хуйни" которую нужно будет изучить. Без искренней тяги и удовольствия это маловозможно.
>>1965154 >>1965150 >>1965115 >>1964776 Почему я нихуя не понимаю о чем вы спорите? Почему тут >>1964747 эта хуйня не так if (cart.lenght > 0) { cart = <CartEmpty /> } else { cart = <CartFilled /> } сделана?
>>1965125 Если не через реакт апп, то алиасы и пути указываются в конфиге вебпака, а с ассетами обращаешься исключительно импортами, которые обрабатываются соответсвующими модулями ассетов. >>1965129 В скобках твоя мамаша. >>1965176 Ты в своём выражении нихуя не возвращаешь, а jsx требует возврата значений.
>>1965200 >сайты если надо не SPA и не пыха Если не SPA или не соевый стэк, то сайтики без пыхи бесмысленно делать. >Ебашить шаблоны и сервить питоном, нодой? Как ты ещё странички на своём сайтике собираешься отдавать?
>>1965236 Ниухя не понятно в вашем тайскрипте, но тут единичный случай описывается как я понял. Но с окончанием s это я для примера придумал
На деле там ситуация когда слово cat может быть в виде cåt căts cât или cåts
Поэтому я и подумал, чтоб сразу были ключи в виде универсальных регулярок, которые ловят каждый случай
Или, например, вообще прдставим что вместо обычных слов прилетает в первый раз телефонный номер определенной структуры (+7-777-777-77-77) - в таких случаях должен отдаваться всегда красный цвет
Вторым прилетает какая нибудь дата в виде дд-мм-гг - всегда должен отдаваться желтый цвет
Прилетает ip адрес - зеленый цвет
Прилетает ссылка - оранжевый цвет
Т.е у меня, например, уже есть готовые регулярки для каждого подобного случая и я просто хочу организовать наименее всратый шаблон, который обрабатывал бы эти данные
>>1965154 Ты не видишь разницу между Expression и ExpressionStatement? Expression – это не Statement. EpresssionStatement – это Statement. Грубо говоря Expression отбитый ; или переносом строки.
>>1965300 Во-первых если ты делаешь словарь, то юзать надо не объект, а Map, и ключи к нему могут быть хоть из конской залупы. Во-вторых хоть че ты юзай, но без доп обработки у тебя не будет получения результата в одно действие - так что разницы между регуляркой в ключе или строкой абсолютно нет.
>>1965300 Ты просто наркоманишь свойства/значения. В твоём случае цвета - свойства, а разнообразные строки - их значения. Твой парсер должен анализировать входящие строки и присваивать их к нужным цветам в зависимости от результата. Вот парсер как раз и будет всё это дело регулярками прогонять, а не через for in по свойствам объекта.
>>1962747 (OP) Пытаюсь решить еженедельную задачку Литкода, но не все тест кейсы проходят. Задача дефолтная на самом деле. Даны номиналы монеток, нужно используя наименьшее число монет набрать нужную сумму
>>1964629 Нормальные люди и не пишут. Реакт - это как вба в экселе, у них задача сделать все быстренько самому за 1 раз пока ты все в голове держишь, а дальше работа сводится к простейшим правкам, которые может сделать даже секретутка.
Вебпак после билда выкидывает все в папку билд. Можно как-то сделать так, чтобы жс файлы выкидывало просто в /build, css в /build/styles, картинки в /build/imgs?
>>1965365 Для CSS нужно пользовать MiniCssExtractPlugin, который всё сам расставит, главное его в модулях скормить. output.filename отвечает за конечные пути скриптов. output.assetModuleFilename - за всё остальное. Разные сорта ассетов можно пердолить в module.rules.{}.generator.filename
>>1965670 Какой блять вар? let есть на все случаи жизни
>>1965667 >константы Верстала, ты вообще в курсе что такое константа? Константа подразумевает также иммутабельность данных а не только невозможность юзания блядского переприсваивания повторяю на всякий случай еще раз: это ЕДИНСТВЕННОЕ отличие const от let
>>1965678 >Константа Для этого она и была создана, что бы зарезервировать имя константы что бы тупорылые "ооп"эшники не срали слишком часто себе в штаны и не засирали stackowerflow
Посоны, поясните плз. Вот допустим метод entries() returns an iterable over entries encoded as [key, value] Arrays. For Arrays, the values are the Array elements and the keys are their indices. For Sets, each key and value are the same – the Set element. но ведь next в итераторе выбрасывает результат в формате return { value: any, done: boolean }; Откуда там берется еще и ключ?
>>1965311 Ты наркоман что ли? Во-первых как ты собираешься делать querySelector до того, как у тебя появились дом элементы? Во-вторых ты просто ебаную дичь написал. От начал и до конца. Сначала бери уже готовые проекты и пробуй в них изменения вносить, но только по мануалам и используя уже устоявшиеся конструкции. Ближайшие месяца так 4 придется только этим заниматься, пока не начнешь понимать что к чему. button = addEventListener. Вообще охуеть.
>>1965678 >Какой блять вар? let есть на все случаи жизни Так let для педиков, которые не могут уследить за скоупом если интерпретатор не стучит им по рукам.
>>1965678 >пикрил const val foo = some в котлине это const foo = freeze(some) в js. val foo = some в котлине это const foo = some в js var foo = some в котлине это let foo = some в js
Строго говоря такое поведение не только в js и котлине имеется, оно удивляет только вкатунов, вчера родившихся. В джаве это final поля, в c# это readonly - всё это модификаторы неизменяемости только ссылки на данные, но если данные ссылочного типа, то по этой самой ссылке сами данные могут меняться.
Если бы js не был под грузом требования обратной совместимости, то при вводе новых модификаторов поступили бы просто - var сделали бы block scoped, а let'у бы дали текущее поведение const.
Но это сломало бы старый код, даже при условии использования строгого режима. Был шанс, ввести такое поведение с введением es-модулей, которые гарантированно не исполняются легаси-движками, но было слишком поздно, к тому моменту все уже ввели.
В целом, никакой вины комитета тут нет - была задача ввести изменяемые переменные с блочной областью видимости, и неизменяемые. Их надо было назвать.
Стояли предложение вместо const ввести те самые final и readonly уже устоявшиеся в других языках, но в итоге сошлись на const, и хорошо.
То поведение о котором все негодуют и которого почему-то ожидают - априори не могло быть введено на этом уровне - это ниебический оверхед, потому что у ТОГО САМОГО НАСТОЯЩЕГО CONST поведение deepFreeze - у вас бы каждое объявление константы с объектом в качестве значения имело бы сложность больше, чем самый толстый хуй, что вы сосали. Учитывая прототипную модель наследования - это вообще в целом невозможно - потому что У ТОГО САМОГО НАСТОЯЩЕГО CONST прототипы тоже должны фризится, внезапно.
В целом, мало кто понимает, что жс в браузерах именно жс, а не какой-то другой язык, потому что веб обязан быть обратно совместим.
>>1965719 Наверное потому что умножение - это просто сокращенная запись сложения и запись "abc"*2 ничем не отличается от "abc" + "abc"? Совсем жопаскриптеры охуели, на нормальные языке ебало раскрывают из-за умножения строк нахуй.
>>1965727 Потому что в первом случае ты говоришь интерпретатору "вот тут у меня два совершенно разных типа, но я хочу их скомбинировать хуй пойми как, сделай приведение типов за меня и скомбинируй как получится ок да?", и если интерпретатор не шлет тебя сразу же нахуй с такими запросами, то получается жопоскрипт. А во втором случае - это просто shorthand запись функции multiply(string, n). Постыдился бы высирать свои шизоидные сравнения уровня "и там и там число и строка, так что записи одинаковые".
>>1965736 Что значит хуй пойми как? Кому хуй пойми? Тебе? Ты что тупой? Не понимаешь что такое конкатенация и каким образом происходит приведение типов при ней?
>>1965736 >вот тут у меня два совершенно разных типа, но я хочу их скомбинировать хуй пойми как, сделай приведение типов за меня и скомбинируй как получится ок да?
лоооол. то есть в одном случае ты понимаешь что 'string' * 2, это неявная запись string.repeat(2), а во втором случае, что string + 2 это запись 'string' + str(2) не понимаешь? как называется эта болезнь?
>>1965768 >Неприязнь авто кастов >мимо тоже болею Ты ее постоянно используешь, как минимум в условных выражениях. Потому что к булу явно ты ничего не приводишь.
>>1965784 1. Гитхаб не единственная метрика, чухонец 2. Даже если смотреть только по манязвездам то петухон всегда на 2м месте и отстает от жопаскрипта незначительно
>>1965758 Такой же, какой должен быть у функции repeat("abc", -10) - ошибка аргумента. >>1965765 Потому что второй случай - это не просто запись append("abc", something), работающая с конкретным ограниченным интерфейсом, это ебаный кривой комбайн, который пытается перемолоть все - от undefined + undefined до {} + new Date(). Как он будет работать в каком конкретном случае ты не скажешь никогда в жизни. Ты же как и подобает жопоскрипт дурачку, виляешь жопой и подменяешь понятия. В руби string 4 - это обычный вызов метода String#, который ты можешь объявить для любого класса, в жопоскрипте something + somethingElse - это встроенный в язык низкоуровневый оператор, в который напихали столько костылей, что никакому инвалиду не снилось. Сравнивать их и говорить, что это одно и то же может только абсолютно необразованный жопоскриптер.
>>1965811 >Потому что второй случай - это не просто запись append("abc", something), работающая с конкретным ограниченным интерфейсом, это ебаный кривой комбайн, который пытается перемолоть все - от undefined + undefined до {} + new Date(). Алё, у тебя "понятный алгоритм" обсирается при нецелочисленных числах.
>>1965824 >>1965829 Прикольно, особенности реплов. В дебаггере хрома это распарсилось в пустой блок и унарный плюс, в ноде как объект + массив. Кажется хром тут более прав. Если завернуть в выражение, то оба парсят в бинарный плюс. Наверное нодовский репл это как-то по-уебански эвалит, тупо обернув в console.log например.
>>1965828 Мы говорим про умножение строки на число, про повторение действий ты уже сам нафантазировал. >>1965830 Не забудь написать простыню обработки типов к своей "простой и понятной" функции тогда, так как уже обсираешься при малейшем отходе от своего нафантазированнного сферически-вакуумного кейса.
>>1965868 >Мы говорим про умножение строки на число, про повторение действий ты уже сам нафантазировал. Расскажешь, что именно такое умножение, если не повторение действия(сложения), гений? >Не забудь написать простыню обработки типов Написал, держи: raise ArugmentError.new('hui tebe a ne umnojenie') unless n.is_a?(Integer)
>>1965868 >Не забудь написать простыню обработки типов За то какая функция будет вызвана оператором отвечает сам питон. Если для тебя if type(x) != int: сри экзепшонами простыня... ну хуй знает
>>1965878 >На собесах требовался Хуй знает, месяц ищу работу, с десяток собеседований прошёл, только на одном спросили что-то там про дженерики (но это пиздос а не собес был). На остальных: >Знаешь? >Ну да >Ок, вот задачка. Пиши на ваниле чтоб не ебаться с типами да вебпаками На работе да, везде тс кроме одного оффера. Но на собеседованиях и спрашивать то нечего.
Как в реакте можно преобразовать строку в реакт компонент? Например можно передать в dangerouslySetInnerHTML строку, и она распарсится в html. Но реакт компоненты таким образом не сработают. Есть еще html-react-parser, но кажется оно тоже работает только с нативным html. Так вообще можно сделать в теории, или я хуйню придумал? С сервера приходит только хтмл для статей, потому что они разные все там, и я добавляю им стили. Но проблема в том, что некоторые элементы там это именно реакт компоненты со своей логикой. Может быть реакт компонент можно как-то вызывать айдишками или классами еще?
Собираюсь использовать модульный scss в реакт-проекте. Проект микроскопический, не хочу тащить всякие реактстрапы и материалы. Норм будет если у меня вся верстка на модульном scss и один маленький css файл? Ну типо без этого совсем пососно будет. Можно, конечно, засунуть все что должно было бы быть в css файле в scss модуль для app. Но нужно ли?
>>1966072 Ну блять я и собираюсь делать на модулях. Проблема в том, что будет 15 модулей scss и один css. Это не говно? Я и спрашиваю. Это норм так делать или нет? Или мне css из этого одного модуля запихнуть в какой-нибудь scss модуль и не париться, что фактически это не scss.
>>1966082 scss - это надстройка на css синтанксисом, любой валидный css так же будет валидным scss. А импортировать в файлах ты и подавно можешь что угодно, хоть .css, хоть .scss хоть .sass
>>1966117 Да мне это все ясно как. Вопрос касается исключительно того, это нормальная практика или нет? Не будет это выглядеть как лютое говно? Я хуй знает как объяснить. Вот ты делаешь проект на джаваскрипе. И тут хуяк, внезапно 3 модуля написанных на тайпскрипте. Работает? Работает. Вопрос в том, это норм вообще или нет?
>>1966122 Но у тебя же все будет на scss, это норм. Вот если бы ты делал половину на стайледах, а половину на css и еще немношк инлайнил, вот тогда было бы не норм
>>1966122 "Норм" определяется только твои контекстом и целями, о которых ты не сказал ни слова. Никто не будет гадать, почему тебе там в голову стукнуло иметь один css файл и 14 scss.
Подскажите, когда на сервере используются всякие ивент эмиттеры и/или вебоскеты Нужно создавать экземпляры данных сущностей на каждый новый запрос или по одному экземпляру глобально?
Подскажите, пожалуйста, где можно попрактиковаться в браузерном джаваскрипте. Задания, чтобы давалась готовая верстка, а тебе надо было докрутить всякие выпадающие меню, слайдеры и прочую интеракцию с пользователем. Только не предлагайте что-нибудь свое с нуля писать, от css уже тошнит, а у меня когда пробовал с нуля писать процентов 80% времени именно верстка и занимала(
>>1966416 >а тебе надо было докрутить всякие выпадающие меню, слайдеры и прочую интеракцию с пользователем Без бизнес-логики пердящие меню делается без жс.
>>1966416 Зайди на рутрекер и набери в поиске vanilla javascript (или js) projects или просто javascript (js) projects. Там есть раздачи, где пилятся по 30-50 небольших проектов. Может что-то оттуда тебе подойдет.
Напугали тут что будут на собесе олимпиадные алгоритмы. Чего б вздрочнуть из известных задач чтоб хотя бы универские лабы вспомнить и типовые какие-нибудь алгоритмы заучить? На вскидку придумал: Переворот дерева, покрас графа, задача коммивояжера и поиск пути в целом, А* например.
случайно стал лидом фронтенд отдела предыдущий лид уволился и оставил меня а я не то чтобы прям синьер помидор
есть один проект react+ts+graphql состоит из ядра и "тем" клиентов со стилями все понятно, мы можем переопределять стили для разных клиентов без особых проблем
проблема с переопределением верстки На данный момент решена прокидыванием и заменой компонентов через контекст в "темах клиентов"
так-же остро стоит проблема переопределения логики: компоненты мы можем заменить в рантайме да, но вот логика в redux одна на всех и если кому-то потребуется ее изменить, возникнут проблемы ( либо мы будем в мастере добавлять клиентозависимую логику в редьюсеры либо хз че делать вообще )
щас заметил что скорость разработки дико упала и думаю насколько идиотская затея если я сделаю ветки master clientA-master clientB-master
и сразу прям в приложении буду переопределять и логику и компоненты и все такое а потом с каждым новым релизом мастера просто мержить все это говно в отдельные ветки?
>>1966514 Охуеешь разные ветки поддерживать, так как они со временем все сильнее отдаляться друг от друга будут. Гит конечно децентрализованный, но только в том смысле, что ты можешь форкнуть код и независимо от источника пердолить свой локальный форк до посинения, а не хуярить несколько отдельных веток сразу.
>>1966520 >>1966514 >>1966517 Слишком мало информации, ящитаю. Очень часто две ветки делают через //m. и раздают, нормальное решение. Если денег дохуя. Ничего страшного в этом нет. Отдельные компоненты для клиентов впринципе тоже неплохо, если по объему их будет не так много.
Аноны поясните за typescript как сделать тип объект? const a: object = {} a[0] = 0 //Property '0' does not exist on type '{}' Мне нужен объект с неопределенными свойствами. Но не пустой. Я могу конечно использовать any, но он включает и примитивные значения. Либо { [key: number]: any, [key: string]: any } Но неужели нет ничего более элегантного?
>>1966520 Для такого тебе нужен слой абстракции. В ООП подходе например у тебя один класс с базовой реализацией и интерфейсом, а его наследники уже свою логику дописывают. В одном месте где-то инстанциируется нужная версия класса, а потом со всеми экземплярами работа идёт изоморфно. Если у вас там дрочат на функциональные компоненты и аггрегацию вместо композициии, то обмазывайся интерфейсами – то же самое будет, но больше церемоний. Полиморфизм можно в хуки унести ещё. >>1966531 Record
А и еще вопрос допустим я делаю объект с определенными полями const b: {a:string} = {a:"a"} Но TS не дает мне даже сделать проверку. c = b["x"] ?? 3 TS вместо того чтоб понять что "c" всегда равен 3. Выдает ошибку что свойства "x" нет. Как сделать тип для которого такое обращение не будет вызывать ошибки?
Вчера начал вкатываться в js vanilla (хорошо затраллили сайтом, я несколько раз 0 байтный файл перекачал пока не дошло) ради пердолинга своей тестовой html странички.
Вопрос:
Есть в css класс у div "switchable". Можно этому классу прикрутить методы? Чтобы найдя его через
element = querySelector("div.switchable") я мог делать: element.delete() element.moveup() element.movedown()
>>1966540 > две? Повезет если их меньше десяти будет Сам ответил на свой вопрос. Либо отдельные компоненты и абстракция над, либо сосать. Поддерживать три ветки уже проблемой будет, особенно если в них нахуярят своей логики. Как анjн советовал построй слой абстракции над этим дерьмом и всё. Не за зря же тимлидом стал. Почти архитектор!
Ребят кто-нибудь знает как сделать в настройках prettier чтобы в блоке кода ifelse else переносилось на следующую строку. То есть вот так: if() { код } else {}
>>1966543 Ты ничего не прикручиваешь к css классу, наркоман. Эти методы прикручаются к HTMLElement, инстанс которого возвращается селектором. Тут только или свой каштомный элемент пердолить, или вынести эти функции в отдельный модуль и вызывать их обычным способом.
Сап. Хочу сделать регистрацию/аутентификацию/авторизацию в ручную на стеке js, express, pgsql. Для начала хочется из чего то абстрактного сделать блок схему для того что бы наглядно понять как писать логику, для этого накидал в фигме предположительно то что мне надо. Вопрос: на сколько хуево я обрисовал ситуацию в прикл?
Есть функция, которая вызывается после события. В ее начале я вызываю e.preventDefault() Могу ли я при некоторых обстоятельствах, каким-то образом в конце функции отменить этот preventDefault(), объявить что теперь нужно начать стандартную обработку события?
Ребята просрал видос где чувак обьясняет асинхронность, видос на английском с переводом, тоший чувак на сцене с ноутом обьясняет принципы web api event loop показывает какой то сайт который показывает как работает асинхронность. Скинте а?
>>1966833 Ты таким образом при каждом ререндере новый ключ получаешь. А для пользователя отдельного он не должен меняться. Заверня его в переменную а потом прокидывай в Key
>>1966991 ЧЕРНАЯ МАТЕРЯ ЖИЗНИ ФЛОЙД ГЕРОЙ 21 ВЕКА! Пиздец конечно, ебанный нарк, ублюдок и мразь - герой нашего времени, который угрожал пистолетом беременной женщине, чтобы добыть денег на очередную дозу. Все кто поддерживает БЛМ сознательные ублюдки и подонки, желающие развалить цивилизацию и скатить её в хаос с говном и репрессиями. Гоните это говно подальше от себя, к борьбе с расизмом это не имеет никакого отношения, и скорее напротив, является проявление настоящего расизма на уровне 3Р
Что можно использовать такого крутого и классного, что дает TS? Я написал на нем 2 проекта, но по сути использовал его только для типизации. И как-то писать в резюме из-за этого "знание ts", наверное рановато? Какие фишки из него вообще нужны/юзабельны?
>>1966992 >const euros = [29.76, 41.85, 46.5]; >const average = euros.reduce((total, amount, index, array) => { > total += amount; > if( index === array.length-1) { > return total/array.length; > }else { > return total; > } >});average // 39.37 Ну да посчитать сумму и поделить не проще, надо вот такой пиздец писать. >Map и Filter как редюсеры Охуеть он листал какую-то книжку по фп, возможно даже sicp >const average = euros.reduce((total, amount, index, array) => { > total += amount > return total/array.length >}, 0); К чему это? И да он обосрался Код хз что считает, но точно не среднее арифметическое
У меня есть блок (синий) со стопкой дивов (чёрные).
Как можно сделать на CSS (на гридах, например) так, чтобы часть этих дивов расположились сверху блока по заданной сетке (красное)? А остальные дивы (их много - нефиксированное количество) должны остаться стопкой снизу, как и были.
Как красное сделать мне понятно. Непонятно, как сделать так, чтобы оставшиеся дивы остались на своих местах после перемещения некоторых из них на красные места через grid-area.
>>1967385 Ты не понял отсылки. Но я поясню. Мимо мамкин-борщехлёб. Кодирую на хачкеле и сейчас пытаюсь вкатиться во фронтенд чтобы не есть одни борщи. Такие дела. Поэтому подход может быть удобный и деликатный, но нахуй он нужен, если тебя никуда не берут?