Это копия, сохраненная 7 марта 2021 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Больше пары строк кода в посте или на скриншоте ведут в Ад.
Для программирования на HTML https://jsfiddle.net/
Для Node.js с консолькой https://repl.it/languages/nodejs
Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: что я хочу получить, что я для этого делаю, что я вместо этого получаю. Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Руководство для вката:
https://pastebin.com/9yRADC0s
Реши задачку. У тебя есть обычный объект. Тебе надо пройтись по нему и сделать так, чтобы каждый ключ объекта, стал переменнойс соответсвующим значением, в лексической области видимости текущей функции (или модуля). Список ключей объекта заранее неизвестен.
Не знаю, что тебя так бомбануло, туши свой пердак. Я всего лишь сказал, что хероку - это платформа чисто для тестов, для продакшена она дико оверпрайснута. Цена завышена минимум в 2-3 раза по сравнению с AWS/Azure/Google/AliCloud.
Спасибо.
Если меня спросят через 100 лет, чем занимаются вкатывальщики в жс, я отвечу - все еще пытаются придумать практическое применение перекладыванию ключей в переменные, и, за неимением таковых, называют это самоценными "задачами" для других вкатывальщиков.
Так же, точно известно, что никакая лютая хуита в стдин попасть не может (только то что написано считаем что:). Подкиньте какую-нибудь идею, почему код может упасть.
inb4 Отрицательные числа там не могут быть (только исходя из логики), работают неправильно, но не валят код, ровно как и нули, одинаковые числа.
откуда задачи?
Я как-то охуел с такого вопроса на собеседовании. Замыкания в JS они какие есть, такие блядь и есть.
А ты спроисл интервьювера на каком языке он раньше писал?
Единственное, что приходит в голову - потенциальные проблемы с производительностью, но они возникают только если пихать без нужды функции внутрь функций внутри функций.
Это как спросить, в чем ГЛАВНЫЙ (подразумевается что есть неглавные) недостаток циклов в жабаскрипте.
Я бы ответил, что нахожу такой вопрос весьма субъективным и попросил бы уточнить контекст. Если же меня все равно попросили пофилософстовать на тему вкусовщины, то сказал бы, что я прекрасно понимаю систему замыканий в js и никаких неудобств при их использовании не испытываю.
Так там везде вспылвет эта "проблема", если только ты не пишешь мономорфных код. Но его никто на js не пишет (только в узкоспециализирвоанных вещах). А потому если это кто-то считает проблемой языка, то скорее всего у него проблемы с выбором инструмента для задачи, а не у языка.
Есть ли такое в JS?
Я хочу в ноде зареквайрить свою либу - и хочу, чтобы мне выдавало подсказку по методам подключенной либы в других файлах.
Вот смотри. Java - это язык программирования. IDE - это среда разработки. JS - это язык программирования. Node,js - это исполнитель языка программирования. Почему ты в случае Java получаешь нужное тебе поведение от IDE (какой-то абстрактной), а не от JVM исполнителя Java). А в случае JS ты этого поведения хочешь от исполнителя JS?
VS код такое может. Сначала проиндексирует тебе всю лапшу а потом показывает, где какой метод определен и даже описание покажет.
Вот именно в ВС Коде у меня так не работало. Надо ещё поразбираться, значит.
Написал приложений 5 учебных. Одно из них на монго и ноде. Так вот вопрос, хочу ещё бэк в кучу подучить пока есть время. Отметил для себя 3 варианта. Какой из них поможет быстрее вкатиться?
1. Изучать дальше ноду и экспресс
2. Изучить питон и Джанго
3. Изучать Голанг и писать бэк на нем.
Какой стул выбрать чтоб вкатиться и получать нормально денег?
Чтобы вкатиться тебе больше ничего не нужно учить, а нужно резюме рассылать и делать тестовые.
На работе будешь писать на том, на чем пишет команда, остальное можешь доучить, если будет время и желание.
>Изучил досконально js, redux, react.
Если бы хотя бы js досконально изучил, то ты бы уже не только вкатился, а милионы зарабатывал.
Неэффективное использование памяти, дубли в памяти, ну очевидно же! Бездумное использование замыканий приводит к утечкам памяти, поскольку каждое замыкание хранит в себе копию оригинального окружения. Значит копию всех переменных внутри функции, и эти переменные не удаляются пока не отработают все вложенные функции. Если у тебя 100 вложенных функций, значит переменная не удалиться, пока все 100 не отработают. И если стоит setTimeout например, с определенной периодичностью добавляет элементы к массиву, этот массив может никогда из памяти не удалиться, и приложение грохнется, в конце концов исчерпав всю память.
>Если бы хотя бы js досконально изучил, то ты бы уже не только вкатился, а милионы зарабатывал.
Это не так.
Чувак, камон. В js-треде такой вопрос задавать! Ну конечно же я выбрал бы node+express! Нахуй мне питон или голанг? Вот что даст переключение на другой язык, ты мне скажи? Типа сайт полетит и начнет срать радугой или что. На языки ориентируются только неудачники.
>Есть ли такое в JS?
Есть. Любой шторм. PHPStorm, WebStorm и проч. Visual Studio Code из бесплатных тоже умеет.
Ээээ друг, ты брось заливать. "Платят лучше" - это субъективный фактор, что отличает сайт за 20 тысяч рублей от сайта за миллион долларов? Язык на котором написан сайт что ли? Нет, ценность для потребителя! ИПшник и корпорация/стартап - это два разных клиента. Для гугла 50 тысяч долларов вообще не деньги, а ИПшник будет биться за каждую тыщу. Даже если ты идёшь устраиваешься по найму, в стартапах, если они собрали инвестиций на полмиллиарда-миллиард, вообще не проблема заплатить $150k/год разрабу. Но там соответственно и рисков больше, и требовать с тебя будут больше.
Причем тут сам язык программирования - непонятно.
Ну например если я поучу ебанину Аля Голанг может выясниться что в условном Краснодаре она нахуй не нужна и придется в Москву за работой ехать
Она и в дс нахуй не нужна, приходишь такой на джуна гофера собес, а с тебя сходу начинают за питон или джаву расспрашивать. В гошники видно нужны перекатыши с других языков только, а не свежий вайтишник.
мимокрокодил
У Д А Л Ё Н О Ч К А
Камон, 2020-ый год на дворе, полным-полно remote-first компаний. Легко можно делать 200к в месяц, почесывая жопу на пляжике в Бали. О чем ты вообще говоришь? Под любой язык можно удаленную вакансию найти.
Да срать что тут говорили. Тююю, тоже мне проблема. Ну начни с простых заданий на апворке и качайся дальше.
Вот даю обратную связь.
Если кратко, то пришел поговорил с хр, потом увели в кабинет к тимлиду, познакомился с ним, поболтали за реакт и редукс, обсудили мой гитхаб, я сказал что не умею в ТС и мобх, он сказал все нормально ко мне приставят синьора, чтобы меня учил. На испытательном сроке сказал зп будет 40к фикс(а хр говорила 50к) и длительностью 2-3 месяца чтобы понять проект. После испытательного обещают 60-80к. Завтра повезу документы. Считаю это вин по всем фронтам. Если что у меня ноль опыта реальной работы и мне 22 + я без вышки(отчислился в этом году).
Задавайте свои вопросы.
Добавлю это не ДС, 1кк мухосранс
Грац, ты вырвался. Пиши звони, фотокарточки присылай.
Красавчик, рад за тебя
Просто выложил резюме на хх, там написал "Начинающий разработчик в стеке реакт редукс вот мой гитхаб(там ничего серьезного, просто поделки)" в умения напихал кучу всего от хтмл ксс и до вебпака, отклики не делал, мне позвонили и пригласили на собес.
как-то так
Тимлиду лет 35-40, остальным лет 30 на вид. Да и мне сразу сказали что я самый молодой буду и берут меня на выращивание внутри компании.
@ПОЗВАЛИ НА СОБЕС
@НАЧАЛИ ЕБАТЬ ПО ДЕПРИКАТЕД ЛАЙФЦАЙКЛ МЕТОДАМ РЕАКТА
@КАК МОЖНО ОСТАНОВИТЬ ЦИКЛИЧЕСКИЙ РЕРЕНДЕР
@ЗАГЛЯНУЛИ В ГИТХАБ И ОБОСРАЛИ ЕГО
@НАЧАЛИ СПРАШИВАТЬ ПРО ООП, ДРУ, СОЛИД, КИСС
@ПОПРОСИЛИ НАПИСАТЬ ДИПКЛОН НА ЛИСТОЧКЕ
@АЛГОРИТМ СЛОЖЕНИЯ СТОЛБИКОМ НА ЛИСТОЧКЕ
@ПОЧИТАЙ ВЫРАЗИТЕЛЬНЫЙ ЖС И ВЫУЧИ ГРОКАЕМ АЛГОРИТМЫ
@НА ЗП 40К, ЗАТО ОФИС А+++++
@ВЫ НАМ НЕ ПОДХОДИТЕ.МЫ ВАМ НЕ ПЕРЕЗВОНИМ
@НЕ МОГУТ ЗАКРЫТЬ ВАКАНСИЮ 4 МЕСЯЦА И ПРИГЛАШАЛИ НА СОБЕС ОПЯТЬ
@НИКАКОГО БУГУРТА НЕТ
Добавлю, молодых и энергичных смузихлебов я не видел, сидят за компами обычные дяди в рубашках/свитерах и джинсах. Офис выглядит очень дорого(для меня), рабочие компы с двумя мониторами, интерактивная доска с какими-то графиками в центре отдела, дверь на балкон-курилку, кухня, лаунж зона с пс4 и кресла-груши, у кого-то(видимо крутые разработчики) стоят маки и макбуки и вход в крыло компании по отпечатку пальца, лол.
Что-то тебя порвало, меня таким не дрочили, да и не дрочили вовсе.
Хз я на 110 устроился на первую работу. Правда на окраине дс. Но в целом поздравляю.
круто, а боялся идти. Я вот уже 5 год работаю, а зп как у тебя будет)
>@НЕ МОГУТ ЗАКРЫТЬ ВАКАНСИЮ 4 МЕСЯЦА И ПРИГЛАШАЛИ НА СОБЕС ОПЯТЬ
Чекни вакансию через пол года, она скорее всего так же не будет закрыта
Тебе нужен самый простой английский, для даунов. За месяц выучишь.
что мне засунуть в первый скрипт, чтобы при определённом условии цепочка скриптов прерывалась на нём, а консоль не засиралась двадцатью строчками npm ERR!оров?
Можно ли воспроизводить ролики на флэше, загружая в src элемента сам base64-encoded ролик, вместо ссылки на него?
Я сейчас целиком закидываю swf файл в энкодер и вставляю в src с припиской data:application/x-shockwave-flash;base64,
Но при этом если нажать ПКМ по такому ролику, то в меню написано "Ролик не загружен". Хотя если в src указать ссылку на этот же ролик, то всё работает нормально. Так и должно быть, или я что-то не так делаю?
Заебеню кодогенерацию и вообще объекты не для того применяются: применяются либо как хэш-словарь либо как структуры
Зависит от задач. Обычный сайт можно запилить на всех из 3-х. Если для веб-приложения нужен concurrency perfomance то Го.
> пикрил
Что именно они имеют в виду? В чем проблема наследовать от встроенных классов, какие там ограничения?
Эти курсы подойдут для изучения? It-kanasutra
Хуйня какая-то.
1. Проходишь Гарвардский курс по CS
2. Читаешь от корки до корки Кантора
3. Проходишь на юдеми курс Юрия Буры по реакт + редакс
4. Полируешь отдельно хуки, там бегло их объясняют.
5. Закрепляешь знания по курсу MERN от Траверси на юдеми. Заодно чутка щупаешь ноду и монго с экспрессом
Я после этих шагов неплохо плаваю теперь в жс и реакте с редаксом в частности
бумп
Да. Но только я начинал вкатываться на джаве и потом перепрыгнул на стул жс. То есть начал жс изучать имею неплохую теор базу на жаве
>>80780
Что там заебать может шиз? Кантор? Это основы которые в любом случае где-то брать надо. Притом что у Кантора вся инфа максимально лаконично и без лишней воды представлена.
А два курса что я посоветовал совокупно занимают 34 часа. И на выходе он ответит на 95% всех вопросов по реакту и редаксу.
Анон не слушай этого шищика. Любой кто кричит
>Ряяяяяяя это пораша
и не предлагает альтернативу не достоин внимания
Сs50 лютый вин для того кто с нуля начинает изучать программирование. А то до смешного доходит, для Гарварда это ок, а васян с пропершенного дивана орет что говно
>не хочешь монгу юзай другую
Да я и не против, вопрос в том, почему предлагается именно монга? Очевидный синтаксис у мангуза для вкатывальщиков?
>>И какие вообще юзкейсы у нереляционных дб?
А на этот вопрос ты случайно не знаешь ответ?
>>80800
Я вот тоже курсы траверси смотрю. Возникает вопрос насколько хорошо он код пишет, можно его стиля разработки придерживаться?
React или Vue?
типизированный жквери
Вполне можно. Единственное есть несколько нюансов.
Он очень хуево знает хуки и поэтому постоянно косячит с зависимостями в useEffect. Это не критично но чутка раздражает учитывая что это самый высокооцененный препод по жс на юдеми. Ещё он не любит писать mapDispatchToProps и передаёт напрямую экшен в конекте когда редакс подключает к компоненту.
Ну и алсо не смотри курс по MERN который я советовал сразу. Лучше тогда начни курс где он реакт для нюфань объясняет. А тот курс уже предполагает что ты чутка шаришь в реакте. Если с нуля то начни с Буры. Может и курс по реакту у Тпаверси хорош но я его не смотрел поэтому не могу сказать
Я смотрел мельком его реакт курс, нихуя не объясняет, просто проект за проектом "напишите сюда это, потом объясню зачем". Ну такое, хотя по ванилла жсу у него был нормальный курс
Тогда смотри Буру. Бура хорошо объясняет. А траверси уже закрепишь материал. Но прежде всего сам жс изучай. Чтоб не тупить на элементарных моментах
Спасибо за инфу. Я чутка бекенд жс знаю, всякие чятики, круды-хуюды, аутентификации пользователей писал, но только на голом хтмл и ванилла жс. Хочу реакт нормально освоить, а то голая нода никому не нужна ;(
Ну если эту хуйню писал значит жс должен знать. Тогда сразу Буру смотри. Если что непонятно спрашивай тут.
Спасибо, хорошего вечера
Я мб не умею искать, но не могу найти ни одной околотекстовой игры на JS (комбатс карнейдж травиан что угодно). Почему так? Ведь node.js вполне себе средство. И на чем тогда делать бекэнд?
>И на чем тогда делать бекэнд?
Прямо сейчас копаюсь в бусте и пишу сервер на плюсах. Чувствую себя отлично.
Ну, плюсы - это мозги нужно иметь
Кроме шуток, раньше ведь было огромное количество всяких говнобраузерок, все на пхп писались, что ли? как вообще исходники находить?
Не верю, что за столько лет не нашлось человека которому делать нех который бы переписал пхп или перл бекэнд на node или какой--нибудь питон. Неужели нужно заново изобретать велосипед?
Видел вакансии бекенд нодера для разработки браузерки. Явно движок какой-то есть, копай дальше
Лол. Так говоришь будто язык простой
На чем хочешь. На бэке же чистая логика будет, какая разница на чем он написан? Пиши на ноде, если так хочется.
речь про "проторенные дорожки", про какие-то околотиповые решения, что-то, что можно себе скрутить, чтобы не писать велосипед.
сам я бомж просто
удалось отключить эту валидацию, можете не отвечать
Таски на работе - "Сделайте кнопку побольше".
https://stackoverflow.com/questions/10883211/deadly-cors-when-http-localhost-is-the-origin
Попробуй в другом браузере или разреши хрому CORS
Аналог гугл докс, сервис для удобного слежения за твитч стримерами
>>1779923 →
Я бы просто в EC2 засунул весь бекенд да и всё
>>1779900 →
Не похоже. Он не развивается, потому что некуда, но и не сдох. На нем прекрасно бекенды пишутся, используя TS. Нест попахивает жявой и дотнетом.
Никакой, и даже не чистый жс, а алгоритмы, серьезно. Очень жёстко дрочи алгоритмы, это почти единственное, что важно. Кроме них тебе будут проверять в основном на софт скиллы, но ещё будет беседа по проектированию систем. Как ты понимаешь, знания о этому пункту приходят с опытом, их сложнее всего получить самостоятельно. Но на эту тему есть хорошая литература.
А нахуй твой жс кому всрался. Всяких вкатывальщиков на нем тысячи. А как до знания реакта доходит то единицы промямлят что-то. Что для меня загадка учитывая что реакт не такой уж и сложный
Тебе же чётко и ясно написали, что пропсы забыл провалидировать. Лучше не игнорь эти правила, а то потом станешь мартышкой и будешь на TS везде any писать и отключать все проверки в тсконфиге.
У нас наоборот. Приходят джуны после курсов Буры, в портфолио магазин на реакте, на вопрос, чем отличается var от let или что такое замыкания и зачем они нужны в ответ только "пук-среньк..."
Ремесленники блять. Реакт-мастера без понимая ЖСа, я хуею.
Да я понимаю, хотелось бы сначала в самом реакте разобраться, и только потом уже лезть в эту типизацию
Лол, да такие тоже бывают. Но не суметь на такие вопросы ответить это клиника конечно.
Ладно там всякие каверзные вопросы аля
'false' === false?
Но замыкания этож один из двух фундаментов жс
Какая литература, не подскажешь?
Причем на собесе смело заявил, что он "уверенно знает реакт". Чел просто верстал на реакте. Не писал логики, не писал редакс-кода, чисто формочки клепал, и то без валидации.
Теперь он "свободно знает реакт" и просит 90к в провинции. Ну заебись теперь, тебя нам не хватало, будешь тимлидом.
Я ничего не имею против 30 летних джунов. Я сам вкатился в 28. Но блять, тот кто ссыт этим людям в уши "Пройди мой курс и стань миддлом 150+", того надо за яйцы вешать.
Даже не представляю что я буду делать на работе уже с понедельника.
Ну помимо обучения ТСу и МОБХу.
>>80348 - анон.
Справедливости ради, Бура не виноват что люди ломятся к нему без знания жс. У него конечно есть краткий экскурс по темам основным в жс но надо понимать что это все поверхностно. И к требованиям курса есть знание жс
Использую пакет "websocket", легкий и работает как обертка нативного http.server в ноде.
Но такой вопрос - как через сокеты передавать картинки? Точнее я конечно отдаю c сервера nodejs buffer, на клиенте это приходит как blob. Клиент видит размер буфера, но нет mime типа (как его передать через сокет?) и я не знаю чем этот blob из разных фреймов с сокета собрать в один конечный блоб, который и будет картинкой.
Кто подскажет куда читать хотя бы.
Месяц-два будет онбоардинг. Первые недели будешь знакомится с командой, проектами, научат разворачивать, объяснят архитектуру. Может быть дадут пару задачек типа "добавь сюда еще одну хуйню по аналогии с этой хуйней". Потом будут давать мелкие задачки под надзором старших товарищей типа "добавь в эту форму новое поле" или "добавь страницу 404 на проект".
Через пару месяцев, когда будешь понимать, как устроен проект, начнут давать задачки посложнее, на добавление функционала или что-нибудь с бэком связанное. Через полгода-год будешь уже на уровне миддл-минус.
Это в идеале. Иногда бывает, что учат по методике "кидаем-плывет". Это хуже, но тоже ничего страшного.
Главное чтобы не хуесосили сильно. Будучи джуном, все твои косяки в первые месяцы работы - это больше косяки твоих старших, так что расслабься, не душни и не ссы спрашивать, если что не понятно. Молчунов никто не любит.
Как ты вообще представляешь себе типовое решение для бэкенда игры?
Пробовал, он почему то undefined возвращает.
Зачем туда вкатываться?
Видел статистику зарплат по языкам программирования и там вместо JS Был реакт, ангуляр и вью ухахаха бля
Я и не гонял его по редаксу, просто само по себе это большой минус. Редакс не сложно писать, его сложно принципиально понять человеку, который ни разу с не работал со стейт-менеджментом.
Все верно. Жс без чего-либо из этой тройки = работа за 20к в месяц. Если мы о фронте говорим
Да-да, конечно. То ли дело челики которые спрашивают за замыкания на собесах, потому что хуй его знает что там спросить, вон в инетах пишут спрашивайте за замыкания. Итого имеем на каждом собесе вопросы как под копирку.
Сложно поверить, что ты за 4 года ни разу не столкнулся с тем, что твой код творит хуйню без замыкания.
Это очевидно не так. Хоть и сложнее будет найти работу, да
Замыкания не нужны. А там где ты его применишь 100% можно и без него легко обойтись.
>Замыкания не нужны
99% кода в ЖС работает только благодаря замыканиям. Это как сказать, что мышцы не нужны, ведь у тебя есть руки и ноги.
Деб, замыкания и прототипы это единственное что стоит спрашивать на собеседованиях по теории жс. Поскольку это два фундаментальных понятия в языке.
Ну там реально ниче сложного. Держим Стейт в редакс сторе. Стейт меняем через редюсеры. Экшены диспатчат в редюсеры тип нужный и редюсер меняет стейт. Компонент соединяем с редаксом функцией Коннект которая первым аргументом принимает функцию mapStateToProps которая позволяет пользоваться стейтом и вторым mapDispatchToProps позволяющий диспатчить экшен
Все еще жду пруфы. Разз 99% жса работает только благодаря замыканиям, то предоставить будет изи.
Если не знаешь замыканий - ну значит тебе оно не нужно. Нужно будет - ознакомишься. Я тебе не ментор и не начальник чтобы базовые вещи разжевывать.
> Не знает что такое замыкание
> Называет кого-то профнепригодным
> Чел, ты...
Я так понимаю ты сам с собой общаешься? За меня придумываешь и сам себе отвечаешь?) Завидую тебе, никогда не скучно наверное.
Реализуй функцию sum(number):number
каждый вызов которой, возвращает сумму number и результата предыдущего вызова или еденицы, если вызовов еще не было.
sum(1) // 2
sum(2) // 4
sum(5) // 9
Ты там головой не ебанулся случайно? Я тебе сказал что жду пруфов, а не задачек с лернжс.
Ты вообще в курсе что такое бизнес кейс? Зачем пишется код, на жс или другом любом языке?
осло это легко реализуется и циклом, так что даже в этом примере ты жидко обосрался.
Все еще жду пруфы. А не хуйню с лернжс оторванную от реальности.
Хотя ты уже и так обосрался же)
>оторванную от реальности.
В чём эта задача оторвана от реальности? В твоей реальности не используются счетчики? Идентификаторы setTimeout\setInterval тебе на здоровье.
Через замыкание как тот манька скинул, да не используется. Это нахуй никому не надо, в первую очередь бизнесу.
С какой стати? Ты же высырался про незаменимость замыканий. От тебя и требуются пруфы. Твоя неумелая попытка перевести стрелки выглядит смешно.
В js есть только два пути хранения стейта. В объекте (глобальном или контекстном) или в замыкании. Поэтому иначе как через замыкания или привязку объекта со стейтом к функции, ты ту задачу не решишь. О каких циклах ты говоришь, даже мне непонятно.
Я именно про его пример и говорю. От тебя ничего кроме истерики с >рряя долбоеб можно на циклах, как сам погуглишь
ничего по существу сказано не было. Покажи код той функции sum, как надо делать по-твоему, нам всем любопытно.
Еще раз, твой любовник высрался про то что замыкания необходимы, 99 процентов жса на них крутится. Окей, допустим(нет). Я прошу, ну давай покажи кейс где это так.
Чел кидает отрезанную от жизни задачку. Ну лол, ребят, так дела не даются. Или вы еще на курсах не проходили ничего серьезней?)
Так что или пруфайте нормальным бизнес кодом или идете дружно нахуй. Я думаю второе.
Пиздабол. Обтекай.
Не будут. Маня, который порвался, либо троллит тупостью, либо не понимает, что такое замыкания, и что вся его хуизнес логика на самом деле построена на них и что у каждой второй его функции есть замкнутый скоуп.
Я запросил пруфы выебонов. Но как обычно бывает начались маневры и переводы стрелок. Но ты не одинок, к айти таких пиздаболов очень много. Жаль что только веб из-за вас как кусок говно работает.
Тебе привели пруф. Функция со счетчиком. Но ничего внятного от тебя кроме ваши задачи не задачи не услышали. Всем тут вполне очевидно, что ты просто долбоеб. Кукарекай дальше.
Куда этот счетчик должен выводить данные? Зачем он вообще нужен?
Понимаешь ли, реальность отличается от ваших задачек на курсах. Потому долбаебы здесь вы.
Тебе выше дали реальный пример используемый повсеместно - счетчик таймеров, который используется для сброса этих самых таймеров и с помощью счетчика генерируется его id. Ты совсем дурачок?
>Реализуй функцию sum(number):number
>каждый вызов которой, возвращает сумму number и результата >предыдущего вызова или еденицы, если вызовов еще не было.
>sum(1) // 2
>sum(2) // 4
>sum(5) // 9
Чет не вижу тут ни слова про счетчик. Или ты про маневры уже дальше, что это якобы не просто так, а для счетчика. Ну так вот я все еще жду реальный пример, а не какую-то хуйню, которую вы высрали на у себя на курсах.
>генерируется его id
Для чего нужен айди, в чем смысла формировать его на базе предыдущего числа.
Я как будто реально с даунами не умеющими в коммуникацию общаюсь. Вы сразу весь пример бизнес кейсас ОДНИМ СУКА постом можете написать?)))
А как задрачивание API Реакта, относится к знанию замыканий? Не смотрел под капот, но предолагаю, что да, там замыкание. Но чтобы так делать, не надо про них знать.
мимо проходил
Зачем для этого под капот смотреть, если там в эффекте id и setUser из замыкания берутся?
>Но чтобы так делать, не надо про них знать.
Замыкания это максимально естественная вещь, чтобы их применять про них не надо как-то специально знать или там что-то задрачивать.
Я собственно почему это отметил, потому как такие знания актуальны когда ты сам фреймворки пишешь. Но уж никак когда это обычное промышленное программирование.
А то так выходит что и C/C++ надо спрашивать, чтобы точно знать как браузер рендерит текст и исполняет жс.
По-сути эта функция, возвращающая див с текстом, все остальное завязано на API Реакта
>чтобы точно знать как браузер рендерит текст и исполняет жс.
Знать какие операции в браузере вызывают reflow/repaint вполне себе необходимо фронтендеру, который претендует на звание миддла.
У вас бизнес задачи только к реакте сводятся? В твоем примере не было использовано именно тобой замыкания.
>У вас бизнес задачи только к реакте сводятся?
Да
>В твоем примере не было использовано именно тобой замыкания.
А ты посмотри внимательнее
Ну хз, сколько работаю, никогда проблем с анимациями не было. Про рефлоу репейнт слышал, но без понятия про них.
В его коде непосредственно им и было использованно замыкание, реакт там вообще не при чем. То, что ты этого замыкания не видишь - не удивительно, учитывая то, что ты не знаешь что такое замыкания. Вот тебе код, без реакта.
>никогда проблем с анимациями не было
А как ты проверял наличие проблем, если не чекал рефлоу?
>Да
Сочувствую.
>А ты посмотри внимательнее
var User = function User(_ref) {
var id = _ref.id;
var _React$useState = React.useState(null),
_React$useState2 = _slicedToArray(_React$useState, 2),
user = _React$useState2[0],
setUser = _React$useState2[1];
React.useEffect(function () {
fetch("https://jsonplaceholder.typicode.com/users/".concat(id)).then(function (response) {
return response.json();
}).then(function (json) {
return setUser(json);
});
});
return /#__PURE__/React.createElement("div", null, user && user.name);
};
Ну и на что тут смотреть? Вся кухня внутри реакта происходит. Это неудачный пример
В твоем коде использовано замыкание. Ты setUser в промисе берешь из замыкания. При чем тут реакт.
>Ну и на что тут смотреть?
На функцию внутри useEffect. Ну камон, если ты не видишь замыканий, иди Кантора почитай, я не знаю.
Ты не можешь на глаз определить работает ли хорошо. То, что оно выглядит оптимально и не дергается, не говорит ничего о том, что лэйаут на самом деле у тебя перестраивается как не в себя ебанутый и бедный рендер ест батарейку в несколько раз быстрее, чем должен.
И как эти данные потом попадают в user? Я думаю таки это кухня реакта. На ванилле ты так не напишешь. Вот именно так. Тебе придется заранее писать код который будет такое поведение реализовывать.
>Ты не можешь на глаз определить работает ли хорошо.
Почему? Ничего из выше тобой описанного замечено не было. Юзеры тоже не жалуются. Проблема высосана из пальца честно говоря.
Это уже не говоря о том, что в каждом компоненте делать отдельный вызов фетчка это мрак какой-то.
Возможно мы говорим про разные анимации правда. Я не исключаю что есть какие-то сложные.
>reflow/repaint вполне себе необходимо фронтендеру, который претендует на звание миддла
Надеюсь ты кто-то уровня Майка Бостока, а не очередное нонейм говношлепер на реактике.
Замыкания в жс это такая же тривиальщина, ка коператор сложения. Они используются буквально везде, в любом продакшен коде есть тысячи замыканий. Без замыканий ты не напишешь ничего работающего от слова совесм, просто потому что, чтоыб обратиться к любому апи браузера даже, тебе необходимо обратиться к замыканию, в котором эти апи находятся, не говоря уже о кастомном коде. Каждый модуль - это замыкани. Лямбды через одну заязаны на замыкания, все блядь одни замыкания. И говорить, что об этом надо знать только разработчикам фреймворков, все равно, что сказать, что сложение используется только в библиотеках, а при промышленном программировании никакое сложение нахой не нужно. Другое дело, что итт мы очень весело убедились в том, что кричащие о ненужности замыканий, все как поголовно не знают что такое замыкания и не видят их в реальном коде, даже когда используют их сами.
Пример кусок говна. Зачем тут замыкание вообще? Для получения данных есть отдельный слой всегда. Боже, ты реально долбоеб, я не ошибся.
Ну я убедился, что ты реально макака, которая сует фетчинг прямо в вью леер. Пиздец
по началу спора был на твоей стороне, но сейчас вижу, что ты и правда только попиздеть можешь. стыдись.
>потому что он не знает
Я сказал что не знаю нахуй они нужны и пока не увидел ни одного пруфа их нужности. Аппелировать к тому что что у тебя в реактике реализовано замыкание и потому его надо знать тебе, долбоебизм. Пример в песочнице полное говнище, автор его явный долбаеб, не знающий про архитектуру нихера зато ебущий людям мозги замыканиями на собесах.
Честно говоря поебать на мнение местных макак
Ну, мне интересно узнать — ты очень глупый или очень жирный. Склоняюсь ко второму пока.
Тут же то ли ты, то ли твой ебырь, хуй вас разбересь, в общем понтовался что 99 процентов жс работает за счет замыканий, а ни одного примера высрать не может.
А я как раз ничего не заявлял, в отличии от него, вот и пруфать собственно нет цели мне.
Научитесь сперва делать бизнес-приложения на слои, с зоной ответственности, а потом лезте к взрослым дядям. Мы из разных лиг, вообще.
Нехуй выебываться просто если свою правоту кодом не можешь пруфнуть. А так сами насрали, сами и поели своего же говно. Дешевки
Лучше подскажите, я через сокеты передал бинарный файл ( с кодировками кажется подразобрался ) , как в браузерном JS создать из этих бинарных данных картинку, и отрисовать ее ?
точно, спасибо
Лел, не плохо
ну забыл он "или" между двумя последними словами, что поделать.
Сперва научись предложения нормально составлять, я нихуя не понял.
Зачем вообще такие муки? Не лучше просто захостить на с3 или где ты там хранишь картинки и ссылку прислать?
Хз по мне так на w3 намного понятнее, на той слишком много воды хуй знает мне тяжело дается
> слишком много воды
если по языку да, но там даются общие сведения по представлению в памяти, работы кодировок, юникода, движков и тд., вообще это знать полезно я б даже наверно больше добавил про работу с памятью что такое гк, стекфреймы, кеширование, сайдэффекты, какая бывает память и тд, а то думают раз есть гк то можно и не думать как оно под капотом.
Строковое преобразование происходит, когда требуется представление чего-либо в виде строки.
Например, alert(value) преобразует значение к строке.
Также мы можем использовать функцию String(value), чтобы преобразовать значение к строке:"
Как это понять?
Где там толстота? В этих ваших фаангах так и делается
в первом случае неявное преобразование, во втором явное
146
Хочу для своего проекта сделать возможность подтверждать юзера через письмо.
Как я понимаю это делается так.
1. В таблице юзера (у меня postgresql) добавляю колонку isVerified
2. Создаю вторую таблицу с токенами подтверждения привязанную к таблице с юзерами.
3. При регистрации, выставляю поле isVerified - фолс и генерирую токен, который ссылкой высылаю на почту юзера.
4. На клиенте делаю роут типа /confirm/:id на который ведет ссылки из письма
5. На клиенте на основе этого айди шлю запрос на конфирм, удаляю запись с токеном из БД и ставлю sVerified юзеру - тру.
Я правильно рассуждаю или это иначе делается?
Так же вопрос, какой почтовый сервис лучше использовать?
>строковое преобразование типов
а че там понимать? есть прямой вызов метода string(че то там) который преобразует значение в скобках к строке(если возможно), а есть непрямой когда функция также вызывает метод string() к значение только тебе не показывает.
Там же и так все просто...
Просто читай + делай задачи в конце, если не понял читай пока не поймешь, все просто.
Там задачи в конце каждого урока... с чем ты забавляться собрался если и 10% возможностей языка не знаешь?
Дак я задачи-то прорешал... Ну ладно, спасибо за ссылку.
1) CSS 3
2) HTML 5
3) JS?
4) JQuery?
5) что-то ещё?
Хватит первых двух, или элементарные вещи из 3 и 4 тоже нужны. Как верстать в общих чертах представляю (контейнеры прописывать, поля, проценты от ширины и т.д.), а вот как "отправить письмо на email" - вообще не представляю.
form.onsubmit = (e) => {e.preventDefault();fetch('отправь хуйню')};
Ты что, боишься индусов? Видел хоть раз сайты, сделанные индусами за 5 баксов? Он ровно на 5 баксов и выглядит/работает. Я не пойму зачем тебе соревноваться по цене, ищи того, кто ценит качество в первую очередь.
Знаю
>6 метров 2 метра
>цена за м2 == 400 р
>цена монтажа 1400
>вы сделали заказ на 8400
Проиграл с этой хуйни. Больше похоже не на тестовое, а на "давайте сделаем сайт за счёт долбоебов, которые будут нам тестовые делать".
Но если сильно хочешь поработать за бесплатно, то первых трёх пунктов будет достаточно. Сделать можно за пару часов, если вместе с бэком.
Аноны, можно ли как-то деобфусцировать код этого майнера:
https://github.com/PiTi2k5/Crypto-Webminer
https://daslebenistkeinponyhof.netlify.com/mmo.js
А то там нечитабельно нихуя, и крякозябры какие-то, блядь.
Да он не шарит, в реакте в useEffect нормально вызывать фетч, либо апи-клиент-обёртку, внутри которой всё тот же фетч
Просто без задней мысли, выучил верстку, ЖС и вкатился.
Лучше объясните мне почему эту хуйню замыканиями называют. Только нормально а не
>ну она там чето замыкает в себе))0)
Тебя семантика интересует?
Потому что она, как ни странно, "замыкает" в себе свой контекст. Азаза
Тупо создает себе отдельный ящичек, где хранит все значения, которые были в ее области видимости на момент ее создания. И когда ее вызывают, она использует эти самые сохраненные значения, чтобы выполнить свою работу. Это настолько очевидно, что многим так тут подорвало жопу, когда шизик начал отрицать значимость замыканий.
Это как приехать на конвент космонавтики и начать орать, что земля плоская и нахуй запускать ракеты, когда их можно просто сталкивать с края.
Да семантика. Я просто тупой и пытаюсь понять. Объясни на моем примере со скрина плез. Что здесь замыкание, что контекст, что куда замыкается. Спасибо.
Если бы не было замыканий, твоя самая внутренняя функция "с" ничего не знала бы не о деде, ни о бате, а только знала значение сына.
Это все хуйня главное дед незнает о своих потомках
Дружище, гетэлемент уже протух, юзай document.querySelector(“.zalupa”) где zalupa название класса у инпута
Из внешнего скоупа, лексическое окружение значит что скоуп определяется во время определения функции, а не во время вызыва.
Да. Любая функция которая импортирует что-либо из вышестоящего скоупа - это замыкание. использовал console.log в функции - уже есть замыкание, потому что console определен в другом скоупе. Без замыканий это только тогда, когда ты все что используешь в функции, в нее передаешь при вызове, ну и операторы.
Никогда не было нормальным получать данные во вьюхе, суть которой их отображать только. Единственная логика которая там может быть это скрыть/показать кнопку, что-то такого типа.
Надо делать отдельный сервис который работает с дто(data transfer object). Он и занимается общением с серваком через хттп запросы.
Но так получается мне нужно будет мой сервис общения с сервером оборачивать в реакт синтаксис (jsx). А если у меня запросы к серверу в чистом js'се, я в компоненте инициализацию запрос через обёртку в которую и получаю объект с ответом, который закидеваю в setState?
Вот этот анон шарит, я все таски только так и делаю, если таска не решается замыканием или пузырьком, значит ее невозможно выполнить вовсе.
Ты прежде чем пиздеть, хоть узнай как работает это
хз, наверное, я не пишу на реакте. Но по хорошему еще должен быть слой с бизнес логикой. Вьюха в самом конце уже идет.
Ты знаешь что такое атрибут class в хмтл и откуда берутся селекторы по классу?
<div class="tidolbaeb"></div> - селектор по классу .tidolbaeb
Так тебе понятней, мышь?
Каких примерах? getElement устарел, его полностью заменяет querySelector и querySelectorAll, просто почитай что и как там.
Html
https://pastebin.com/SN1ExYdJ
Js
https://pastebin.com/nP3xm4Xf
Пытался повесить кнопку но чет пока не смог, но
В реакте варианта два. Компоненту нужно получить данные, он может:
1. Вызвать напрямую фетч или какую-то обёртку апи-клиент в useEffect и записать полученный результат в локальный стейт.
2. Так же вызвать запрос к апишке в редаксе/другом стейт манагере и передать полученные данные из глобального стейта в нужный компонент
Запрос на получение данных все равно стриггерит вьюха. А кто конкретно его будет выполнять и как потом данные окажутся во вьюхе — вопрос десятый. Вокруг этого можно любую архитектуру накрутить с транспортами, сокетами, сторами, кешами, дата леерами и т.д. Ну или не накручивать.
Это форма, вешай на сабмит евентлистенер и не еби мозга, не забудь отменить дефолтное поведение.
Ну и лапша там у тебя, пиздец. И хули ты поленился в нормальный редактор кода запихнуть свои примеры, прынц дохуя?
https://jsfiddle.net/qknx4hub/26/
На тебе менее уебищный пример.
https://jsfiddle.net/qknx4hub/27/
И разберись блять с логикой у тебя там ехал инфинити на минус инфинити и инфинити погонял.
Ну так уж и два.
Еще например компонент может дернуть за предоставленный родителем рычаг и от родителя же получить данные, которые тот в свою очередь получит из редакса или апишки.
Сам компонент при этом останется максимально тупым.
Ну и в чем смысл разделения компонента на два, которые используются только вместе друг с другом? Просто чтобы следовать устаревшей парадигме containers/components?
Смысл в том, чтобы отделить логику от представления и облегчить тестирование.
Нужно избегать упарывания по парадигмам и использовать то, что подходит под каждый конкретный случай. Когда компонент не сильно сложный - нет смысла выделять для него отдельную обертку-контейнер.
Спасибо, теперь понятно.
Ну значит все-таки работает, не?
1. На основе экшена и предыдущего стейта получить сущности (entities), которые я добавлю в следующий стейт
2. На основе этих сущностей запустить функцию, которая что-то сделает с ними в будущем (sideEffects)
3. Склеить все в новый стейт (getNextState) и записать его
Собсна вопрос — а как это лучше сделать? Допустим на чистом Реакте, используя useState/useReducer.
Вариант 1.
const [state, setState] = useState(initialState);
const onDispatch = (action) => {
const entities = getEntities(action, state);
sideEffects(entities)
setState(getNextState(entities, state));
}
Очевидная проблема тут — замыкание на state, который не будет меняться без ререндера. Например, если вызвать два onDispatch синхронно, то оба получат один и тот же стейт, что вызовет ошибки.
Вариант 2.
const [state, setState] = useState(initialState);
const onDispatch = (action) => {
setState(prevState => {
const entities = getEntities(action, prevState);
sideEffects(entities)
return getNextState(entities, prevState);
});
}
Этот по идее будет работать правильно, но меня смущает вызов сайд-эффектов в функции-апдейтере.
Есть мысли как это лучше сделать?
1. На основе экшена и предыдущего стейта получить сущности (entities), которые я добавлю в следующий стейт
2. На основе этих сущностей запустить функцию, которая что-то сделает с ними в будущем (sideEffects)
3. Склеить все в новый стейт (getNextState) и записать его
Собсна вопрос — а как это лучше сделать? Допустим на чистом Реакте, используя useState/useReducer.
Вариант 1.
const [state, setState] = useState(initialState);
const onDispatch = (action) => {
const entities = getEntities(action, state);
sideEffects(entities)
setState(getNextState(entities, state));
}
Очевидная проблема тут — замыкание на state, который не будет меняться без ререндера. Например, если вызвать два onDispatch синхронно, то оба получат один и тот же стейт, что вызовет ошибки.
Вариант 2.
const [state, setState] = useState(initialState);
const onDispatch = (action) => {
setState(prevState => {
const entities = getEntities(action, prevState);
sideEffects(entities)
return getNextState(entities, prevState);
});
}
Этот по идее будет работать правильно, но меня смущает вызов сайд-эффектов в функции-апдейтере.
Есть мысли как это лучше сделать?
Винду переустанови.
>element = document.querySelector(selectors);
Что не так, дебил?
>>82383
И при чём здесь аргумент функции, долбоебина? Аргументом функции в данном случае является строк в которой содержаться селекторы, а ты высрал хуйню, прочитав которую какой-нибудь ньюфаг подумает, что передавать можно только названия класса с точечкой.
Не начем лол, пытался в жаву пайтон но толком ничего не высрал, на пайтоне обработчик для экселя «написал» и забросил, жс вроде полегче для меня
Вопрос у меня простой - как на клиенте получить фрейм вэбсокета в полном бинарном виде?
Суть такова - нодой читаю файл, потоком fs.readStream, в кодировке 'base64', далее по идее должно быть что поток ответа response отправляет мою 'base64' строку на клиент, преобразуя в буфер из байт, и кодируя мою строку по дефолту в 'utf-8'. Но все это дело обернуто в пакет "websocket", и он уже формирует бинарный фрейм, к которому как body цепляется моя строка. На клиенте уже сразу приходит моя строка, а я хотел бы получить прям бинарный фрейм на клиенте.
Кто нибудь погружался в эту тему?
п.с.
Я просто хочу немного контролировать что приходит на клиент. Потому что файл картинки может быть большой, и тогда мне его нужно собрать в один и отрисовать картинку.
И соответственно между фреймами с бинарными данными картинки могут идти какие то дргуие , фреймы с текстом от других клиентов например.
Можно конечно формировать что то типа JSON пакетов, с указанием типа содержимого.
Но я хочу попердолиться на низком уровне пока что. Интересно жи.
Вопрос актуален
В основном для того, чтобы я мог переименовать/добавить у первого интерфейса поле и мне не пришлось делать то же самое для второго. В ts же есть всякие Partial<Type> и т.д., которые по факту делают тот же интерфейс с измененными типами, но именно для моего кейса не нахожу такого.
interface Hello {
x1: string;
x2: string;
}
type Keys = keyof Hello;
interface Hui extends Record<Keys, boolean> {}
const suka: Hui = {
x1: true,
x2: false,
};
recvdata: [], // объявляем пустой массив в data
this.recvdata = json.data[0]; // копируем в него массив с json сообщением
this.recvdata.push({ // пихаем новое поле и присваиваем ему значение
usedheatshex: dec2hexString(this.recvdata.usedheats),
})
Если что не указал - напишите, дополню.
Это объект, а не массив.
this.recvdata.usedheatshex = dec2hexString(this.recvdata.usedheats);
console.log(this.recvdata.usedheatshex);
у $.post() под капотом xmlhttprequest.
В том что первое это более удобная обертка над вторым. Второе это стандартное решение для отправления запросов.
Это замыкание.
console.log(a); // 5
}
function bar(){
var a = 10;
foo();
}
var a = 5;
bar();
Не понимаю, почему 5, а не 10
Алсо помни что у варов есть две области видимости. Функциональная (то есть то что внутри функции) и глобальная. Снаружи функции доступа к варка внутри функции нет
Число... А как тогда сделать, чтобы вставило в начало массива и вернуло новый массив?
SetArray((array.unshift(input),array));
Не использовать мутирующие методы в рякте.
решил задачу, больше не актуально
С помощью замыкания.
Допустим, в переменой занесено 0000 0001 0000 0000, тобишь 0x0100. Если в 9-ом бите единица - чекбокс отмечен, если ноль - не отмечен.
Мне нужен именно момент работы с чекбоксом, пушо как вычислить выставлен ли бит и так понятно.
Блядь, хотя бы на словах, если кому-то влом. Может пойму.
checkbox.checked = true
мне нужно примерно как тут https://codeforces.com/problemset/status/page/2?order=BY_ARRIVED_DESC , но без обновления страницы. Чтобы с сервера подгружать данные
Лолбля. React - это JS библиотека. Как бля без знания основ ЖСа (замыкания, стек вызова/очереди задач, DOM API и пр.) собрались применять Реакт?
Вкатился в 21 год (ЖС - мой четвертый язык после Жабы, Шарпа, Плюсов). Хуета то что написал...
>Друзья, а какие таски обычно дают джуну на реакте?
"Добавь хуйню X по аналогии с хуйней Y из проекта Z", "вынеси в общий класс/функцию повторяющийся код" и т.п.
Как сделать список со страницами? Мне нужно примерно как тут https://codeforces.com/problemset/status/page/2?order=BY_ARRIVED_DESC , но без обновления страницы. Чтобы с сервера подгружать данные
За это действие в жс отвечает программист.
.innerHTML
Ну если cards, то значит их много. Если много, их нужно запихнуть в массив. Массив создается квадратными скобками. Он создает массив с одним элементом. Хуле сложного-то?
>Как бля без знания основ ЖСа (замыкания, стек вызова/очереди задач, DOM API и пр.) собрались применять Реакт?
>приводят пруф, в котором чел пишет на реакте и при этом не знает, что такое массив и как выглядит его литерал
>Анон, считающий себя невъебенно умным начинает пояснять, что на скрине все логично
Работал на плюсах/шарпе/джаве? Или просто понял что не твоё и решил на ЖС перейти?
>ЖС - мой четвертый язык после Жабы, Шарпа, Плюсов
Значит ты вкатился в программирование намного раньше 21. Это ты в жс вкатился в 21, уже с опытом.
Анон, напиши , пожалуйста, свои контакты (почту/телегу/вк или что-то еще). Есть пару вопросов к тебе по поводу upwork.
>Глобальные переменные, методы или функции могут легко создавать конфликты имен и ошибки в глобальном объекте.
Получается просто херачить голый код(размещая их глобально) не только переменными но и функциями хуевая идея,
Могут создавать, а могут и не создавать. Глобальные переменные не нужны, а функции норм. И как их неглобальными делать? Типа запихать все в объекты, как их методы? Какая-то левая ооп-шиза.
Поддерживаю. Очередные бредни ооп-шизиков.
Глобальные переменные это да гроб, гроб, кладбище, пидор
Зато глобальных гораздо меньше будет. Когда я на ангуляровском проекте был, там все глобальные функции в классы-утилиты запихивали. А вот на проектах поменьше бывает не запаривались.
Получается благодаря замыканию можно все выводить как бы изнутри наружу, каждый раз передавая значения из функции наружу другой функции которая находится внутри супер функции
>И как их неглобальными делать? Типа запихать все в объекты, как их методы? Какая-то левая ооп-шиза.
В итоге у таких даунов получается лапша из вызова функций в которой он сам уже не разберется через пару часов. Не говоря уже про изъебы с именованием. В то время как ООП-господин вызывает метод объекта и знает, что если нужно что-то изменить связанное с этим методом или объектом, то достаточно открыть код этого объекта.
>Типа запихать все в объекты
Типа писать код на модулях и освоить webpack/parcel чтобы собирал твое говноподелие.
почти 200 вакансий и всего +-100 резюме(половину можно выкинуть, ведь там версталы записывают себя в фронтенд разрабы). А я все думал почему хрюши меня заливают ежедневными звонками и сказками о лучшей компании в городе.
мимо мидл
> версталы записывают себя в фронтенд
А че должен знать верстала что бы быть полноценным фронтом?
Там у людей только HTML+CSS и иногда LESS/SCSS в умениях.
А чтобы быть фронтом надо уметь как минимум формошлепить на REACT/VUE
Знать жс, реакт (или вуе, ангуляр), желательно тайпскрипт, вебпак, Бабель, редакс (или мобх)
Долларов 7$ чистыми
Нет это уже быть долбоебом
Так и есть.
херкам похуй, на техническом собесе скорее посмотрят как на ебанутого если начнешь рассказывать
Они такую хуиту каждый день по 100 раз видят и понимают что ты не сам эту тудушку писал
Да. Код вида:
Product.UpdateCurrentState();
выглядит куда лучше чем:
UpdateCurrentState(Product);
Потому что обновлять состояния можно у всего что угодно и кода к Product добавится еще один объект у которого нужно будет обновлять состояние, то ты либо на каждый объект будешь лепить новую функцию с новым названием, либо внутри функции начнёшь городить switch-case/if-else if конструкции.
Это будет окей. Только советую сразу тестовые делать. И на гит заливать
Товарищ (вроде бы мидл фронт) советует за этот месяц сделать следующее:
1) сделать туду лист на реакте (1.5 недели)
2) добавить в логику ридакс (полнедели)
3) поиграться с либами всякими реактовыми (2-3 дня)
Далее готовиться к интервью по теории и
4) стучаться с этим на свою первую работу
Как по-вашему, план legit? Олсо, знаю английский довольно хорошо (объективно не ниже аппера).
Ага. Если все тупо на функциях ебашить и весь Стейт держать в хуке useState. Можно и в редаксе но не вижу смысла такое простое приложение с редаксом делать. Но если тебе надо показать что шаришь в редаксе то подключи его. Главное пойми как работает реакт и редакс без самих реакта и редакса. То есть паттерн функционального погромирования. А сами реакт с редаксом тебе уже упростят задачу. Если подождёшь могу скинуть гитхаб простого каунтера который в одном файле эмулирует логику редакса. Потом поищи сам тот же каунтер с редаксом и реактом и поймёшь их суть
Да он просто с курса Юрки Буры, они все там такие умненькие, а потом узнается что не знают что такое замыкание,массив, цикл, переменная...
Какое отношение изучение реакта имеет к замыканиям и прочему. Он сказал что шарит в жс и соответственно здесь и сейчас должен смочь ответить на эти вопросы
https://github.com/knowthen/fpjs/tree/master/counter_completed
Держи. Тут все на голом жс. Но есть эмуляция логики редакса и реакта. Потом уже сам поищи такое же но с реактом и редаксом. Только ищи чтоб с функциями было а не классами. Потом уже как с этим разберешься то покопаешься как реакт с классами работает. Это тоже надо поскольку хоть сейчас и пишут на функциях компоненты но есть старые на классах которые не факт что будут переделывать в компании
Спасибо, анон! Буду разбираться.
>шарит в js
>пост #1783992 --> Более-менее знаю js
>Какое отношение изучение реакта имеет к замыканиям и прочему.
>какое отношение изучение js-фреймворка имеет отношение к js-у и прочему
Всё что вам нужно знать про IQ людей с курсов юрки буры, не имеющих представления даже о таких простых понятиях как замыкания.
Ебень, ты пытался выебнуться но только сам обосрался. Я не написал "какое отношение реакт имеет к замыканиям?".
Я лишь спросил какое отношение реакт имеет к ИЗУЧЕНИЮ замыканий? Ответь на этот вопрос не виляя жопой. Если ты не идиот то очевидный ответ будет - никакого
А потом на собесе спрашивают «а как работает useEffect», «а расскажите про рефы», а «а рендер синхронный или асинхронный» и ты обсираешься. Один день на реакт, лол.
Только вот я уже работаю. Притом на втором месте работы после вката
>Какое отношение изучение реакта имеет к замыканиям и прочему.
>Я лишь спросил какое отношение реакт имеет к ИЗУЧЕНИЮ замыканий?
Это какая-то особая форма шизофрении, когда человек видя свой пост говорит о том, что он писал по-другому?
Но я всё же тебе отвечу. Учить реакт не зная замыканий и посредственно зная js, это тоже самое что учить умножение столбиком, не зная сложения и не умея считать до 10.
Nuxt проект, гружу внешние скрипты, в консоли функция видна, а в элементе(просто по имени) пишет андефаенд. Как обращаться к нему?
Бамп.
Вот как я это вижу:
1) присваиваем переменной значение 0x0100
2) проверяем значение 9-го бита в переменной
2.1) если 9-й бит в переменной равен 1 - отмечаем чекбокс
2.2) если 9-й бит в переменной равен 0 - очищаем чекбокс
3) значение переменной изменилось каким-либо образом
3.1) переходим к шагу 2, чтобы обновить состояние чекбокса
Там, кажись, вотч можно заюзать, но пока не соображу как: грёбаный чекбокс не хочет обновляться.
Чел спрашивал про реакт. Я ответил про реакт. Хуле ты доебался. Спросил бы про замыкания, ответил бы про них
Чекбокс это слишком абстрактное понятие. Он может быть на веб-странице, он может быть в мобильном приложении, может быть в десктопном приложении. Если это второй и третий варианты, то нужно брать во внимание на каком языке написано приложение, с использованием каких фреймворков.
То что ты сейчас высрал ничего не говорит, потому что подразумевает то, что у кого-то есть способность подключиться к твоему мозгу и получить всю нужную для помощи информацию.
Чую-чууую, что попала в нужное время в нужное место!
Мне 66 лет, в/о, технолог-модельер обуви. Но это моё творчество в прошлом - производство обуви в городе отсутствует, фабрики - было ДВЕ в советское время - обанкротили...
По жизни оптимистка. Ч/ю развито, хотя бывает всякое-якое.
По теме программирования увидела содержание книги и поняла, что нужно осваивать. На блогеров ай-ти-шников регулярно выхожу - в теории всё ясно, а вот на практике наработать опыт управления своим смартфоном плюс, я таки, хочу разобраться, о чём мне намЯкает Гугл, Браузер и иные монстры-управленцы в интернете, пока не удалось.
Надеюсь, друзья, освоить с вашей, помощью программу-минимум с развитием в дальнейшем личной (по способностям и интересу) программы-максимум в освоении замечательного языка Джава Скрипт.
Да! И ухожу с других форумов в целях экономии времени на инфу, к которой ныне уже нет того интереса, что был в начале освоения моего смартфона.
Случайно.
Кароч, надо было объявить это говно в методах обернув в еще одну функцию
Какое-то говно ты написал, которое всегда будет возвращать результат вызова первой функции-аргумента.
Ну потому что спать надо время от времени хотя бы.
Бери и читай оф доки
Трусики Мэйби Бэйби из группы Френдзона палил кто-то?
>Изучить раздел полностью от и до
Так и до петли недолго, учить конечно нужно, но я бы чередовал с практикой когда ты делаешь что-то с заскоком на еще неизвестные знания. Типа пошел сверстал сайтик, добавил туда какие-нибудь штуки с использованием ЖС по уроку, а потом смотришь непонятные вещи отдельно. Иначе это будет напоминать зазубривание наизусть словаря без разговорной практики.
Назови мне основые минусы тс и как его превосходит жс.
Я назову тебе плюсы тс:
- Статическая типизация, исключает сразу большинство ошибок с названиями/значениями переменных, особенно когда кодовая база большая. Ну и ты конкретно знаешь, что у тебя будет на входе и на выходе.
- Повышается читаемость кода, размер уменьшается.
- Все новые фичи типо модулей из коробки, в жс это через жопу делается.
- Модификаторы доступа, интерфейсы, жинерики, декораторы - вообще ахуенно.
Используется, чтобы подождать, пока что то выполнится и получить результат. Как пример, получать данные с бекенда.
>статическая типизация
Хуйня имеющая ноль значения в функциональном программировании.
>размер кола уменьшается
Особенно после прописывания всех типов ага
>последний пункт
Жабоговно и прочая ненужная ооп хуита.
>статическая типизация
>Хуйня имеющая ноль значения в функциональном программировании.
Ты или совсем конченный дибил, или тролль. Ну я склоняюсь ко второму, больше не буду байтиться.
>то нужно брать во внимание на каком языке написано приложение, с использованием каких фреймворков.
Vue \ Vuetify
https://vuetifyjs.com/en/components/selection-controls/
Чекбокс, блин: квадратик, который помечается галочкой.
Не ползунок, не радио-кнопка.
Эрланг, Лисп, питон, руби - языки с динамической типизацией.
Но ты продолжай уверять себя что проблема в типизации а не твоих кривых руках.
Я считаю по другому, но спорить не буду.
p.s. Там ещё несколько попыток в месяц на каждый тест и показывают после прохождения что-то типа сертификата с баллами.
Я тебя понял, ты во всю ненавидишь ооп во всех языках и дрочишь на фп с динамической типизацией. Сам небось пишешь хеловорды на жсе. Почему так? Что тебя к этому привело, расскажи.
То что ооп консервативное говно в то время как фп красиво, модно, молодежно и главное эффективно
Тебя на ts никто не заставляет писать стопицот абстракций как у жавамакак. Это просто дополнение, которое сильно упрощает разработку.
> В целом концепцию конечно понимаю, но совершенно без малейшего понятия где это применять и нахуя оно нужно.
Значит не понимаешь, учи еще.
Да нигде просто дочитал до этой хуйни, ооп как бы подразумевает активное использование обьектов, но тут хуяк и пишут мол функции-конструкторы более гибкие, я даже хуй знает че делать
Это разные синтаксические стили. Там где используешь классы - используй конструктор, функцию конструктор. Там где поддержка устаревшего синтаксиса, или ты познал дзен и понял что классы в жс говно и хочешь писать на прототипах, то там уже юзаешь объектный синтаксис и прототипы.
Ты хотел сказать что весь фронтред на либах , которые написали в соответстви со своими хотелками, несколько задротов, превосходящие по скиллу среднюю фронтред макаку на бесконечность?
Ты не пишешь в стиле ФП, ты оператор фреймворка. Был бы фреймворк ООП - ты бы писал ООП.
И да Lisp появлися в 1958 году.
Я могу написать любой реакт, редакс код на ванильном жс. Но зачем если можно упростить себе жизнь. Алсо это демагогия. Утвержление о том что фп непопулярно опровергнуто
Ты можешь его написать - потому что у тебя под носом уже есть реально существующий редакс и реакт. Если бы этого не было - ты бы не выбрал ФП. Не факт что ты бы вообще знал про эту парадигму.
>>Утвержление о том что фп непопулярно опровергнуто
Я утверждал что ФП не популярно? Кокой ты категорично - боевитый, лол.
ФП это вообще не новости, ФП как концепция старше ООП. И то что оно стало вдруг популярным в довольно узкой области программирования вэб-морд не дает возможности делать никаких выводов. Тем более причины популярности заключаются в большей степени в том что создатели фреймворков решили что вам будет нравиться.
Не совсем понимаю твою мысль. Я понимаю фп благодаря редаксу и реакту? И они его популяризовали? Допустим. Что в этом плохого? Алсо веб это не узкая сфера а огромный такой кусочек рынка. Что же касается других отраслей то они слишком консервативны в отличии от веба.
>>Что в этом плохого?
Ничего абсолютно. Но это не делает ФП граалем и священной коровой.
>>то они слишком консервативны в отличии от веба.
Они не консервативны, в них цена ошибки другая. Облажаешься ты с вэб-формой, ничего страшного из-за косяка не произойдет, ну потеряет бизнес клиента другого, не продаст ему не нужную ему хуиту или кусок информационного мусора.
В огромном количестве направлений такой подход не допустим. Недавние боинги это четко показали.
Чем надежнее тем лучше.
Ващета ФП очень надёжное. Просто спецы дорогие поскольку языки редкие. Тупо ооп говно захватило рынок как сорняк.
Есть родительский компонент (Р), в который нужно получать несколько вэлью из разных дочерних компонентов (Д), которые находятся на разной вложенности.
Как это реализовать с минимальным количеством ререндеров?
Я закинул общий стейт с переменными всех значений, которые мне нужны в Р компонент и контекстом выдал ссылки на функцию изменения этого стейта.
Соответственно, при вводе в инпут информации, у меня ререндерится весь Р и все Д компоненты. Как это правильно реализовывается?
Придумал такой вариант, но это говно, мне кажется и так лучше не делать, хоть и помогло для конкретно этого инпута.
Р компонент
const [state, setState] = useState({
number: function numFn(value, fn) {
fn(value);
return value;
}
(дальше остальные переменные)
});
Д компонент
const [numState, setNumState] = useState("");
onChange={(e) => state.number(e.target.value, setNumState)}
мимо лох
Есть родительский компонент (Р), в который нужно получать несколько вэлью из разных дочерних компонентов (Д), которые находятся на разной вложенности.
Как это реализовать с минимальным количеством ререндеров?
Я закинул общий стейт с переменными всех значений, которые мне нужны в Р компонент и контекстом выдал ссылки на функцию изменения этого стейта.
Соответственно, при вводе в инпут информации, у меня ререндерится весь Р и все Д компоненты. Как это правильно реализовывается?
Придумал такой вариант, но это говно, мне кажется и так лучше не делать, хоть и помогло для конкретно этого инпута.
Р компонент
const [state, setState] = useState({
number: function numFn(value, fn) {
fn(value);
return value;
}
(дальше остальные переменные)
});
Д компонент
const [numState, setNumState] = useState("");
onChange={(e) => state.number(e.target.value, setNumState)}
мимо лох
Ебень, редакс используй. UseState только для локального стейта компонента который больше нигде не используется
> Как это правильно реализовывается?
Именно так как ты сделал. Ререндерится и ререндерится, в чем проблема? Если производительность скатится в говно — начнешь дебаунсить инпут или мемоизировать компоненты.
Дед, проснись, зачем тебе редакс в 2к20 когда есть контекст и useReducer? Уже и сам Абрамов писал что редакс не очень.
Потому что ебень, редакс оптимизирован и не обновляет все дерево компонентов в отличии от твоего юзредюсера
Накидай ещё контекст, будут обновляться только те, которые контекст потребляют.
Особенно useEffect. Явно какой-то демон из преисподней для говнокодеров выдумал
Именно. Пушто Редакс тем и хорош что оптимизирован в отличии от реактовских костылей
Требуется сделать простой круд на ноде и PostgreSQL без использования ORM'а (laba.js, ага, но нужно наиболее приближённое к продакшену решение). Сам круд сделать не составило труда. Но вот как организовать работу с БД не могу решить. Под работой с БД я имею ввиду создание начальной структуры, накатывание данных, миграции и тому подобное. Посоветуйте гайдов как это лучше организовать?
Пока мысль такая, что нужен скрипт который будет проверять схему бд, точнее её версию. По факту проверки накатывать скрипты миграций, либо делать роллбэк (db:migrate). И нужен скрипт инициализации, который создаст таблицу для схемы, если её нет, и внесёт начальные данные если нужно (db:create). План 10 из 10?
Инбифо: возьми knex и не еби себе мозг
Не обновляется дерево компонентов каждый раз. Шизик делает вид что не видел в прошлый раз)))
Тогда на ферму можно, там лес и река.
Можешь городским архитектором, будешь высокие небоскребы рисовать и длинные мосты.
В правительство в конце концов, все туда идут и ты сможешь. В рыбнадзор например.
Да. В основном так и есть. Но я говорил про тру функциональные языки. Типа эрланга или кложи
Контекст тоже обновляет только подписанные на него части, а не все дерево. Держи вот, накидал редакс на минималках: https://codesandbox.io/s/sad-shape-qe91f
В могилу.
Ок, а если выйти за пределы манямира детсадовских проэктов аля кауэнтер? Скажем в проекты где десятки компонентов? И компоненты которые должны контекстом воспользоваться в разных частях приложения? То то и оно очередной костыль который сосет у редакса и любого другого адекватного Стейт менеджера. Когда устроишься на большой проект попробуй предложить использовать контекст вместо редакса. И постарайся запомнить лицо с которым на тебя посмотрят как на долбоеба
Ты уже один раз обосрался из-за незнания матчасти, но все еще продолжаешь строить из себя самого умного? Это зря, так ведь и второй раз обосраться можно.
>Когда устроишься на большой проект попробуй предложить использовать контекст вместо редакса. И постарайся запомнить лицо с которым на тебя посмотрят как на долбоеба
Я смотрю аргументы закончились и пошло «ой что люди подумают». Это тоже зря. Работа программиста в том числе и про постоянное развитие, поиск новых решений и критический взгляд на существующие. Если для тебя так важно мнение других людей, то обрати внимание на этот твит: https://twitter.com/dan_abramov/status/1241756566048694272
Чтобы не тащить лишнюю либу и не ебаться с 'лаконичным' бойлерплейтом ебаного редакса.
То есть вместо ответа на прямой вопрос ты предпочел вилять жопой и отделаться демагогией. Но я повторю вопрос. Что будешь делать когда у тебя много компонентов и каждому из них нужно будет что нибудь из контекста? Я знаю что ты не знаешь ответа на этот вопрос. Так что можешь не пытаться, лол, я все пойму
>>84997
Леол, это так не работает дружок пирожок. Сразу видно безмозглого вкатывальщика который не понимает что к чему. Ты конечно можешь отказаться от редакса. Но тогда тебе нужен будет другой Стейт менеджер. Скажем мобх. Но контекст не является заменой редакса поскольку точно так же ререндерит компоненты подписанные на него. А в большом приложении таких может быть много кто будет дергать инфу из стейта. Поэтому придурковатые идеи местных макак так смешно выглядят
>каждому из них нужно будет что нибудь из контекста?
Буду подключать каждый из них к контексту так же, как подключал к редаксу. Ты что, тупой?
И обновляться будут все подписанные на него части коих может быть много. Ахаха какой же ты дебил
То о чем и говорил. В очередной раз манямир противников редакса не выдержит испытания реальными большими приложениями
Ваще похуй, могу себе позволить.
>Что будешь делать когда у тебя много компонентов и каждому из них нужно будет что нибудь из контекста?
Подпишу их все на контекст, очевидно, же. Хинт: тебя никто не заставляет хранить весь стейт приложения в одном контексте, их можно быть сколько угодно. Что, кстати, значительно правильнее, чем глобальная свалка.
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
ПЕРЕКАТ >>1785011 (OP)
Хз брат, столько платят в моей мухосране
Разбираться в Редаксе != фигачить однотипный Редакс-код по бойлерплейтам. Если бы разбирался, то понимал бы основные типы данных вроде массивов и что такое редьюсер (у которого нет стейта лол - это чистая функция). Редакс стор с экшенами - это по сути БД которая существует в рантайме приложения.
На плюсах не работал. Просто лабы в универе делал. На Шарпе делал винприложение (калькулятор графов) и игру на Юнити (бизнес-логику включая структуры данных для уровней и пр., делал с нуля). На Жабе писал пару консольных приложулек (игру "угадай число" и генератор слов для конланга).
> Или просто понял что не твоё и решил на ЖС перейти?
Просто с ЖС найти работу с просранными полимерами проще чем на Жабе, Шарпе и тем более Плюсах. Проще чем с ЖС только с пхп, но это какое-то дно уже обычно (да и обилие говнокода пугает на нем) в итоге на первой работе в одном проекте все же имел дело с пыхоговнокодом от лида веб-дева с хаками из 00х. Сам ЖС мне нравится. Но на текущем фронте много тупой работы. Самое сложное что может быть - это взять данные с апишки, посчитать по готовым формулам, отформатировать, показать их на экране. Ну или отправить данные на контракт, провалидировать формочку. Бесит из технических моментов lack of configuration ability в некоторых сторонних либах (вроде React Slick). Из нетехнических - пиксельдрочество в верстке и иногда желание дезингера или ночальника РАДИКАЛЬНО перехерачить ифрейм-виджеты. Из-за этого иногда приходится городить хаки, ломающие структуру программы которые я сам же ненавижу.
>>83431
> Значит ты вкатился в программирование намного раньше 21.
Да. Первыми ЯПами вообще были Паскаль и Питон (о первом узнал из передачи на СГУ-ТВ в 14 лет). Второй до сих пор использую, но только как скриптовый язык для рассчетов, кодогенерации, вызова системных процедур.
> Это ты в жс вкатился в 21, уже с опытом.
Первый боевой опыт у меня был как раз на ЖС.
Да и вкатиться то вкатился. Но плотно заниматься программированием начал только с 2к18 года из-за хронической депрессии одно время просирал свое время на игори и аниму, сейчас фикшу это с помощью гзт.
Это копия, сохраненная 7 марта 2021 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.