Это копия, сохраненная 18 ноября 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Для программирования на ХТМЛ https://codepen.io/pen/
Для Ноды с консолькой https://repl.it/languages/nodejs
Для фреймворков https://codesandbox.io/
Залить, задеплоить страничку, сервер, контейнер https://zeit.co/now
Аноны, хочу получить советов мудрых, высераю пару предложений и код на скриншоте, а получаю смехуёчки. Как быть?
Если рассчитываешь получить дельный ответ, формулируй правильно вопрос:
У меня есть проблема\задача (А) %текст-ошибки или задача%. Я пытался решить ее так %кусок-кода-опционально% (Б), у меня не вышло %текст-ошибки%. Я погуглил, почитал документацию и попробовал сделать так %кусок-кода-%(В), но получаю ошибку (Г).
Сделай песочницу по ссылкам выше для ясности и удобства. Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Нет, бабушка, их съел кот Васька.
Анончики, как скачать изображение по ссылке? Посмотрел в интернетах, там либо просто изображение открывает, либо ничего не происходит.
Браузер последняя лиса, но желательно чтоб кроссплатформлено все было.
Ну я так пробовал - ничего не происходит. Может проебался где?
Загугли, я быстро нашел почему это происходит. И в download задается имя файла, а не ссылка на него.
> Странное приведение типов, комплексные правила, неявные ошибки
Язык разрабатывался с расчётом на доступность Веба для авторов любого вида. Даже плохой код должен хоть как-то работать. А тебя не обязывает всеми этими странностями пользоваться.
> Почему бы не сделать нормальную версию языка
Выгоды сомнительны, а Веб ломать нельзя.
http://exploringjs.com/es6/ch_one-javascript.html
> Динамика, не компиляется, недоязык
Странно, что у тебя после объявления всех типов и компиляния осталось время покакать в этом треде, старичок.
> Что там и когда происходит в этом одном потоке Event Loop
https://www.youtube.com/watch?v=8cV4ZvHXQL4
https://www.youtube.com/watch?v=j4_9BZezSUA
> Я могу сделать запрос с сервера к чужому АПИ, почему с клиента такой запрос не работает
Для твоей безопасности в браузерах принудительно работает ограничение доступа к кросс-доменным ресурсам
https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
> Хочу получить доступ к файлам на винте
Тебе бы не хотелось сидеть в таком Вебе, где произвольный сайт может получить доступ к твоим файлам.
https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications
В К А Т И Т Ь С Я
Возраст, пол, образование не имеют решающего значения. Времени потребуется год с нуля, но это не точно.
https://ru.hexlet.io/blog/categories/success
https://medium.freecodecamp.org/inspirational-success-stories-from-self-taught-web-developers-4f6f375cf17d
Английский обязательно. Проследуй в /fl за гайдом.
Учись учиться.
https://www.youtube.com/watch?v=5MgBikgcWnY
https://www.youtube.com/watch?v=vd2dtkMINIw
https://www.youtube.com/watch?v=IhuwS5ZLwKY&list=PL8dPuuaLjXtNcAJRf3bE1IJU6nMfHj86W
Ты помнишь образы и связи, а не конспекты.
https://www.youtube.com/watch?v=gj3ZnKlHqxI
https://www.youtube.com/watch?v=5nTuScU70As
Ты — это то, что ты делаешь каждый день.
https://www.youtube.com/watch?v=eLYNM5QAnpw
https://www.youtube.com/watch?v=JAnNUhWJQI8&list=PL5faAYlGYYoGr49h1WMInNSd5Ya1uu7KT&index=6
https://habitica.com/
Сколько помидорок сможешь сделать за неделю?
https://www.youtube.com/watch?v=H0k0TQfZGSc
https://pomotodo.com/
Математика. Не принципиально, но очень прокачивает.
https://www.khanacademy.org/math
HTML, CSS. Ничего сложного.
Требует только усидчивости. Как раз подойдёт для того, чтоб в простых условиях выработать правильные привычки и дисциплину. Проходи вёрстку на
https://htmlacademy.ru/courses
Бесплатного будет достаточно, но можно после этого и подписку купить на месяц, это мотивирует.
В Кокодемии тебе будут показывать всякие теги, правила. Ты дополнительно находи каждый на
https://developer.mozilla.org/en-US/
(в результатах поиска справа категории, оставь пока только HTML, CSS)
В этой “вики”-документации описаны подробности для всякого в Вебе. Тебе не надо учить это всё наизусть. Достаточно просто бегло ознакомиться, пропитываться, иметь представление. В каждой статье есть раздел “Specification”, там тебя чаще всего интересует ссылка “Living standard”. Это спецификации языка, “спеки”, они написаны очень формально. В начале всё будет совсем непонятно, это норма. Тебе просто надо привыкать к подобным документам, это сделает из макаки человека.
Можно найти ещё много полезностей, типа
https://htmlreference.io/
https://cssreference.io/
Параллельно с Кокодемией по вечерам посмотри:
https://www.youtube.com/watch?v=Sy_wba7l1UU&list=PLawfWYMUziZqyUL5QDLVbe3j5BKWj42E5
https://www.youtube.com/watch?v=tpIctyqH29Q&list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo
На этом этапе стоит начать формировать информационный фон. Собирай подписки на рассылки, Ютюб, Твиттер. Но помни, если ты что-то смотришь-читаешь, то стоит потратить минимум столько же времени на написание кода по мотивам. Иначе это обычная бестолковая прокрастинация. Или же это может быть толковая рекреация — лучше посмотреть интересный доклад, чем очередной сериал.
Javascript. Шутки кончились.
https://www.youtube.com/watch?v=rrRZZ_3licM&list=PLo6puixMwuSMIB7x6MNBTNQA3P3Mqo_33
Очень дружелюбен к ньюфаням:
https://javascript.info/
У него есть предыдущая версия на русском, но она безнадёжно устарела. Здесь среди прочего описываются многие тонкости языка, которые полезны для общей картины, но на деле вряд ли пригодятся, не фрустрируй. Задачки обязательно делать; если задачка совсем (за 10 минут) не получается, то прилежного разбора и воспроизведения готового решения будет вполне достаточно.
Искать каждый раз подробности на MDN ты уже имеешь привычку, не забывай пользоваться. Теперь тебя интересует Draft в спеках.
Как писать для людей:
https://github.com/ryanmcdermott/clean-code-javascript
Ссылкота по понятиям:
https://github.com/leonardomso/33-js-concepts
Тут уже можно начать искать работку и получать опыт. Удача любит смелых. Но не ври о своём уровне работодателю, а главное — себе.
Если ещё есть время и хочется подробностей, повторений, закреплений, то
https://www.freecodecamp.org/
годнота, интерактивно обозревает всё, плюс обзор некоторых приблуд, идеи проектов для портфолио, задачки на алгоритмы.
Подготовка к собеседованию, задачки, соревнования:
https://codesignal.com/
Концептуальный разбор, полезное чтиво:
https://github.com/getify/You-Dont-Know-JS
https://github.com/getify/Functional-Light-JS
Исчерпывающе подробные справочники:
http://speakingjs.com/es5/index.html
http://exploringjs.com/es6/index.html
http://exploringjs.com/es2016-es2017/index.html
http://exploringjs.com/es2018-es2019/toc.html
Массивная ссылкота по всем темам:
https://frontendmasters.com/books/front-end-handbook/2018/
Дизайн, редактура, прочие смежные дела:
https://bespoyasov.ru/front-not-pain/
Node.js позволит тебе вырваться за пределы браузера, сделать свой сервер, автоматизировать рутину в разработке и жизни.
Нода это уже отдельная среда, человечного MDN’a тут нет. Но ты же уже не боишься серьёзных документаций. Нужно сразу найти доки Ноды “nodejs api” и сверяться с ними.
https://www.youtube.com/watch?v=fBNz5xF-Kx4
https://www.youtube.com/watch?v=C7TFgfY7JdE
https://medium.freecodecamp.org/the-definitive-node-js-handbook-6912378afc6e
https://www.youtube.com/watch?v=WBcHgaoHh1k&list=PLHhi8ymDMrQZmXEqIIlq2S9-Ibh9b_-rQ
https://www.youtube.com/watch?v=o3ka5fYysBM
Где-то на этом этапе ещё нужно разобраться с
Linux
https://itsfoss.com/getting-started-with-ubuntu/
https://linuxjourney.com/
shell
https://tproger.ru/translations/bash-cheatsheet/
https://explainshell.com/
https://www.shellscript.sh/
Git
https://tproger.ru/translations/difference-between-git-and-github/
https://githowto.com
https://git-scm.com/book/ru/v2
Docker
https://docs.docker.com/install/
https://training.play-with-docker.com/beginner-linux/
https://blog.risingstack.com/how-to-debug-a-node-js-app-in-a-docker-container/
Приложение. Всё по-взрослому.
Теперь пора делать что-то серьёзное, применять на практике. Имеется множество готовых приблуд, можно делать приложения любой сложности.
В качестве идеи для проекта стоит брать что-то близкое тебе, чтоб с душой. Можно воспроизвести используемое тобой приложение. Можно сделать что-то полезное тебе в быту — учёт просмотренных тайтлов, счётчик калорий, агрегатор новостей.
Писать здесь гайды к каким-то приблудам нет никакого смысла, так как каждая вполне достойна отдельного треда и имеет свой сайт, где с гайдами постарались. Жизнь готовила тебя к этому, ты сможешь разобраться самостоятельно. Алгоритм такой:
0 - находишь на Ютюбе любой обзорный видос, чтоб страх неизвестного пропал;
1 - находишь официальный сайт приблуды;
2 - на офсайте делаешь Tutorial / Getting started;
3 - на офсайте читаешь доки, АПИшки по диагонали;
4 - начинаешь делать оригинальные нужные штуки, сверяясь с доками;
5 - попробуй поискать “github awesome приблуда”;
6 - отважно посмотри исходники.
Сейчас с большим отрывом самый популярный стек это React + Express + Mongo. Получается что-то такое:
https://www.youtube.com/watch?v=PBTYxXADG_k&list=PLillGF-RfqbbiTGgA77tGO426V3hRF9iE
Оформи такое в портфолио на Гитхабе и можешь уверенно искать работку.
А как же другие приблуды? Сложно и долго осилить только первый язык, фреймворк, что-либо. Следующий ты освоишь в считанные недели, а то и дни.
При перекате не забудь тему и тег. Шапка с разметкой:
https://pastebin.com/CUeaY92u
> Странное приведение типов, комплексные правила, неявные ошибки
Язык разрабатывался с расчётом на доступность Веба для авторов любого вида. Даже плохой код должен хоть как-то работать. А тебя не обязывает всеми этими странностями пользоваться.
> Почему бы не сделать нормальную версию языка
Выгоды сомнительны, а Веб ломать нельзя.
http://exploringjs.com/es6/ch_one-javascript.html
> Динамика, не компиляется, недоязык
Странно, что у тебя после объявления всех типов и компиляния осталось время покакать в этом треде, старичок.
> Что там и когда происходит в этом одном потоке Event Loop
https://www.youtube.com/watch?v=8cV4ZvHXQL4
https://www.youtube.com/watch?v=j4_9BZezSUA
> Я могу сделать запрос с сервера к чужому АПИ, почему с клиента такой запрос не работает
Для твоей безопасности в браузерах принудительно работает ограничение доступа к кросс-доменным ресурсам
https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS
> Хочу получить доступ к файлам на винте
Тебе бы не хотелось сидеть в таком Вебе, где произвольный сайт может получить доступ к твоим файлам.
https://developer.mozilla.org/en-US/docs/Web/API/File/Using_files_from_web_applications
В К А Т И Т Ь С Я
Возраст, пол, образование не имеют решающего значения. Времени потребуется год с нуля, но это не точно.
https://ru.hexlet.io/blog/categories/success
https://medium.freecodecamp.org/inspirational-success-stories-from-self-taught-web-developers-4f6f375cf17d
Английский обязательно. Проследуй в /fl за гайдом.
Учись учиться.
https://www.youtube.com/watch?v=5MgBikgcWnY
https://www.youtube.com/watch?v=vd2dtkMINIw
https://www.youtube.com/watch?v=IhuwS5ZLwKY&list=PL8dPuuaLjXtNcAJRf3bE1IJU6nMfHj86W
Ты помнишь образы и связи, а не конспекты.
https://www.youtube.com/watch?v=gj3ZnKlHqxI
https://www.youtube.com/watch?v=5nTuScU70As
Ты — это то, что ты делаешь каждый день.
https://www.youtube.com/watch?v=eLYNM5QAnpw
https://www.youtube.com/watch?v=JAnNUhWJQI8&list=PL5faAYlGYYoGr49h1WMInNSd5Ya1uu7KT&index=6
https://habitica.com/
Сколько помидорок сможешь сделать за неделю?
https://www.youtube.com/watch?v=H0k0TQfZGSc
https://pomotodo.com/
Математика. Не принципиально, но очень прокачивает.
https://www.khanacademy.org/math
HTML, CSS. Ничего сложного.
Требует только усидчивости. Как раз подойдёт для того, чтоб в простых условиях выработать правильные привычки и дисциплину. Проходи вёрстку на
https://htmlacademy.ru/courses
Бесплатного будет достаточно, но можно после этого и подписку купить на месяц, это мотивирует.
В Кокодемии тебе будут показывать всякие теги, правила. Ты дополнительно находи каждый на
https://developer.mozilla.org/en-US/
(в результатах поиска справа категории, оставь пока только HTML, CSS)
В этой “вики”-документации описаны подробности для всякого в Вебе. Тебе не надо учить это всё наизусть. Достаточно просто бегло ознакомиться, пропитываться, иметь представление. В каждой статье есть раздел “Specification”, там тебя чаще всего интересует ссылка “Living standard”. Это спецификации языка, “спеки”, они написаны очень формально. В начале всё будет совсем непонятно, это норма. Тебе просто надо привыкать к подобным документам, это сделает из макаки человека.
Можно найти ещё много полезностей, типа
https://htmlreference.io/
https://cssreference.io/
Параллельно с Кокодемией по вечерам посмотри:
https://www.youtube.com/watch?v=Sy_wba7l1UU&list=PLawfWYMUziZqyUL5QDLVbe3j5BKWj42E5
https://www.youtube.com/watch?v=tpIctyqH29Q&list=PL8dPuuaLjXtNlUrzyH5r6jN9ulIgZBpdo
На этом этапе стоит начать формировать информационный фон. Собирай подписки на рассылки, Ютюб, Твиттер. Но помни, если ты что-то смотришь-читаешь, то стоит потратить минимум столько же времени на написание кода по мотивам. Иначе это обычная бестолковая прокрастинация. Или же это может быть толковая рекреация — лучше посмотреть интересный доклад, чем очередной сериал.
Javascript. Шутки кончились.
https://www.youtube.com/watch?v=rrRZZ_3licM&list=PLo6puixMwuSMIB7x6MNBTNQA3P3Mqo_33
Очень дружелюбен к ньюфаням:
https://javascript.info/
У него есть предыдущая версия на русском, но она безнадёжно устарела. Здесь среди прочего описываются многие тонкости языка, которые полезны для общей картины, но на деле вряд ли пригодятся, не фрустрируй. Задачки обязательно делать; если задачка совсем (за 10 минут) не получается, то прилежного разбора и воспроизведения готового решения будет вполне достаточно.
Искать каждый раз подробности на MDN ты уже имеешь привычку, не забывай пользоваться. Теперь тебя интересует Draft в спеках.
Как писать для людей:
https://github.com/ryanmcdermott/clean-code-javascript
Ссылкота по понятиям:
https://github.com/leonardomso/33-js-concepts
Тут уже можно начать искать работку и получать опыт. Удача любит смелых. Но не ври о своём уровне работодателю, а главное — себе.
Если ещё есть время и хочется подробностей, повторений, закреплений, то
https://www.freecodecamp.org/
годнота, интерактивно обозревает всё, плюс обзор некоторых приблуд, идеи проектов для портфолио, задачки на алгоритмы.
Подготовка к собеседованию, задачки, соревнования:
https://codesignal.com/
Концептуальный разбор, полезное чтиво:
https://github.com/getify/You-Dont-Know-JS
https://github.com/getify/Functional-Light-JS
Исчерпывающе подробные справочники:
http://speakingjs.com/es5/index.html
http://exploringjs.com/es6/index.html
http://exploringjs.com/es2016-es2017/index.html
http://exploringjs.com/es2018-es2019/toc.html
Массивная ссылкота по всем темам:
https://frontendmasters.com/books/front-end-handbook/2018/
Дизайн, редактура, прочие смежные дела:
https://bespoyasov.ru/front-not-pain/
Node.js позволит тебе вырваться за пределы браузера, сделать свой сервер, автоматизировать рутину в разработке и жизни.
Нода это уже отдельная среда, человечного MDN’a тут нет. Но ты же уже не боишься серьёзных документаций. Нужно сразу найти доки Ноды “nodejs api” и сверяться с ними.
https://www.youtube.com/watch?v=fBNz5xF-Kx4
https://www.youtube.com/watch?v=C7TFgfY7JdE
https://medium.freecodecamp.org/the-definitive-node-js-handbook-6912378afc6e
https://www.youtube.com/watch?v=WBcHgaoHh1k&list=PLHhi8ymDMrQZmXEqIIlq2S9-Ibh9b_-rQ
https://www.youtube.com/watch?v=o3ka5fYysBM
Где-то на этом этапе ещё нужно разобраться с
Linux
https://itsfoss.com/getting-started-with-ubuntu/
https://linuxjourney.com/
shell
https://tproger.ru/translations/bash-cheatsheet/
https://explainshell.com/
https://www.shellscript.sh/
Git
https://tproger.ru/translations/difference-between-git-and-github/
https://githowto.com
https://git-scm.com/book/ru/v2
Docker
https://docs.docker.com/install/
https://training.play-with-docker.com/beginner-linux/
https://blog.risingstack.com/how-to-debug-a-node-js-app-in-a-docker-container/
Приложение. Всё по-взрослому.
Теперь пора делать что-то серьёзное, применять на практике. Имеется множество готовых приблуд, можно делать приложения любой сложности.
В качестве идеи для проекта стоит брать что-то близкое тебе, чтоб с душой. Можно воспроизвести используемое тобой приложение. Можно сделать что-то полезное тебе в быту — учёт просмотренных тайтлов, счётчик калорий, агрегатор новостей.
Писать здесь гайды к каким-то приблудам нет никакого смысла, так как каждая вполне достойна отдельного треда и имеет свой сайт, где с гайдами постарались. Жизнь готовила тебя к этому, ты сможешь разобраться самостоятельно. Алгоритм такой:
0 - находишь на Ютюбе любой обзорный видос, чтоб страх неизвестного пропал;
1 - находишь официальный сайт приблуды;
2 - на офсайте делаешь Tutorial / Getting started;
3 - на офсайте читаешь доки, АПИшки по диагонали;
4 - начинаешь делать оригинальные нужные штуки, сверяясь с доками;
5 - попробуй поискать “github awesome приблуда”;
6 - отважно посмотри исходники.
Сейчас с большим отрывом самый популярный стек это React + Express + Mongo. Получается что-то такое:
https://www.youtube.com/watch?v=PBTYxXADG_k&list=PLillGF-RfqbbiTGgA77tGO426V3hRF9iE
Оформи такое в портфолио на Гитхабе и можешь уверенно искать работку.
А как же другие приблуды? Сложно и долго осилить только первый язык, фреймворк, что-либо. Следующий ты освоишь в считанные недели, а то и дни.
При перекате не забудь тему и тег. Шапка с разметкой:
https://pastebin.com/CUeaY92u
>> Почему бы не сделать нормальную версию языка
>Выгоды сомнительны, а Веб ломать нельзя.
Те, жабаскрипт это такая жаба с горой говна ради обратной совместимости под капотом? Нахуй так жить.
Там в комментах, автору все расписали? Бенчмарки подстроены чуть более чем полностью
надо [..."1234".split("")].map(i => parseInt(i))
коллбэк который вызывает парсе инт а не саму парсе инт
...мне не очень нравится что деконструкция работает на иммутабельных строках
ты передаешь ссылку на функцию а в данном случае надо передавать ссылку на функцию которая вызывает нужную тебе функцию т.к. поведение существующих функций в данном случае зависит от их имплементации
например [..."1234"].map(Number) работает
скорее всего дело в том, что parseInt строго говоря хочет 2 аргумента число и систему счисления, а вот Number нужен один
parseInt("1", 0) //1
parseInt("2", 1) //NaN
parseInt("3", 2) //NaN
parseInt("4", 3) //NaN
а вот "4321" дало бы [4, NaN, NaN, 1]
parseInt("4", 0) //4
parseInt("3", 1) //NaN
parseInt("2", 2) //NaN
parseInt("1", 3) //1
Соус есть?
А где ты работаешь?
ты хочешь какого ответа, чтобы тебе сказали банальность вроде ну так учи ангуляр или переезжай?
это хардкорно
Нет, пиздеж.
> Вкатываюсь в ваш язык. Услышал тут краем уха, что нужно всегда тройное равно === использовать. Ето правда?
Не нужно, используй Object.is.
Когда будешь в офисе чалиться, тебя будут заставлять писать на одно равно больше и пиздить палкой за непослушание. Это часть ебанутого, но, сука, общепринятого стандарта писанины кода от Airbnb.
Мда почитал справку а там
Object.is(0, -0) //false
Это же чей воспаленный мозг породил, чем дольше врубаюсь в JS тем выше убеждение, что количество огромное количество вакансий на него связанно с тем, что норм программеры не хотят нырять в это говно.
Мне не привыкать заниматься хуйней, на прошлой работе заставляли оборачивать код в скобки {} даже если в блоке всего одна строчка. И чтобы закрывающая всегда была на отдельной строке. Правда это был совсем другой язык
Подозреваю, что коллбек который должен закрыть файл у тебя не вызывается. Потерял ты его как то
> Мда почитал справку а там
> Object.is(0, -0) //false
> Это же чей воспаленный мозг породил
И что не так? А ещё в жс, прикинь, есть отрицательная и положительная бесконечности, пиздец, а?
Бесконечность говно без задач
Какая нода? В какой-то старой версии была похожая бага, дескриптор файла удерживался после его использования на винде.
>Какая нода?
12.12, винда. Буду тогда бороться с этой холерой, раз это не норма. Обычно завершившийся стрим проблем не создаёт даже без дестроя.
"abcd".split`b`
Можешь по подробней рассказать?
Ебанутая хуйня.
[String.fromCharCode(0b10)] и [unescape('%u0002')] локально работают, но у них на сайте - нихуя, потому что хуй пойми как на сервере валидация происходит.
Я прошел, ебать это так логично пиздец
Охуенные задания, мне нравятся, сейчас буду 3 заданием мозги ебать, там регулярка
'\u{6}' = Infinity;
>нихуя, потому что хуй пойми как на сервере валидация происходит.
Они тебе в задании написали, не используй функции, поэтому и не проходит
Чтобы вы не ругались скажу сразу, что вкатываться не собираюсь, появилось свободное время и решил познать что-то новое
>Они тебе в задании написали, не используй функции, поэтому и не проходит
> Не допускается ответ в виде вызова функции
> ответ в виде вызова функции
Это же про значение, а не про имя свойства.
Алсо, корректный '\u0002' тоже не работает на сайте. Видимо, у них там ограниченный матчинг и их не ебут другие варианты, отличные от.
Сорян, все ок.
Просто для себя, чтобы длказать себе, что могу это освоить. Имею хорошую должность которую не стану бросать ради призрачного шанса вкатиться в айти, да и зарабатываю я поболее java scripterov, ну конечно поменьше успешноджаверов 300кк сек.
Тебе это зачем нужно, додик? Освой лучше что-нибудь, от чего потом сможешь хотя бы получить удовольствие, если не пользу.
Тогда изучай Хаскель там Лисп, Раст. Я не шучу. Что ты можешь себе доказать изучив бейсик для даунов.
Тогда послветуй пожалуйста, что-нибудь. Последний раз кодил в унике на делфи в 2014!!! году
Да зачем тебе кодить, еб твою мать? У тебя есть какая-то идея которую ты хочешь реализовать?
Понял. Спасибо большое
5 летний опыт.в 21 веке надо что нибудь посерьезней.
какие уроки даун?
открой доку по реакту. пройдись. открой видос где пилится дефолтный вонючий заебавший всех круд.
все. на 90% ты реактодебил
Бамп вопросу
Сук, как корректно бигинт распарсить? Это же и так очевидно, что нужно сделать, но блядь, ебанный формат строки не дает скормить ее бигинту.
Да нахуя ты такое подсказываешь, там хорошие задания, заставляют гуглить и думать
Согласен, решение давать не нужно, достаточно тонко намекнуть.
Ты фронт или верстала? Там задания на логику и знание языка, где там побитовость?
Мы вам перезвоним
Намекни плз как распарсить число с андерскорами. Я уже пропозалы намерик сепаратора вдоль и поперек перечитал, нихуя годного нет. В задании сказано, что что-то специфичное для хрома, но я хз, пересмотрел все методы в сонсольке, нихуя не съедает.
const arr = "1234".split("").map(x => parseInt(x, 10));
map передаёт вторым параметром index в parseInt
Ты заебал. Сделай уже хоть что нибудь и кинь сюда на суд обществености. Тебе пояснят по факту, да и тебе полезней будет и навык отточишь и запомнишь лучше
Я кстати не понял, почему сруд надо писать на среакте, если сруд пишется на ексрессе с сронгой, а уже потом среакт делает сруд запросы
А ты как хотел? Тебе нужно и запросы написать и обработчики этих запросов. Ты чего вообще думаешь, как те себе веб программирование представляешь
А ты декомпозицию сделай. Правильно так сказать разбей задачу отоброжения странички на элементы.
потому что концепция спа предполагает что большая часть логики на клиенте а не на бэке
>Регулярками
ЩИТО? Из регулярок ты получишь массив строк, которые ты еще должен скастить в числа.
Не, там что-то проще. Я пошел с конца:
на выхлопе строка, очевидно преобразованная из числа с заданным радикcом. До этого сджойненный массив - сиречь строка с андерскорами. То есть входная операция - преобразование в число.
Дело в том, что числа с лодаш сепараторами вида 1_234_567 - вполне легальные, но они в строке. Надеялся на бигинт, но тоже не парсит. Ебанный колобок.
Дано:
formatNumbers = (...nums) => REPLACEME(nums.join('_'))['foo'](2 bar 2);
Ассерты:
formatNumbers(1, 233, 3, 22) === "4550652" && formatNumbers(332, 12, 2) === "1210532"&& formatNumbers(44, 232, 342, 1) === "3227250735"
Foo и Bar - очевидны, не пишите, плз.
Я не знаю, как скастить строки вида: '1_233_3_22' в число.
Примечение:
Решение работает только в хроме. REPLACEME, скорее всего, не должен состоять из вызова статических методов, спецсимволов типа регулярок и т.д., потому как в таком случае парсер подсвечивает решение как лексическую ошибку.
Заменить REPLACEME, foo и bar так, чтобы предложенное решение удовлетворяло бы тест ассерту.
"1_234_567".match(/\d+/g).join("") че проще то. Алсо в моем браузере 1_12 + 1 работает, а вот Number("1_12") нет
>"1_234_567".match(/\d+/g).join("") че проще то.
Это понятно, но это не то. Такого вида конструкция должна быть: REPLACEME("1_234_567").
>Алсо в моем браузере 1_12 + 1 работает,
Так ведь 1_12 - ныне корректный числовой литерал (спека по Numeric Separator, по крайней мере, так гласит)
> а вот Number("1_12") нет
Вот в том-то и дело, что строковое представление не реверсится.
>какое это имеет отношение к фронтэнду?
Все это весьма условно, но если интересно, то мое мнение представляется в виде логической цепочки:
1) к фронтенду непосредственное отношение имеет JS и браузеры
2) тест проверяет, в том числе, знание спеки ЯП и браузера, умение ими пользоваться на практике.
Но всё это ерунда, мне насрать на пикабу и их вакансию вротендера, мною движет любопытство и интерес.
Как передать пропсы между компонентами, если используешь хуки?
У Academind вполне неплохие уроки, включил сабы и смотришь. Мужик старается разжевывать для дебилав.
Спасибо
а разве не useeffect?
-0, +Infinity, -Infinity, NaN обеспечиваются стандартом IEEE 754, а не выдумкой создателей JS. 0 - целое число, -0 - число с плавающей точкой. Object.is отличается от операторов сравнения, поэтому, очевидно, результат - false. Обтекай хуесос.
Нет, я вчера только первые 3 задания сделал, сегодня был на собеседовании, им нужен мидл, я а сделал 3 круда на реакте и начал работу искать. На вопросы ответил, мб возьмут. Не спал ночь, волновался, завтра наверное буду решать дальше задачки с пикабу, мне тоже интересно че там
Не волнуйся, "fear is mind killer" и все такое. Все будет хорошо. Алсо, удачи!
Буду ждать, когда подтянешься до этого мутного левела.
Приколись для меня это не новость что в мат сопроцессоре два нуля, положительный и отрицательный. Обтеку как только ты при помощи математических операций получишь результат минус ноль
Крч нашел ответ на SO, лол. Вчера о нем думал, когда шерстил пропозал спеки с намерик сепаратора на гитхабе. Если что, это EViL
Просто постояно встречаю эту хуету в туториалах и кака же она запутаная и навороченая.
А нахуя ты три сруда на среакте сделал? Чем они отличаются? А ты кроме срудов еще что-то знаешь, судя по трем решенным задачкам на пикабу? А то вот я сделал сруд на експрессе, а что там в пикабу написано я не понял
С классами тоже прикольная задача, разобрался.
Оказалась легче, чем предыдущие:
Исходные данные:
_______________
class LohPidr {
someA() { return valueA; }
someB() { return valueB[0] ? valueC: void 0; }
}
Ассерты:
_______________
(i = new LohPidr()) instanceof LohPidr && new new new new new LohPidr(i--)(i--)(i--)(i--)(i--) instanceof LohPidr
Решил двумя способами, но ебучий валидатор отсекает очевидные и элегантные решения.
У меня очень плохо с дизайном и фронтом. Пишу на vue. Хочу сделать свой бложек. Можешь посоветовать пути где-то быстро найти фронт для блога на vue? В идеале я просто хочу взять шаблон и написать под него бэк.
Может есть какие-то изи вэй решения? Если писать жс код мне ещё норм, но верстать я не люблю и не умею.
А что у тебя не так с фронтом? А нахуя ты на сруе пишешь если существует среакт?
Не думаю.
В первом случае у тебя каррирование, во втором что-то типа композиции, но в непонятном каком-то виде.
Я на нём и пишу. Только говорю же, у меня ДИЗАЙН головного мозга, и получается лютейшее говно. Я бы сильно надеялся на готовую реализацию бложика на фронте, как типа шаблонов на сайте vuetify (однако для блога там только лендинг).
Работаю на вью. Но на работе ебашу преимущественно таблицы и простейший гуй, для которого умение верстки надо на 2/10.
С фронтом у меня "не бейте, лучше обоссыте"
merialize
В ризоне, кстати, функции автокаррирование поддерживают. f(a)(b)(c) === f(a,b,c) === f(a)(b,c) и т.д.
Просто мимопроходил.
советую не ебать себе мозг и не тащить целый готовый темплейт, а взять тот же вьютивай и накидать простой бложик используя v-container, v-row, v-col и v-flex
Заодно прокачаешься в ui, фронты которые могут в дизайн ценяться куда сильнее.
У кого не пашет JSFiddle и CodePen - есть отличный аналог, для старых браузеров: https://refork.com/
Сочувствую тебе. Это какая некропека у тебя, аж интересно.
Чтобы выходило второе, а не первое?
Спасибо, поспал, чувствую себя человеком
>>497196
>А нахуя ты три сруда на среакте сделал? Чем они отличаются?
Для себя сделал 2, первый простая тудушка, второй уже с классом сервисом, получением данным, работой с асихронностью, жизненным циклом, роутингом и обработкой ошибок, компонентами обертками высшего порядка, большой и сложный проект. Усложнение искусственное.
3 проект это пока единственное тестовое.
>А то вот я сделал сруд на експрессе, а что там в пикабу написано я не понял
Я уже не впервый раз их задания делаю, первые 2 тоже мимо прошли, сделал только 1 задание, сейчас только начал понимать, что они до жути крутые. Они проверяют и работу с основами языка, и умение гуглить, потому что на русском я не нашел ответов на второе задание.
И чистой воды логика, там задания в которых не надо писать много кода, надо смотреть и построчно понимать как работает код, и при этом применить какую то фишку кода, которую не факт что ты знаешь, как со 2 заданием.
Они ищут умную макаку. С другой стороны умность не гарантирует следование паттернам.
>alert( 9999999999999999 ); // покажет 10000000000000000
>alert( 0.1 + 0.2 == 0.3 ); // false
Оправдвайтесь.
https://jsfiddle.net/bg21s69L/
Я понял, я долбоёб.
Пиздец, мне аж стыдно. Читаю твою подсказку, а сделать не могу все равно, уже полтора часа читаю, пока нет идей
У тебя по if поток управления выходит по return вверх, поэтому else тут нинужно вообще, код становиться короче и понятней.
помогите нубу. Читаю книгу "грокаем алгоритмы". Там все на питоне, а я учу яваскрипт. Там сортировка самая легкая. В файл index.js импортируется функция из файла grok.js.
Там вызывается функция для сортировки массива из файла grok.js которая вызывает другую функцию, которая находит минимальное число в массиве и добавляет в новый массив, а из старого удаляет. Дак вот она находит и удаляет, и при этом останавливается, так что новый массив состоит из этой минимальной цифры. Сорян за нубство, я вообще даун в этом деле. js нужен для гуманитарный целей.
ПРОСТО почитай документацию по модулю cluster на сайте nodejs. Дальше так же ПРОСТО напиши мастер процесс, который и будет оркестрировать другие, балансируя нагрузку. Как видишь, ничего сложного.
а ты не мог сразу этот пост написать,а то я влез в дебри хайлоада
Этот сайт указал анон в шапке.
Перепостил сюда, глянь плз. На импортирование функций не ругайся, это я параллельно изъебы всякие учу.
https://pastebin.com/PYuCHVqu
Ну да, первая находит минимальное, вторая возвращает массив из одного элемента. Не так должно быть?
дак в массив новый одно число добавляется и все. А должны все по порядку добавляться.
for (i = 0; i < arr.length; i++) {
var smallest = findSmallest(arr);
newArr.push(arr[smallest]);
arr.splice([smallest]);
console.log(arr);
}
вот этот цикл должен вызывать фунцию findSmallest и строить новый массив а старый стирать потихоньку. А тормозит все на первом элементе.
console.log(arr); эта хуйня для теста написана, не обращайте внимания.
console.log(grok.selectionSort([4, 5, 6, 2, 8, 1])); выводить должна эта хуйня из файла index.js
зачем ты выебываешься? Есть задача сделать так, а не иначе. По делу есть че сказать?
добро пожаловаь в react 17 , где придется снова переучиваться))
Так-так, что там у нас? Асинхронный рендеринг? Атлична, атлична, джва года этого ждал.
>
>помогите нубу. Читаю книгу "грокаем алгоритмы". Там все на питоне, а я учу яваскрипт. Там сортировка самая легкая. В файл index.js импортируется функция из файла grok.js.
>
>Там вызывается функция для сортировки массива из файла grok.js которая вызывает другую функцию, которая находит минимальное число в массиве и добавляет в новый массив, а из старого удаляет. Дак вот она находит и удаляет, и при этом останавливается, так что новый массив состоит из этой минимальной цифры. Сорян за нубство, я вообще даун в этом деле. js нужен для гуманитарный целей.
решил сам, пока тут зумеры выебываются асинхронным рендерингом и другими непонятными реактосоми. Не могут элементарные вещи увидеть в коде.
надо было заменить for (i= 1; i < arr.length; i += 1) на for (let i= 1; i < arr.length; i += 1) и все заработало. Не объявил просто переменную. Ну нахуй вас, говноеды, хипстеры ебаные, зумеры. Нахуй я только сюда зашел.
че за хрень?
>Не могут элементарные вещи увидеть в коде.
Ебанутый, нахуя кому то тратить время на решение твоих элементарных и скучных задач?
По поводу парсинга можешь подсмотреть ответ в спойлере. Но если интересно самому, то вот хорошая подсказка: https://github.com/tc39/proposal-numeric-separator/issues/32#issuecomment-369157944
Я так понимаю, что проёб вот здесь происходит:
arr.splice([smallest]);
Попробуй вот так заменить:
arr.splice(smallest,1);
Плюс у тебя счётчик криво меняется, т.е. у тебя i берёт и продолжает расти так, как будто у тебя длинна массива не меняется, а она меняется. Если ты вырезаешь элемент из массива, то замени for на while(arr.length), а индекс сам прикрути
А я вот на этой сейчас встрял:
https://jsfiddle.net/re0L7nq1/6/
Не могу понять, че за хуйня творится в этом коде:
...
let el = document.createElement('name');
el.innerHTML = html;
el = el.content;
let p = el.querySelector('value1');
...
какой блядь "el.content" ? Я спарсил названия всех тегов и перебором их в цикле прогнал, пока не "щелкнет" el = el.content; el.content у всех элементов undefined, кроме тега "meta" - у него при создании пустая строка, но толку от этого ровным счётом нихуя. Я так понимаю, в это ребусе это единственная загвоздка.
На собеседованиях их спрашивают.
content - атрибут template, или id дочернего элемента.
Скорее всего первое.
Мимо из борщетреда
>content - атрибут template
Бляяяя. Спасибо, Анон, тебе огромное. Буду знать.
Сук, обидно, что даже не зная этого, перебором этот тест не удалось одолеть, ибо спарсил теги/имена элементов с какого-то кривого сайта.
>программисты востребованы кококо
>у компании приём на работу фронтэндера состоит из крысиной гонки по решению ебанутых задач
>полно желающих участвовать
где-то наебка
по моему ты фигней какой-то страдаешь
во-первых иирк (я воннаби фронтэндер и не очень знаю sql, но я на 90+% уверен) sql может взять одним запросом данные из двух таблиц
во-вторых тебе никто не мешает использовать async/await, хотя если там не возвращается промис придется оборачивать запрос в промис, у меня в одном пет проекте такое было
const promisedResult = new Promise((resolve, reject) => {
db.all(sqlQuery, (err, rows) => {
if (err) {
reject(err);
return;
}
resolve(rows);
})
})
после этого можно просто
await запрос1
await запрос 2
и не париться
Expected an assignment or function call and instead saw an expression no-unused-expressions
Жалуется именно на анонимную функцию. Отчего так? В учебном материале точно такой же код компилировался у преподавателя.
Попробуй юзать не стрелочную функцию, или забиндить. У нее же нет собственного контекста.
Обычная функция тож не помогает. Пробовал return поставить перед круглыми скобками. Тогда пишет
this.props.children is not a function
Передай в чилдрен объект, а не функцию
Вот ты скажи, ты дурачек? Зачем ты ищешь и спрашиваешь ответы на двощах? Ты ебанутый? Ты искать не умеешь? Я не понимаю.
Чем раньше ты это поймешь, тем меньше здесь будешь сидеть и задавать вопросы, на которые тебе с 2% ответят. Иди учись нормально учиться.
Ты мудак ебаный не может переписать код 1 в 1 с видео?
Ты мудак ебаный не может переписать код 1 в 1 с видео?
Еще даже уточню
Ты к функции стрелки добавил {}, значит надо писать return, сука, какие вы мудаки тупые.
Зайди в рендер функцию, посмотри что там будем в чилдренах, рефактори код
Я мечу в фулстак, сижу в серверных тредах, пхп и прочее. То есть не собираюсь только на JS работать. Подскажите пожалуйста.
Убери тело стрелочной функции, она должна возвращать значение.
jQuery не фреймворк, легаси библиотека для того чтобы проще дом операции делать для простых сайтов. Изучай React.
ну очевидно раз ты учишь пхп то фреймворк должен быть пхпшным
а на фронт пхп обычно с vue работает, но можно реакт офк
Хз везде работает.
Сделал, чтобы на выходе modifyHtmlFragment получалась строка "12346", но там блядь ожидается строка "12436"!
Пиздец.
Свапнуты 3 и 4, но как, блджад? Они же в одном элементе:
<div><p>2</p>,<p>3</p>,<p>4</p></div>
Первое число больше чем Number.MAX_SAFE_INTEGER
Второе стандартная математика для чисел с плавающей точкой. В любом языке так
Так это вроде на три секунды делов. Все остальное время уйдет на дизайн, а с этим у меня туго...
Нет, сегодня времени не было, в ближайшие 2 часа буду решать, ток пришел с тренировки, так хорошо мозг разгрузил
Пока не перезванивают с собеседования, эх
Интернет магазин
Хотя бы оформление заказа в интернет магазине, форма с валидациями, разные платежные системы и под них разные службы доставки, чтобы хотя бы было видно, что они меняются.
>>497931
Нихуя не понимаю, где проебался. Если что, оригинальное условие здесь:
https://jsfiddle.net/re0L7nq1/6/
мое решение https://jsfiddle.net/re0L7nq1/7/
Нужно заменить в теге "p" 5 на 6, для этого я предварительно помечаю див обертку единицы, которая тоже матчится по селектору :only-child. Далее задача кажется совсем простой - заматчить "p" теги с X и Y, чтобы в итоге осталась разметка с числами - это я и сделал, проверяя последние элементы на нечетность (т.к. элементы с числами встречаются в тестовой разметке в количестве 1 и 3 штук).
Но вот незадача - выхлоп не тот, что в ассерте. Там каким-то образом изменен порядок 3 и 4 и я не понимаю, где в коде это можно провернуть. По идее, можно было бы матчить 3 и 4 отдельными селекторами в querySelectorAll, но в этой операции маркап не переприсваивается, а просто удаляются родительские элементы у заматченных. Что-то я теряюсь в догадках.
Puppeteer или Nightmare возьми какой-нибудь.
Вопрос снят
Число спарсить - эваль
Далее число обратить в строку. Радикс подбирается легко. Если ещё не знаешь, можешь тупо перебором операторов.
Да уже решил, спасибо, как догадался про евал, дальше дело техники, действительно решал перебором, там вариантов не было кроме побитовых операций
Следующее задание уже поджигает задницу, ух
А что ты там читать собрался?
Взяли на работу за 90к джуном в ДС
Заткнись, подонок
а что тут смешного? реакт редакс учится за пару недель, 3 месяца вполне норм что бы дорасти до джуна , если заниматься каждый день часов по 5
верстку знал плохо - float'ы , поучил флексбоксы за пару дней.
На собеседовании верстку не спрашивали особо
Просто пойми, что JS любит тебя. Соблюдай его заповеди и тебя ждёт царствие небесное, а если будешь себя плохо вести ты на -бесконечность свалишься в коллбэк-хелл
Аминь.
для сервера,там БД подключить,регистрацию,обработка чего либо важного,чтобы не светить юзеру
ну я хз.мож все это можно навесить на ноду и так
а что за спа если не секрет?
Я уже начал делать мувисерчер. На этом сайте пишут, что его надо делать какими-то хуками, а я даже не знаю что это
А что без хуков мучи серчер написать нельзя? В крации можешь рассказать что это?
Класс это функция создающая объект, на основе другого. Никак не прототип. Для прототипа функций есть конструктор.
Я бы понял если бы в прототипе конструкторной (классовой) функций, но в прототипе создаваемого объекта? Зачем?
Я думал проще было бы юзать прототип класса и на него ставить методы.
Литера
https://pastebin.com/Lx3DMLhm
массив при этом уменьшается как надо
[1 ,3 ,4 ,5 ,8]
[1 ,3 ,4 ,8]
[1 ,3 ,8]
[1 ,8]
[8]
>Лучше используй существительные для имен переменных
Спс конечно, запишу. Но алгоритм мой та и не заработает как надо...
Слушай. ты его можешь не то что без хуков написать, ты его можешь написать на ванилле блять.
Ты меня бесишь
>в чем разница между конструктором и классом?
Изучайте ооп по нормальным строготипизированным языкам, чтоб не было каши в голове.
>3 месяца вполне норм что бы дорасти до джуна
Лол блять, если ты из Мск нет смысла идти на ждуна, говори что ты мидл
Неудачник, я за две недели выучил и сразу на 150к устроился. Изимани.
Начнем с того, что this.highest в теле функции highest будет существовать в строгом режиме только в инстансе и только, если одноименная функция была объявлена в прототипе. Но, допустим, ты используешь пороки JS и вызываешь из window всплывшую функцию. Но подобный вызов - это не рекурсия, твоя функция возвращает undefined. Поэтому тебе нужно возвращать результат вызова функции по типу "return this.highest(arr)".
И да, в жс нет TCO, рекурсия в жс - это глупо.
Половина из того что ты написал непонятно. зачем понтуешься перед неофитом. не думаю что в яп есть что-то глупое. Оно просто есть там.
Подсказки из файлов с типами подтягиваются. npm install делал, шкила?
Хорошо, экссудат предыдущего поста - используй return statement перед вызовом this.highest.
Я тебя ебал, ничтожество
>экссудат
Не знаю что это, но это про вас.
Нужно было добавить в конце функции return arr; и все заработало. Один return в условии if а второй в конце тела функции. Просто невнимательность. А вы тут начали писать про хрен пойми что. Я понял что тут сидят любители языком почесать, профессионалов здесь нет.
Я профессионал, но мне лень отвечать
ты мудак
Ты че мне скинул, придурок
Да, как и у питона. Он как бы есть, но он не такой какой-то. Если изучать ооп только по жс, возможно искажение понимания парадигм оного.
Я тоже это не люблю, поэтому мудрые люди и придумали киты и компоненты.
идёшь на сайт эпл и копируешь как там.
и че,язык то почти эталонный ООП
Тебе никто и ничего не должен, не в этом месте. Мог бы сам подумать и решить задачу, а не ныть на дваче что за тебя не решили проблему.
Бывает, но зависит от компании и позиции.
const [yoba, setYoba] = useState(() => console.log(222));
иди даже так
const yobaFunc = () => console.log(222);
const [yoba, setYoba] = useState(yobaFunc);
эта функция вызывается сразу же, при инициализации состояния?
Что за неожиданная хуйня, или просто я тупой? Как запихнуть функцию в useState?
но я вообще не синьер.
тупо на все вопросы ответил на собесе
FIX2
Дело в том что я не сеьер помидор, а мидл(не топовый), а тут сразу 250к.
как бы вы поступили?
Да иди конечно, потом в старости жалеть будешь
Я бы предложил тебе отправлять мне 10% из твоей зарплаты каждый месяц
Растут потому что разрабов становится меньше, готовых пойти на твой стек.
Вот ты идешь искать работу, встречаешь проект где используются yoba классы
пойдешь туда? вряд ли и таких как ты много.
Spasibo, Yoba!
let theNumber = Number(prompt("Pick a number"));
if (!Number.isNaN(theNumber)) {
console.log("Your number is the square root of " +
theNumber * theNumber);
}
Я так понял эта проверка на "не число", то есть если ввел цифру эта функция дает ложь и код идет дальше, а если строку то правда и она ничего не делает и не возвращает?
>Я так понял эта проверка на "не число", то есть если ввел цифру эта функция дает ложь и код идет дальше, а если строку то правда и она ничего не делает и не возвращает?
Da.
Ты хотел сказать "академический"? Право дело, какой грубый эвфемизм.
const highest = arr => arr.reduce((x,y) => x > y ? x : y)
Собственно это был лишь вопрос времени, когда в зависимости от типа мне нужно будет рендерить какой-то компонент.
Собственно подскажите, какой тру способ это сделать?
В теге template ебошить компоненты через v-if-else?
Или каким-то образом создавать рендер-функции?
Best practice ищу
Учи кресты тогда, лол. На самом деле бывает, у нас есть верстальщик, но я бы лучше сам верстал, чесслово
Идти, конечно, че тут думать-то? Или ты зажравшийся совсем и 250К тебя не мотивирует?
Анон, я решил не создавать отдельный тред, а отписаться в этом.
Я написал на реакте фронт, он рабочий, все хорошо, собираю вебпаком. Теперь я захотел подцепить к нему бэк. Я создал в VS проект .Net Core MVC с шаблоном React-Redux. Как его цеплять? Что поменять в Startup.cs, что в моем package.json?
Есть todolist написанный на vue + vuex и есть бэк на express, в котором реализован crud с этим списком (в базу данных пишет).
На клиенте todolist представлен в виде списка с полями ввода, т.е. для мы можем отредактировать или удалить каждый элемент списка не уходя со страницы.
Вопрос вот в чем: когда я удаляю какой либо элемент списка, запрос улетает на сервер, я получаю подтверждение об успешности удаления, а после я должен на клиенте удалить из списка этот элемент или обновить полностью весь список, запросив данные от сервера?
Дилема в том, что если список редактируют несколько человек, то не запрашивая новые данные после обновления, данные на клиенте могут быть не консистентными, но не является ли дополнительный запрос данных overhead?
Как успехи? Я на 7ом застрял. Если нужны подсказки - спрашивай, хочется вместе добить эту хуйню просто ради спортивного интереса.
а какие минусы-то? дают - бери
Пока на 5, времени нет, работы много, а после нее мозг не варит, завтра только
Жги.
какие у него плюсы и отличия от реакта?
Отдыхать планирую запиливая эти ваши кнопочки, красивые формочки, переходики, хуеходики и че там у вас еще красивого есть, вооот.
Чего сказать то хотел, блядь. Короче, вообщее не ебу в этих ваших жс, жс фреймворках и вот этом всем говне. Ага, анон, советуй актуальную книгу по яваскрипту, желательно чтоб книга комплексной была - чтоб от основ для бомжей и до фреймворка
Спасибо
Нашел
Это https://medium.com/@GarrettLevine/5-projects-to-complete-when-starting-to-learn-front-end-web-development-48e8a1ce3178
?
Вообще есть https://www.programmableweb.com/apis/directory
здесь дохуя всяких сайтов с апишками размещено.
Щитаю, такое должно быть в шапке, чтобы не дублировать вопросы о том, какую идею выбрать для очередного петпрожекта.
а не сам апи
Ну что же вы, ребята
https://web.archive.org/web/20150315073913/http://games.usvsth3m.com/javascript-under-pressure/
У кого какие результаты? У вашего покорного слуги десять минут ушло с кофибрейками и смузиотхлёбами.
В свое оправдание я хуево работаю с регулярками и редьюсом, но делал целенаправленно через них
IDE не нужны
18 минут, начал учить жс неделю назад
<html><body><canvas id="myCanvas" width="501" height="501"></canvas></body><script>
function ramb(){
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var my_gradient = context.createLinearGradient(0,0,0,170);
my_gradient.addColorStop(0,"black");
my_gradient.addColorStop(1,"white");
context.fillStyle = my_gradient;
context.fillRect(0,0,500,180);
var v = Math.floor(Math.random() + Math.random()+Math.random() Math.random() + Math.random()+Math.random()2 );
var q,w,e,r,t,y,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c,v,b,n,m,u;
i = 0; o = 1; p = 2; a = 3; s = 4; d = 5; f = 6; g = 7; h = 8; j = 9;
k = -1; l = -2; z = -3; x = -4; c = -5; b = -6; n = -7; m = -8; u = -9;
//Гора200
context.bеginPath;
context.moveTo(10, 200);
context.lineTo(151,100);
/ context.setTransform(v,v-v,v-v,vv,vv,v);/
context.lineTo(200,150);
context.lineTo(250,170);
context.lineTo(300,150);
context.lineTo(401,50);
context.lineTo(500,200);
context.closePath();
context.strokeStyle = "black";
context.stroke();
//Рамки
context.beginPath();
context.moveTo(0, 200);
context.lineTo(500,200);
context.moveTo(0, 0);
context.lineTo(0, 500);
context.moveTo(500, 0);
context.lineTo(0, 0);
context.moveTo(500, 0);
context.lineTo(500, 500);
context.closePath();
context.strokeStyle = "red";
context.stroke();
var key = [(
//горизонтальные линии
context.beginPath(),
context.moveTo(k+u, 220),
context.lineTo(500, 220),
context.moveTo(k+u, 250),
context.lineTo(500, 250),
context.moveTo(k+u, 300),
context.lineTo(500, 300),
context.moveTo(k+u, 400),
context.lineTo(500, 400),
context.moveTo(k+u, 500),
context.lineTo(500, 500),
//вертикальные линии40
context.moveTo(40,200),
context.lineTo(0,300),
context.moveTo(110,200),
context.lineTo(20,500),
context.moveTo(200,200),
context.lineTo(150,500),
context.moveTo(300,200),
context.lineTo(360,500),
context.lineTo(430,500),
context.moveTo(390,200),
context.lineTo(480,500),
context.moveTo(460,200),
context.lineTo(500,300),
context.closePath(),
context.strokeStyle = "red",
context.stroke())]
}
function arbuzik(){
return key[1] = context.moveTo(66, 220);
}
function pomidorik(){
}
function bananes(){ setInterval(ramb ,1000);}
/смотри мне нужно что-бы линии вертикальные и горизонтальные двигались таким образом что-бы создовалось ощущение 3-мерной линейной плоскости
сделать это можно следующим онбразом 1) чем ближе приблежается к центру вертикальная линия тем больше уклон дается по х и уходя за рамки они снова создаются слева
2) горизонтальные линии приближаясь к низу увеличивают скорость приближения, их должно быть определенное количество, и самая верхния должна не двигаться
3) все это делается нажатием кнопок, и изминением параметров в объекте, я непонимаю почему объект неопределён, и как сделать изменение context.LineTo
function arbuzik(w){
aГоризонтальный масштаб
bГоризонтальное скручивание
cВертикальное скручивание
dВертикальный масштаб
eГоризонтальный сдвиг
fВертикальный сдвиг
return q+10;
}
/
function addNumbers(a, b) { var c = a+b; return c;
}
document.write( addNumbers(40, 2) );
//Outputs 42
</script></body><body><button onclick="ramb()">start</button><button onclick="arbuzik()"><</button> <button onclick="bananes()">></button> </body></html>
<html><body><canvas id="myCanvas" width="501" height="501"></canvas></body><script>
function ramb(){
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
var my_gradient = context.createLinearGradient(0,0,0,170);
my_gradient.addColorStop(0,"black");
my_gradient.addColorStop(1,"white");
context.fillStyle = my_gradient;
context.fillRect(0,0,500,180);
var v = Math.floor(Math.random() + Math.random()+Math.random() Math.random() + Math.random()+Math.random()2 );
var q,w,e,r,t,y,i,o,p,a,s,d,f,g,h,j,k,l,z,x,c,v,b,n,m,u;
i = 0; o = 1; p = 2; a = 3; s = 4; d = 5; f = 6; g = 7; h = 8; j = 9;
k = -1; l = -2; z = -3; x = -4; c = -5; b = -6; n = -7; m = -8; u = -9;
//Гора200
context.bеginPath;
context.moveTo(10, 200);
context.lineTo(151,100);
/ context.setTransform(v,v-v,v-v,vv,vv,v);/
context.lineTo(200,150);
context.lineTo(250,170);
context.lineTo(300,150);
context.lineTo(401,50);
context.lineTo(500,200);
context.closePath();
context.strokeStyle = "black";
context.stroke();
//Рамки
context.beginPath();
context.moveTo(0, 200);
context.lineTo(500,200);
context.moveTo(0, 0);
context.lineTo(0, 500);
context.moveTo(500, 0);
context.lineTo(0, 0);
context.moveTo(500, 0);
context.lineTo(500, 500);
context.closePath();
context.strokeStyle = "red";
context.stroke();
var key = [(
//горизонтальные линии
context.beginPath(),
context.moveTo(k+u, 220),
context.lineTo(500, 220),
context.moveTo(k+u, 250),
context.lineTo(500, 250),
context.moveTo(k+u, 300),
context.lineTo(500, 300),
context.moveTo(k+u, 400),
context.lineTo(500, 400),
context.moveTo(k+u, 500),
context.lineTo(500, 500),
//вертикальные линии40
context.moveTo(40,200),
context.lineTo(0,300),
context.moveTo(110,200),
context.lineTo(20,500),
context.moveTo(200,200),
context.lineTo(150,500),
context.moveTo(300,200),
context.lineTo(360,500),
context.lineTo(430,500),
context.moveTo(390,200),
context.lineTo(480,500),
context.moveTo(460,200),
context.lineTo(500,300),
context.closePath(),
context.strokeStyle = "red",
context.stroke())]
}
function arbuzik(){
return key[1] = context.moveTo(66, 220);
}
function pomidorik(){
}
function bananes(){ setInterval(ramb ,1000);}
/смотри мне нужно что-бы линии вертикальные и горизонтальные двигались таким образом что-бы создовалось ощущение 3-мерной линейной плоскости
сделать это можно следующим онбразом 1) чем ближе приблежается к центру вертикальная линия тем больше уклон дается по х и уходя за рамки они снова создаются слева
2) горизонтальные линии приближаясь к низу увеличивают скорость приближения, их должно быть определенное количество, и самая верхния должна не двигаться
3) все это делается нажатием кнопок, и изминением параметров в объекте, я непонимаю почему объект неопределён, и как сделать изменение context.LineTo
function arbuzik(w){
aГоризонтальный масштаб
bГоризонтальное скручивание
cВертикальное скручивание
dВертикальный масштаб
eГоризонтальный сдвиг
fВертикальный сдвиг
return q+10;
}
/
function addNumbers(a, b) { var c = a+b; return c;
}
document.write( addNumbers(40, 2) );
//Outputs 42
</script></body><body><button onclick="ramb()">start</button><button onclick="arbuzik()"><</button> <button onclick="bananes()">></button> </body></html>
Да
1280x720, 0:34
Ну не образцовый конечно, зато мой безо всяких подсказок с летсплеев на ютубе. Хотя когда я начал пилить отрисовку информации избранного фильма, то начал городить дикие костыли, потому что не до конца понимаю как весь этот реакт работает
ебашить в canvas + d3.js На чистом JS за 150к
куда сесть?
Предлагаю перечислять мне 10% от твоей зарплаты каждый месяц
Это из jQuery
Да ладно, он ньюби просто в век фреймворков. Когда любая сущность это уже реализованный велосипед из модной либы.
Вот в наши времена при for(int i = 0; ;i++) такого бы вопроса не возникло.
Что за агрессия? Я понимаю что эта хуибола считает кол-во попыток или тип того, но смущает что инфы по ней нет, как будто просто существует на уровне буквы алфавита, но это не рандомная переменная, и не атрибут, что это тогда?
Дурак!
>Что такое current
В словаре забанили? Это электрический ток, на нем все компьютеры работают.
Твой смайл меня приложил, у меня бугурт, пиздун.
Тогда запили погодный сайт с апи, чтоб можно было выбрать город и списка и прикрути поиск, я такой за сутки сделал.
Запили рекомендательный сервис по подбору алкогольных напитков к тому или иному блюду.
Все в один скрин, управление свайпом/тапом.
На начальном экране свайпаешь еду, по типу тиндера, свайпнул рыбу вправо - отложил ее на ужин, влево - появилось другое блюдо, и так далее.
Потом выбираешь тип алкоголя, вино или пиво, например. И потом, на основе продуктовой корзины отображаются рекомендации алкоголя.
АПИ на все это уже есть, осталось завернуть во вьюху.
Ну попробую...
Несколькими постами выше я кидал линк на фри апи директори. Панк апи точно провайдит инфу по совместимости пива с той или иной едой. Но там только продукция от брюдога, а вообще можно покопаться там и найти много чего интересного.
Понял, поищу
К чему прикрепил? Рефактор?
Первое, что бросается в глаза: побочные эффекты, грязные функции, компонент перегруженный, плохой нейминг переменных, используешь хуки, но не знаешь про useEffect, антипаттерновый кастинг числа, короче лень писать дальше ,мы вам перезвоним
>К чему прикрепил? Рефактор?
Типа того. Временами пишу такие мини-проекты, применяя новые знания.
>мы вам перезвоним
Я сразу начинаю общение с HR или тимлидом в дружеском тоне, как приятель с приятелем, так что редко приёбываются к коду, говорят научим-обучим.
>Логика в компонентах. Фу блядь, фу нахуй.
А вот это интересно. Где можно прочитать по поводу использования логики в компонентах?
Он скорее всего имел ввиду, что вся логика должна быть в компонентах-контейнерах, которые пропсами передают уже все данные в компоненты представлений.
тут читать https://ru.reactjs.org/docs/thinking-in-react.html
Если есть стейт менеджер - вай нот.
Стейт выступает как модель, про представление и контроллер думаю сам понимаешь, кто выступает
мимо
Типа запилить отдельные компоненты для вью и контроллера и юзать их в модели, импортируя?
Ну да, контроллер получает данные из модели/имеет какие-то свои локальные данные и уже чистые данные передает их компоненту представления, который только рендерит их.
>и юзать их в модели
А, не, я до конца не прочитал. Ты чо, в стейт менеджере ничего не рендерят, он про данные, конечно же. Скорее, стейт может делегировать часть своих данных контроллеру , как и компонент контроллера может делегировать это модели, т.к ничто не запрещает делать какую-то логику в стейт менеджере/контроллере.
Переформулирую, т.к криво сформулировал: M - это только данные; V - обработка данных полученных от M, либо же обработка своих локальных данных; C - рендер данных. Я это так вижу в реакте. Но вообще, это в вакууме, на самом деле, если мы будем юзать какой-нибудь миддлвар типа санков/саг - то это уже будет не только данные, т.к. они прямо назначены для того, что бы данные эти не только получать, но и обрабатывать.
Короче, M в реакте может совмещать функции V, это не запрещено. Не знаю только, насколько это канонично.
Ебануться, как будто по-французски сказал. Я мало что понял,, может объяснишь на каком-нибудь примере какого-нибудь приложения? А так спасибо, будет что изучить.
>Короче, M в реакте может совмещать функции V C, это не запрещено.
Всё, пора спать, путаюсь уже.
все сам
Роутинг прикрути, чтобы любая ссылка была доступна
После первого добавления фильма должно быть уведомление, что фильм добавлен. По клику на эту же кнопку удалять из коллекции
Нажимать руками search это залупа ебаная, делай сразу аякс поиск по вводу текста в форму, с задержкой в районе 0.5 -1с
Огромные? Как жуниору в гейропе?
Что значит каждая ссылка должна быть доступна?
А как задержку сделать? Если я в onChange засуну запрос через setTimeout, то он для каждого символа его выполнит или для последнего?
Все хуйня. Пацан константами злоупотребляет. Надо было залепить в одну строку через reduce, единственное к чему могу придраться это закрвывающая скоба } всегда должна быть на отдельной строке
>Что значит каждая ссылка должна быть доступна?
Найденный фильм в поиске, то есть запрос будет вида /search/?q=123123
>А как задержку сделать? Если я в onChange засуну запрос через setTimeout, то он для каждого символа его выполнит или для последнего?
Просто погугли как это делают, на классах знаю как, а вот есть ли подобное в хуках пока не смотрел, как useEffect юзать
Хуки я не умею пользоваться и не хочу пока. Я даже не понял для чего они нужны когда в интернете посмотрел что они такое
https://github.com/oliver-gomes/react-movie
Не самый лучший пример говносерчера, но здесь есть роутинг и задержка
Чтобы не писать классовые компоненты ради стейта
https://www.youtube.com/watch?v=X81MWzN3j8Q
Мне стыдно, но и я и 6 пройти не могу, все перепробовал, что в голову пришло, часа 4 убил
Сегодня 7ой добил за полчаса. Пиздец, какой же я даун, так стыдно, что решение пиздец какое очевидное и вообще триков.
Приеду домой - буду восьмое ковырять, сброшу сюда условие и ассерты. Там интересно, походу, нужно будет имагу декодировать.
Алсо, если есть вопросы - задавай, помогу.
Как ты решил задачу? Можешь вспомнить логику решения? Какой запрос в гугл дал тебе наводку на ответ?
Попробуй намекнуть, в какую сторону думать
>Пиздец, какой же я даун, так стыдно, что решение пиздец какое очевидное и вообще триков.
Как тебе вообще этот тест от них? Вроде бы очень круто, решения реально несложные оказываются по факту
Спасибо, щас проснулся и на свежую голову посмотрел и понял что это просто объявленая переменная, вчера видимо пересидел
Просто внимательно посмотрел на исходник, трезвым взглядом нет, я не пью. С первым использованием квкриселектора там как раз и нужно провернуть своп 3 и 4. Остальное ещё проще - найти "р" с новоявленной шестеркой уже относительно помеченного дива с двойкой, четверкой и тройкой. Ну а дальше совсем просто - найти и удалить все дивы с Х и У, сделал с селекторами на проверку четности и энного чайлда.
Тест и вправду заставляет пошевелить немного мозгами, но практической ценности никакой не несёт.
Пройти его - задача из принципа.
Ого, как ты переседел. Я так никогда не пересиживал.
Отсюда все варианты пробовал?
https://stackoverflow.com/questions/14332721/node-js-spawn-child-process-and-get-terminal-output-live
Единственный работающий - stdio: "inherit" в опциях spawn. Если ничего лучше не найду, то будет node(callback)->node(inherit)->python, но выглядит как костыль
Есть короче скрипт для tampermonkey для редиректа юрла ввиде imgur.com/asdkjkjsa на прямую ссылку на пикчу.
// ==UserScript==
// @name Imgur Redirect
// @namespace https://greasyfork.org/en/scripts/390194-imgur-redirect
// @description Redirects single-image page to direct image
// @include /^https?:\/\/imgur\.com\/\w{7}$/
// @version 0.0.3
// @run-at document-start
// @author Daniel Zhang
// @grant none
// @icon https://imgur.com/favicon.ico
// ==/UserScript==
window.location.replace("https://i.imgur.com" + window.location.pathname + ".jpg");
Хочу тоже самое с gyazo.com сделать там такие же ссылки gyazo.com/aksdxncjndasdjasndajsnd а прямая i.gyazo.com/aksdxncjndasdjasndajsnd.png в конце. Попробовал поменять jpg на png а где imgur на gyazo не получилось.. Я слишком тупой..
Да, я про 7ой рассказывал.
Шестой решается двумя способами, с помощью Symbol.hasInstance и valueOf, но единственный верный - второй вариант.
Вообще не понимаю логику задания
Мб тупой вопрос, но какой будет порядок выполнения в строчке new new new new new JobSeeker(i--)(i--)(i--)(i--)(i--)? Если это важно
Тебе нужно приводить к определенному числу инстанс класса, если его и трактуют как число (I--). В конструкторе, соответственно, возвращаешь сам класс либо андефайнд. Классика на неявное приведение же. Кстати, вариации на подобную задачку любят спрашивать на собесах, так что любознательным на заметку.
Кстати, пикабушники не такие тупые, как могло показаться на первый взгляд. Они немного вносят различий в задачу, чтобы не было одинаковых ответов (в данном случае число).
Ты бы знал как у меня горит, это пиздец, там задача была на 10 минут, я все это знал, но пытался решить одной функцией, а не двумя
ПИЗДА ПИЗДА ПИЗДА СТОЛЬКО ВРЕМЕНИ ПРОЕБАТЬ
Красавчик, а какой у тебя вообще опыт работы в этой сфере?
Я то джун, по сути полгода опыта в js
Как в 7 пройти первую проверку?
let el = document.createElement('name');
el.innerHTML = html;
el = el.content;
А все ок, мб опечатался где то, template не сработал с первого раза
Сделал 7 за полчаса, приступаю к 8
А базу самому заполнять? Или с уже готовой брал?
Они, кстати, предлагают ещё выполнить оплачиваемое тестовое, из расчета 500 р за час решения (но оплачиваются не более 10 часов). Так что кому интересно - дерзайте. Работа по удаленочке, з/п договорная. Что меня смутило - это уже, насколько я понимаю, вторая волна набора, а у них в штате всего 4 вротендера, что какбэ намекает.
Какой же я лох позорный. Затупил уже на втором задании.
Пока не совсем понимаю, что от меня хотят во втором задании. Там чар энкодится в 4, я посмотрел в таблице - это EOT символ. Мне типа ассемблер нужно знать, да? Или я не в том направлении мыслю?
Не в том. Нужно просто вставить код юникод символа с соответствующим префиксом. Выше по треду есть обсуждение этого задания.
А, кажется понимаю. Не просто ж так переменную назвали как f
Что пилишь?
Вопрос снят, сам понял
Красавчик. Да, восьмое задание одно из самых простых, что странно для финальной задачи.
Нахуя делать эти нудные задачки? Программированием надо заниматься только тогда, когда тебе интересно имхо
10 минут. Но я с гуглом, поэтому не считается.
Это больше чем форматирование кода. Что использовать, чем не рекомендуется злоупотреблять
airbnb самый популярный
Будешь проходить тестовое? Если да, расскажешь, в чем суть? Меня прост это не особо замотивировало, я и так в тепличном месте на удалёнке. Но что за тестовое - интересно узнать. Если что, скидывай сюда условия задания, всем джейсачом будем помогать.
Ты жмешь tab а в файле добавляются два пробела.
Я свитчер инженер-программист. Просто закинул резюме на хх.ру, написал в пару строк апдейтер и спустя пару часов телефон уже разрывался от звонков. Прошел месяц бесчисленных собеседований, получил три оффера, выбрал самый НЕвыгодный, поскольку те предлагали белое трудоустройство фуллсракером вот еблан, поработал четыре месяца, получил письмо от другой конторы с предложением пройти тест, прошел, пособеседовался, перекатился.
Сейчас всё устраивает, на аутстаффе пишу фронт для фин контор. Коллектив теплый-ламповый, работа в кайф. Нравится как имплементить новые фичи, так и разгребать говно на багфиксинге.
Йеп, и ещё немного fantasy land либ.
Напишу на всякий случай что я собирался покурить на счет DOM перед переходом на документацию React.
https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Introduction
https://www.w3.org/TR/REC-DOM-Level-1/level-one-core.html - Вот это не полностью, лишь понятный текст по совету мозиллы.
https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model - Тут судя по всему просто набор интерфейсов, их все перебрать?
Не фронт, личинка фуллстакера, прошу не обижать.
Остап Ибрагимович, здесь ваши методы не сработают!
https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/ Вот тебе годноты от тянучки с аналитическим мышлением
Сам бы не нашел. Спасибо огромное!
Спасибо няша.
годные*
Вроде написал согласно описанию bind(), подскажите, чего не хватает?
https://jsfiddle.net/o67e0cya/1/
В x мне передаётся просто значение value, то есть 2, как мне туда передать из selected само слово, в данном случае Джигурда
Если ты завязываешь вьюху на асинхронные данные, то ты и весь флоу должен выстроить с учетом асинхронности. Без кода нереально понять, в чем именно у тебя проблема, но звучит так, что после резолва массива на клиентской стороне ты должен создать или проапдейтить форму. Серверный код не при чем (только если у тебя не SSR).
Алсо,
> В клиенте console.log исправно выдает этот массив
Принт объектов в console.log не отражает их реальное состояние на момент вызова функции. Для того, чтобы убедиться, что у тебя было в объекте в нужный момент времени - ставь брейкпоинт / debugger statement или обращай в строку сериализуемые данные через JSON.stringify, например.
Что такое мвц?
У меня прост экзотический фреймворк, meteor + autoform. В общем, я все перепробовал, заворачивать и в асинк авайт, и нью промис, и использовать преобразоватор асинхрона в синхрон Meteor.wrapAsync - ничего не работает, пиздос.
Вся эта хрень для того чтобы из коллекции вытаскивать уникальные значения и передавать в список опций, но в интерфейсе метеора для монго не реализовали distinct, соответственно есть только функция на сервере и только промис. В итоге приходится вытаскивать все тысячи значений из монго и на клиенте их уникализировать, тормозит адово, хз что будет когда записи вырастут с 8к до миллиона. Просто пиздос.
Теперь на работу устраивайся, у тебя достаточно навыков для джуна
Потому что на рынке дефицит специалистов, сособных пилить формочки на фреймворке, рыночная экономика же
Хуки просто удобнее, лаконичнее
спасибо анон, тоже пока ждал допер до этого варианта
Интересно
Это копия, сохраненная 18 ноября 2019 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.