Этого треда уже нет.
Это копия, сохраненная 9 ноября 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
JavaScript thread Number(`114`); /js/ @jensimmons # OP 1270468 В конец треда | Веб
Прошлый тред: >>1266931 (OP)

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Для программирования на ХТМЛ https://codepen.io/pen/
Для фреймворков https://codesandbox.io/
Для Ноды с пакетами https://repl.it/languages/nodejs
Залить, задеплоить страничку, сервер, контейнер https://zeit.co/now

Аноны, хочу получить советов мудрых, высераю пару предложений и код на скриншоте, а получаю смехуёчки. Как быть?
Если рассчитываешь получить дельный ответ, формулируй правильно вопрос:
что я хочу получить, что я для этого делаю, что я вместо этого получаю.
Сделай песочницу по ссылкам выше для ясности и удобства.

П Л А Т И Н А

> Странное приведение типов, комплексные правила, неявные ошибки


Язык разрабатывался с расчётом на доступность Веба для авторов любого вида. Даже плохой код обязан хоть как-то работать. А тебя не обязывает всеми этими странностями пользоваться.

> Динамика, не компиляется, недоязык


Странно, что у тебя после объявления всех типов и компиляния осталось время покакать в этом треде, старичок. Жди ответа на перфокарте.

> Что там и когда происходит в этом одном потоке


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

В К А Т И Т Ь С Я
Возраст, пол, образование не имеют значения. Времени потребуется год с нуля, но это не точно.
Английский обязательно. Проследуй в /fl за гайдом. Первый язык ты осиливаешь ещё до того, как в штаны гадить перестанешь; трать время на язык, а не на отмазки.
Учись учиться. Эффективность, запоминание, дисциплина, режим. Проследуй в /se за гайдами.
https://www.youtube.com/watch?v=5MgBikgcWnY
https://www.youtube.com/watch?v=vd2dtkMINIw
https://www.youtube.com/watch?v=IlU-zDU6aQ0
Ты помнишь образами и связями, а не словами и конспектами.
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. Ничего сложного.
Требует только усидчивости. Как раз подойдёт для того, чтоб в простых условиях выработать правильные привычки и дисциплину. Проходи вёрстку (не трогай сначала JS) на
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
На этом этапе пора формировать информационный фон. Собирай подписки в Ютюбе, Твиттере, на рассылки. Но помни, если ты что-то посмотрел-почитал, то должен потратить минимум столько же времени на написание кода по мотивам. Иначе это обычная бестолковая прокрастинация. Ты не научишься играть в футбол по футбольным трансляциям.

Javascript. Шутки кончились.
https://www.youtube.com/watch?v=rrRZZ_3licM&list=PLo6puixMwuSMIB7x6MNBTNQA3P3Mqo_33
https://javascript.info/ очень дружелюбен к ньюфаням. У него есть предыдущая версия на русском, но она безнадёжно устарела. Здесь описываются многие тонкости языка, которые полезны для общей картины, но на деле вряд ли пригодятся. Так что читай по диагонали, всё равно с первого раза всего не схватишь. А вот задачки обязательно делать (чтоб научиться играть на гитаре, нужно играть на гитаре). Если задачка совсем (за 10 мин.) не получается, то прилежного разбора и воспроизведения готового решения будет вполне достаточно.
Искать каждый раз подробности на MDN ты уже имеешь привычку, не забывай пользоваться. Теперь тебя интересует Draft в спеках.

Node.js позволит тебе вырваться за пределы браузера, сделать свой сервер, автоматизировать рутину в разработке и жизни:
https://medium.freecodecamp.org/the-definitive-node-js-handbook-6912378afc6e
https://developer.mozilla.org/en-US/docs/Learn/Server-side/Express_Nodejs
Нода это уже отдельная приблуда, удобного MDN’a тут нет. Но ты же уже не боишься сухих документаций. Нужно найти доки Ноды nodejs api и сверяться с ними, пока читаешь статьи.
Где-то на этом этапе ещё нужно разобраться с Linux, shell, Git, Docker, но это уже не про нашу шапочку.

Если ещё есть время и хочется подробностей, повторений, закреплений, то
https://www.freecodecamp.org/
повторяет всё (но не разжевывает для ньюфань, иначе было бы достаточно только его), плюс обзор некоторых приблуд, плюс идеи для проектов для портфолио, плюс задачки на алгоритмы.
https://codesignal.com/ задачки, писькомерки, подготовка к собеседованию.
https://github.com/getify/You-Dont-Know-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

Приложение. Всё по-взрослому.
Теперь пора делать что-то серьёзное, применять на практике. Имеется множество готовых приблуд, можно делать приложения любой сложности. Писать здесь гайды к каким-то приблудам нет никакого смысла, так как каждая вполне достойна отдельного треда и имеет свой сайт, где с гайдами постарались. Жизнь готовила тебя к этому, тебе придётся разбираться самостоятельно. Алгоритм такой:
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
Оформи такое в портфолио на Гитхабе и можешь искать работку.
А как же другие приблуды? Сложно и долго осилить только первый язык, фреймворк, что-либо. Следующий ты осилишь в считанные недели, а то и дни.
screp.jpg50 Кб, 1600x746
# OP 2 1270471
Не забывайте принимать таблетки.
Обычно мы делаем бамп-лимит за две недели. Прошлый тред засрали за одну. Всё от того, что вютуха накрыла осенняя депра.
sage 3 1270476
Зашёл в тред и традиционно обоссал + даванул вуесоса.
4 1270478
>>70476
Зачем ты ссышь сам себе в лицо, Кирилл?
5 1270479
https://youtu.be/HLv0sHnJfvw?t=53
Реакт станет легаси говнецом
6 1270485
Пишу на JS с 1998 года.
Все нравится.
Все молодцы.
7 1270486

> 1270465


Так, стоп. Shadow DOM делает "двойную буферизацию" типа vDOM?
Он же вроде заявлялся только как способ инкапсуляции реализации.
8 1270487
>>70479
10 минут видео. Иди нахуй - я умею читать. Я умею быстро читать. Если афтар не может облечь свой высер в краткую статью, пусть ковыляет в биореактор.
9 1270488
>>70468 (OP)

> Странно, что у тебя после объявления всех типов и компиляния осталось время покакать в этом треде, старичок. Жди ответа на перфокарте.



Typescript, ага?
10 1270498
Ребят как насчет курсов Хекслет? Стоящая вещь? Помогут найти работу?
11 1270521
>>70487
Освятил Макcимильяном
https://youtu.be/KMX1mFEmM3E?t=55
12 1270528
>>70521
А чо, кому-то до сих пор не ясно что высер гугла и его пиздоглазый клон не нужны?
2.jpg310 Кб, 2782x614
13 1270548
>>70479
Вот как станет, тогда и приходите, а пока у нас пикрелейтед.
14 1270555
>>70548
Будет плюсом, с#...
Масса вакансий для RN (возможно легаси реакт), флаттер и вуе сссыт на лицоБукиным
15 1270558
>>70479
Да, можешь учить ангуляр скорее
16 1270564
>>70555
Уже и не знаешь за что зацепиться?
ovrw (1).png324 Кб, 600x721
17 1270575
Научился программировать на JS за неделю (тупо в метрошке и на работе в перерывы). Ранее выучил HTML и CSS за два дня. Думал, что JS также просто будет, ан нет, оказалось сложнее.

Что теперь? Нихуя не понимаю, есть какие-то аяксы, джейсоны, ноды, реакторы, и прочие хуй-пойми что.
18 1270579
>>70575
Учи аякс, джесон, реакт и прочую хуй пойми что, очевидно.
19 1270586
>>70575
Иди сразу джуном за 40к, так быстрее научишься, через полгода будет 80.
20 1270602
>>70575
Какие ресурсы использовал при обучении?
21 1270605
>>70602
Купил интенсивы хтмл академии. Думаю еще продвинутый взять, тогда уже миддлом сразу вкатиться можно будет.
22 1270653
>>70468 (OP)
Хватит ли первых двух курсов ХТМЛ академи для того,чтобы вкатится на джуна?
23 1270658
>>70586

>джуном за 40к,


Ты шутишь? Или это какая валюта? Я смотрел вакансии - там программистам не менее 100к платят рублей.
24 1270659
>>70602
SoloLearn на телефоне
25 1270661
>>70658
Джуну больше 40к не заплатят.
26 1270678
Посоветуйте уроков по React Native (хотелось бы на русском, с англом сложности)
27 1270684
>>70653
define курсы? начальный и средний уровень? там большинство по HTML/CSS, JS'а кот наплакал. имхо без него джуном не светит, максимум - верстальщиком
28 1270687
>>70653
Конечно, сверстаешь барбершоп, допилишь коде анд магик, выложишь на гитхаб и хаэрки начнут обрывать тебе телефон.
29 1270689
>>70678
по React материалов хватает, по Native нормальных на русском не встречал. учи англ лучше, ты не сможешь быть разработчиком, если не в состоянии прочитать офф доку, и чем дальше, тем это только будет ухудшаться.
30 1270690
>>70661
У нас стажеры получают 40к
31 1270756
>>70555
Вуесос, тебе галоперидол несвежий дали?
32 1270757
>>70575

>> Научился программировать на JS за неделю


> Выучил половину синтаксиса


FTFY
33 1270766
>>70564
>>70756
>>70479
Мы переосмыслили лучшие практики, и взяли худшее из пхп, ну а хули, у нас ведь одни пхпшники в фейсбуке, learn once...
Один раз тупанули с названием лицоБукиных, поэтому не стали называть либу "трактор в биореактор"
34 1270768
>>70766

> у нас ведь одни пхпшники в фейсбуке


Инсайдер в треде!
Как в FAANG живется, пыходно?
35 1270793
Вместо ебучего вью лучше бы ангуляр зафорсили. Вакансий для этого фреймворка столько же, сколько и для реакта, а конкуренции, особенно среди вкатывальщиков, меньше в разы.
36 1270813
>>70793
В зоопарке для вас вакансии, мартышки-хреньворкщики ебаные.
Джуна.jpg6 Кб, 124x186
37 1270814
>>70690
Кто такая Джуна и чем отличается от стажёра?
38 1270816
>>70813
Ну и какие вакансии там собственно предлагают?
39 1270826
>>70816
Веб-макака, раскачивающаяся на лиане с бананом в жопе, например.
40 1270830
>>70814

>Кто такая Джуна и чем отличается от стажёра?



Тем что стажёра могут выпиздить азазаз не заплатив после испытательного срока.
41 1270831
>>70826
Если за это платят хорошие деньги, то почему бы и нет? К тому же, это мне интересно.
42 1270836
>>70793
Да кто его форсит, кроме шизика-вуесоса?
43 1270837
>>70486
Бамп вопросу.
44 1270854
>>70831
Какие деньги? За банан в жопе и будешь там сидеть.
45 1270948
Есть задача - автоматизировать загрузку xml-файлов из интерентов и прочитать их. Результаты хранить в БД, и по запросу их доставить и показывать пользователю.
Какие инструменты можно использовать?
Что быстрее в реализации и удобнее в поддержке?
Какие фреймворки? Библиотеки?
Дискас
46 1270949
>>70948
Да.
47 1270950
>>70949
Ваше мнение очень важно для нас
48 1270954
>>70948
почти готово
49 1270956
>>70954
срок вчера
50 1271059
Кто разбирается в сокетио?
Если я отправляю методом emit двоичные данные, например массив Float64Array, что в итоге передаётся по сети? Байты этого массива или сериализованная json строка, полученная из массива?
51 1271094
Играюсь с сейчас нодой, пытаюсь разобраться как его к фронту привязать. А у ОПа там сразу экспресс дается. Выходит, на ванильный js+node парсер кинопоиска лучше забить? Дайте наводку, посоны.
# OP 52 1271103
>>71094

>там сразу экспресс


Открой, пожалуйста, ту ссылку в ОП-посте, которая прям перед Экспрессом, который сразу. Ту ссылку, которая первая в части про Ноду. Посмотри оглавление. Я думаю, тебе интересует "Build an HTTP Server".

>парсер кинопоиска


Конечно всегда полезно что-то написать. Только задачу бери попроще для ванилы, а то утонешь в логике.
53 1271105
>>71094
Поверхностно изучаешь нод.жс, потом приступаешь к экспрессу и делаешь на нём. На ваниле у тебя будет дольше и сложнее, тоже самое, что жквери не использовать в фронте и прописывать каждый раз Document.getElementsByTagName("tagname") вместо $("tagname")
54 1271109
Господа, есть необходимость оформить некоторый код в виде отдельной библиотеки. Какие есть рецепты и пошаговые инструкции в написании корректного фасадного объекта? Смотрел исходники других либ там зачастую используют самовызывающуюся функцию дабы скрыть детали реализации.
В гугле находил только информацию о том как правильно использовать export/import (дескать пишешь напротив функции export, теперь ее можно импортировать в другом файле-модуле), но этого явно недостаточно для корректной организации кода в библиотеке.
55 1271113
>>71105

>getElementsByTagName


у нас за такое сразу расстреливают на месте

>>71109
(_ => {
let konechnosti = {};
--liba--
konechnosti.konechnost = 123;
return konechnosti;
})();
56 1271114
>>71113
Ок, самовызывающаяся функция, принято.
Кроме нее никаких других нюансов нет которые стоит учитывать?
# OP 57 1271116
58 1271117
>>71114
добавь ; первым символом в либе, чтобы долбоебы не спотыкались.
59 1271119
>>71109

>export/import (дескать пишешь напротив функции export, теперь ее можно импортировать в другом файле-модуле), но этого явно недостаточно для корректной организации кода в библиотеке.



Почему недостаточно? Только этим и нужно пользоваться, самовызывающаяся функция - прошлый век.
60 1271121
>>71119
Речь о либе которая содержит множество таких файлов-модулей. И важное тут - сокрытие внутреннего апи от внешних рук, а наружу выставить только определенный публичный апи. Как я понял такого достичь можно только через сокрытие области видимости с помощью самовызывающиеся функции, т.к. модификторов доступа в JS нет.
61 1271122
>>71119
Разделение на отдельные файлы-классы это само собой разумеющееся, в первую очередь этим озаботился когда начал писать на JS.
62 1271123
>>71121
Ну в ноде в модуле ты можешь хоть на иконы ссать, внешний код об этом не узнает.
63 1271140
>>71121
Но ведь кто угодно может в код этой твоей либы залезть и сделать публичным всё что им надо.
Пытаться что-то скрыть от внешних рук в интерпретируемом языке занятия абсолютно бесполезное, разве нет?

>>71103

>Только задачу бери попроще для ванилы, а то утонешь в логике.


А что там такого сложного-то? Я не знаю, что он конкретно под "парсером кинопоиска" имел в виду, но если ему всего лишь надо выцеплять инфу о каких-то фильмах и выводить её в своём формате, то это ж примитивное дело совсем. По крайней мере, в тех местах, в которых можно не ваниль / фреймворки использовать.
64 1271143
>>71140

>Но ведь кто угодно может в код этой твоей либы залезть и сделать публичным всё что им надо.



Как они на сервак залезут?
13747558941374755894851.jpg34 Кб, 446x362
65 1271147
Не могу в реакт. Не понимаю эти ебаные пропсы. Куча ебаных компанентов, в которых всё наследует ото всех и передаёт в аргументы в другие компоненты. Как в этом разобраться пиздец. Уже неделю жуткая апатия ничего не могу делать. Начинаю смотреть очередной курс по реакту и сука слезы на глаза наворачиваются от этого. Какого хуя блять. 18-20 летние школьники работают без задней мысли после первого/второго курса, а я нихуя не могу вдуплить блять, сука блять.
66 1271148
>>71147
Д
О
К
У
М
Е
Н
Т
А
Ц
И
Я
67 1271151
бля чуваки хелп
где найти материалы про адаптивную верстку без ебучего бутстрапа?????
68 1271152
>>71147
Учи, используй на практике, не сравнивай себя с другими, не обращай внимания на неудачи. Если бы ты всё это делал, то давно бы уже всё понял и выучил.
69 1271154
>>71151
Зачем тебе без бутстрапа? Очередной адепт нативного говна и любитель изобретать велосипеды?
70 1271155
>>71154
бля ну вот хочу уметь верстать на флексбоксах че тут такого
71 1271156
>>71140

>Но ведь кто угодно может в код этой твоей либы залезть и сделать публичным всё что им надо.


Согласен, это то меня и сбивало с толку

>>71143
>>71123
Речь идет о модулях/либах для браузера.
image.png345 Кб, 686x654
72 1271160
Ничего себе у вас шапка. Чертовы жс-сектанты.
А что если у меня на бэкграунде играет lofi hip-hop рекомендую всем 24\7? Это distraction и я червь пидор?
А если у меня помидорка по 45 минут как в школе\универе? Че в шапке только какие-то курсы, где книги?
73 1271162
>>71156

>Речь идет о модулях/либах для браузера.


Ты же о каком-то апи говорил для пользователей. Что тебе мешает перенести всё что ты не хочешь показывать на серверную часть? По-другому от пользователя ты никак не скроешь, даже обфускаторы не помогут, максимум замедлишь.
74 1271163
>>71160

>lofi hip-hop


Блеванул. Никогда не понимал такой музыки, она призвана не отвлекать, но она как раз таки и отвлекает своей примитивностью и ненужностью, куда лучше слушать на фоне каких-нибудь Prodigy.
75 1271183
На джаваскрипте же сайту пишутся?

>JavaScript обычно используется как встраиваемый язык для программного доступа к объектам приложений. Наиболее широкое применение находит в браузерах как язык сценариев для придания интерактивности веб-страницам[9].


Пишутся ли они только на этом языке или нужен ещё какой-то? Что за "встраиваемый"? Что за приложение в оп-посте упоминается? На нём приложения пишут?
76 1271188
>>71183
Берется html, на нем пишут логику сайта: где шапка, основное содержание, подвал, таблицы, параграфы, заголовки, хуя головки.
Берется css, на нем пишут вид сайта: шапка будет красным по зеленому, у подвала будет размер шрифта в 15 пикселей, желтый цвет текста и бэкграунд в виде котеночка, а основное содержание будет постоянно крутится вокруг центра своего блока по 15 градусов в секунду.
Берется js и на нем делают интерактив, который нельзя сделать ни на хтмл ни на ксс потому что они не для этого: при нажатии сюда пойдет запрос серверу, при нажатии туда перезагрузят эту часть страницы, а эта кнопка навесит на тот html элемент класс "navalnuy2018".
Встраиваемый потому что и как css js встраивается в html либо через тэг <script> либо через тэг <link>. Но можно нахуй выкинуть html, css и сделать все их элементы на js, вроде как. Я пока до этого не дошел ещё.
77 1271199
>>71188
А с приложениями что?
78 1271203
>>71199
Мувисёрчер на реакте (можно с редаксом)
79 1271207
>>71114
Нюанс: при использовании ES модулей самовызывающиеся функции не нужны совсем.
Используй модули.
80 1271217
>>71188

>> встраиваемый язык для программного доступа к объектам приложений


> Встраиваемый потому что и как css js встраивается в html либо через тэг <script> либо через тэг <link>


Макака, лучше бы ты молчала.
81 1271221
>>71154
Зачем бустрап, когда есть божественный flexbox?
82 1271223
>>71147
Компонент - функция, props - аргументы функции. Фунция возвращает отрендеренный HTML.

Так проще?

Классы и lifecycle в 99% не нужны.
83 1271273
>>71223

> Классы и lifecycle в 99% не нужны.


Ты че дурак? Как ты без лайфсайклов хоть что-то сложнее хелловорлда напишешь?
84 1271277
>>71147
Блядь, что за уёбищную уродливую жабу вы постоянно пихаете в картинки? Дерьмо какое-то.

> Не могу в реакт.


Ну и хуй с ним. Учи нормальный JS, а не хреньворкщину всякую.
85 1271278
>>71277
И где ему потом работу искать?
Screenshot2018-09-28-08-17-29-348com.yandex.browser.png117 Кб, 1080x704
86 1271280
Пиздец блядь
Screenshot2018-09-28-08-19-42-318com.yandex.browser.png70 Кб, 1080x383
87 1271283
>>71280
А это вообще просто пушка
88 1271284
>>71221
Да мне похуй, но он говорил про бутстрап.
89 1271288
>>71280
>>71283

>русек


Действительно, пиздец.
90 1271291
>>71278
Да в любой приличной конторе, где ведётся JS-разработка. Хреньворкщина - это чистейший, эталонный быдлокод.
91 1271292
>>71283
А что тебе не нравится, мартышка? Нахуй значению "пусто" участвовать в операциях сравнения с числами?
92 1271293
>>71291
И в каких же конторах ведется разработка без фреймворков?
93 1271294
>>71280
>>71283
Всё логично. null не определен, поэтому точно определить нельзя, больше он нуля или равен ему, вот и выходит, что >= будет true, так как возможно и то и другое, а при отдельном будет false.
94 1271295
>>71291
Напомнило двачеров, которые всех нормальных людей называют быдлом.
95 1271298
>>71207
Ок, звучит логично.
Нужно ли использовать для сборки какие-нибудь бандлеры? Или все это как есть можно деплоить в npm, а уже пользователи библиотеки пожмут/сконвертируют ее своими сборщиками/бандлерами?
96 1271299
Никто случайно не знает где можно украсть книгу "Node.js в действии. 2-е издание"? А то что-то 1200 для меня дорохавато.
97 1271300
>>71299
А зачем тебе? Не знаю, что это за книга, но я уверен, что она безнадежно устарела.
98 1271309
>>71300
Первое издание 2014 года выпуска. Второе, которое мне нужно, 2018. Так что думаю не так уж и сильно она устарела.
99 1271310
>>71299
В интернете есть дохуя и больше, нахуя тебе книга?
100 1271314
>>71310
Ну в книге изложение информации последовательно, структурировано и т.д. Вроде как вместо того чтобы задать сотню вопросов гуглу можно просто прочитать книгу. Хотя знаешь, я сам не уверен нужна ли мне книга. Все-таки JS очень быстро развивается и книги быстро устаревают.
101 1271320
>>71314
В интернете есть сотни обучающих материалов где всё последовательно и структурировано, вопросы гуглу задаются только в том случае если тебе нужно углубиться во что-то, либо найти больше примеров и уточнить что-либо, но ты тоже самое и с книгой делать будешь. Во-вторых это, блять, ебучая книга, как ты в ней код исполнять будешь? За компом ты сразу всё тестируешь и определяешь, понял ты изученное или нет, а с книгой тебе останется только гадать. Или ты книгу собрался на коленках держать одной рукой, а другой рукой код переписывать?
102 1271321
>>71320
Убедил. Не нужна мне эта книга.
103 1271329
>>71273
Как? Ну, во-первых, быстрее - так как не надо дрочить локальный стейт и писать бойлерплейт + тесты на все методы, и во-вторых, надежнее - так как нет шансов прострелить себе ногу в одном из хуков.

.... у макак классический подход: не засунули себе в задницу шипастый фаллоимитатор, вымазанный табаско - день прошел зря.
104 1271330
>>71284
Претензии к телефонной клавиатуре в конец очереди, умник.
105 1271331
>>71298

> Или все это как есть можно деплоить в npm


Легаси-пользователи тебя не будут любить после этого.
Если ЦА - пользователи babel, им пофиг.
106 1271332
>>71291

> Да в любой приличной конторе, где ведётся JS-разработка.


Назови три.
107 1271334
Как сделать такой импорт в одну строчку на тайпскрипте?
import * as React from 'react';
import { ChangeEvent } from 'react';
108 1271335
>>71334

> import * as React from 'react';


Нахуй так делать и чем это отличается от обычного

> import React from 'react';


?
109 1271337
>>71334
В 2.5 точно никак. Может в новых добавили сахарку. А надо?
Напиши React.ChangeEvent, ты же уже все импортировал.
110 1271338
>>71335
А, я так понял, это какое-то легаси ебучее времен 0.0.00001a.
111 1271339
>>71337
У меня так не работает, тс говорит, что у реакта нет такого
112 1271340
>>71335
Ну может у человека аллергия на allowSyntheticDefaultImports
113 1271347
>>71340
react doesn't have default import
Или что-то такое
114 1271349
>>71339
А, это ж тип.
См выше или пиши в две строчки.
115 1271352
>>71349
В 2 строчки нельзя, СИ не пускает, React.ChangeEvent не работает
116 1271357
>>71352

>В 2 строчки нельзя, СИ не пускает


Что ты ноешь? Ну поправь ваш ебанутый линтер или включи allowSyntheticDefaultImports в tsconfig.
117 1271362
Есть ли какая-то разница в производительности между проверкой свойства объекта на undefined и false?
118 1271363
>>71203

>Мувисёрчер


его можно сделать чисто на js + html + css?
119 1271365
>>71363
Конечно, но с реактом кода будет меньше, он будет значительно чище и понятнее для других разработчиков.
120 1271369
>>71365
А через что будет запрос делаться?
121 1271372
>>71369
Ты о чем? Куда запрос? Вообще, я написал это только затем, чтобы триггернуть шизоида, хейтящего фреймворки.
122 1271375
>>71372

>мувисерчер


>серчер


>серч


вот и я пытаюсь понять, куда у тебя будет запрос уходить. Если только в объекте хранить базу данных.
123 1271376
>>71375
На публичный api. Мувисерчер - это вообще мем фронтенд треда, так что у них там только интерфейсная часть.
124 1271378
>>71376
А как же CORS? Ответ же прочитать не сможешь.
125 1271379
>>71378
Схуяли. Если у публичного апи выставлен accept all? На то он и публичный. Ты точно понимаешь, чтоттакое cors?
126 1271382
>>71379
Бля. А я как-то пытался двач запарсить, получил в ебало от CORS. Спасибо за наводку.
127 1271384
>>71382
Accept выставляет сервер. Очевидно двач не выставляет, потому ты и получил. Википедию открой хотя бы, там все написано. А лучше mdn.
128 1271387
>>71280
Че те не нравится? А еще null это обьект, если ты не знал.
129 1271400
>>71362
Конечно, сравнение с false выполняется за O(N), а с undefined - O(log N)!

если у тебя миллионы сравнений (на которых разница микрооптимизации может проявиться), надо ошибку в ДНК алгоритмах и структурах данных править, а не микрооптимизации дрочить
130 1271403
>>71400

>надо ошибку в ДНК править


chromosomes--;
131 1271412
>>71400
Разумеется, у меня не такая задача, которая требует такой тонкой оптимизации. Я просто для себя хочу понять, какой вариант быстрее и что лучше использовать.
132 1271417
>>71362
А что ты подразумеваешь проверкой на undefined?

'prop' in object
или
object.prop === void 8
?
133 1271424
>>71417
Второе
134 1271425
>>71424
На второе котлетки.
135 1271427
>>71412

>что лучше использовать



1 фунтовый бифштекс и 1 пинта горького пива
каждые 6 часов.

1 десятимильная прогулка
ежедневно по утрам.

1 кровать
ровно в 11 ч. вечера.

И не забивать себе голову вещами,
которых не понимаешь
136 1271428
>>71417
Есть еще Object.hasOwnProperty
137 1271430
>>71428
Это не то же самое.
138 1271438
>>71425
>>71427
Бля, ебаный двач =^)
139 1271439
>>71430
Смотря какие свойства тебе нужны.
140 1271441
>>71439
Толерантные.
141 1271450
>>71438
Не ну а чо он дурные вопросы задает?

Замерить поднять жопу никак?
https://codepen.io/anon/pen/dgyePw

Или тут статью написать про V8 JIT и про то, как оптимизатор горячие функции на лету оптимизирует?
142 1271455
>>71450
В голос с долбоеба. А если он и не знал о том, что можно замерить? Типичный хуесос-двачер, который вместо того чтобы запостить что-то полезное, высерает свое ненужное дерьмо для того чтобы потешить свое чсв и возвысится над анонимом. Самому не противно от своей ущербности?
143 1271460
>>71455

>А если он и не знал о том, что можно замерить?


Это пиздец. Живет в лесу, молится колесу, секундомера никогда не видел.
144 1271461
>>71450

>https://codepen.io/anon/pen/dgyePw


В голосину. Даже здесь обосрался. Вопрос был про проверку свойства объекта сравнивая его с undefined/false, а не сравнение false/undefined/true между собой.
145 1271463
>>71460
Приходит ребенок в садик, а воспитатель на его неумение умножить 2*2 говорит "Это пиздец. Живет в лесу, молится колесу, таблицы умножения никогда не видел.". Тебя ебет видел он или нет? Тред не станет лучше от твоей тупорылой попытки сострить, либо пиши по делу, либо не пиши вообще, либо пиши и принимай урину на свое ебало.
146 1271467
>>71461
Во-во-во, все уебанам надо не только разжевать, но и в рот положить. Нахуй, уже и таймеры показал, но все не то.

Ты, JS-гной, реально думаешь, что будет разница?
147 1271468
>>71467
Так ты проверь, даун.
148 1271470
>>71463
Ну прости, сейчас поцелую тебя в лобик, рыбка моя.
хотя нет, иди нахуй. тебе не три годика, и школа / вуз должны были научить основам
149 1271471
>>71468
Так я проверил, даун
150 1271474
>>71470

> должны были


Кому должны? Тебе и твоей шизофрении?
151 1271476
>>71427

>пива


серьезно?

>бифштекс каждые 6 часов


6 часов не есть охуеешь же
14592147724870.jpg32 Кб, 511x399
152 1271477
>>71471

>действительно поверил, что результаты будут разными


>называет кого-то дауном


А ты смешной. Вот чтобы не было таких сомнений, сравнивать нужно то о чём спрашивали, а не то что в твою голову тупенькую взбредёт.
153 1271480
>>71474
Обана, в треде необучаемый
154 1271481
>>71476
Цитата.
155 1271482
>>71477

> ... беспомощно пытается троллить.


Продолжайте, ваше мнение важно для нас
156 1271483
>>71482

>указали на тупость


>делает вид, что не обосрался


>вы просто тралите неет маам скажи!!


Не перестаю проигрывать с тебя.
157 1271492
>>71483
вуесос, перелогиньтесь
158 1271493
>>71455

>А если он и не знал о том, что можно замерить?


Но если он спрашивает, что из двух вариантов быстрее, значем он понимает концепцию сравнения величин. То есть, нужно сравнивать два времени выполнения. А как эти времена получить? Замерить.

В общем, я хоть и понимаю, что ты пытался корявенько сказать, но это не тот случай, когда действительно нужна сторонняя помощь. Точнее, единственная помощь, которая тут уместна, это как раз пинком его к самостоятельному замериванию и подтолкнуть.
159 1271501
>>71493
Но ты не подтолкнул, ты всего лишь пукнул в тред и развел здесь срачь вместо того чтобы дать ссылку на https://developer.mozilla.org/ru/docs/Web/API/Performance/now и сказать чтобы он сам замерил и всем рассказал.
160 1271503
>>71501
А тебе не горько сознавать, что ты нестолько бесполезен, что даже не пукнул?
161 1271505
>>71503

>аноним


>ты


Ясно. Очередной шизик забывший выпить таблетки.
162 1271507
Вопрос из разряда ебобо.
На сколько ограничен мобильный хром по сравнению с пк версией, в отношении js. Если можно, какие-то примеры приведите.
163 1271510
Вагон умер.
164 1271522
>>71147
А это еще хуйня, тебе еще предстоит ощутить мощь рендерпропсов и хоков, почувствовать иммутабильность и редакс, изучить сайдэффекты и мидлвари, и конечно, вызубрить верстку и семантику документов.

Хули ты хотел блядь, ты думал почему фронтенд самый высокооплачеваемый сразу после джавадаунов.
165 1271542
>>71294
Блядь, а вдруг он меньше нуля? В жидоскрипте же беззнаковых чисел нету, да?
166 1271553
>>71387
Официально признанная ошибка
image.png11 Кб, 458x95
167 1271575
Анон, есть такой элемент в доме!

Как обратиться к значению value и изменить его?
168 1271581
>>71575
Ты интенсивы по жс от кокодемии проходишь? Ты че дурак?
169 1271582
>>71581
А что? Это считается зашкваром?
да
170 1271583
>>71581
ща бы смотреть курсы, которые учат искать элементы в доме)00
171 1271585
>>71582
Зашквар у тебя в штанах, а их курсы по жс - это пустая трата времени. 10+ часов слушать хлюпанья чаем, вместо того, чтобы прочитать ту же информацию и даже более подробную у илюши за пару часов.
172 1271586
>>71585
Да, но у них какой-никак проект, с нормативами и помощью от наставника.
173 1271594
Вопрос >>71575 снимается. Разобрался.
174 1271597
>>71585

> 10+ часов слушать хлюпанья чаем


Ебать как я проиграл. А что, они там действительно сильно хлюпают чаем? У меня есть где-то как-то купленный на удеми курс, так там чел гонят сопли и сморкается очень часто и громковато как по мне (он простудился походу), и мне настолько надоело что я уже было хотел поставить низкую оценку курсу с комментарием "сопляк".
175 1271600
>>71542
Так null <= 0 тоже будет true выдавать.
176 1271601
>>71575
Используй jquery, долбоеб, потом же сам охуеешь от того, что всё по новой учить надо и твои querySelector нигде не нужны.
177 1271604
>>71294
null это объект, косяк автора.
178 1271605
>>71294
Какое-то корявое объяснение, по-моему. "больше или равно" это то же самое, что "не меньше". А так как null не меньше 0 (в смысле, null < 0 === false, потому что неизвестно, и от этого отрицание берётся), то и выходит, что он будто бы больше или равен.

>>71501
Газы скопились, ничего с собой поделать не мог. Вредно в себе держать.
179 1271610
>>71604
Объект
# OP 180 1271611
>>71507
Если Андроид, то там тот же V8 @ Blink, что и на десктопе. Так что не ограничен.
Если гейфон, то там любой браузер это всего лишь морда для встроенного Сафари. Так что это хуй за щеку даже покруче ИЕ.
181 1271612
>>71604
Объект не будет выдавать true на >= 0 или <= 0, а null выдает.
182 1271613
>>71605
Он может быть меньше, может быть равен, а может быть больше нуля, т. е. не определен, поэтому на четко определенные сравнения (> < = ) он выдает false, а на все остальные (>= <=) true.
183 1271620
>>71586

> Да, но у них какой-никак проект


Попап на канвасе со статами - заебись проект. Я вообще не понимаю за каким хуем они в качестве проекта выбрали ебаную игру, которая никакого отношения к реальности не имеет и обучению не способствует. Мне кажется они настолько ебанаты, что решили залепить в проект нахуй не нужное вкатывальщику апи канваса только для того, чтобы можно было сделать "проект", которым можно привлечь дауничей.

> с нормативами и помощью от наставника.


Какой помощью? Ты их купил что ли?
184 1271626
>>71613

>Он может быть меньше, может быть равен, а может быть больше нуля


Не может. Это как сравнивать яблоко с оперой, что из них больше? Это математически не имеет никакого смысла, >= и <= могут оба быть верными только если == истинен. А он не истинен.
Нет никакого смысла в твоём "значение не определено, поэтому под более широкий диапазон мы выдадим тру".
Даже если бы был оператор <=>, сравнение нула с чем угодно должно было бы выдать false. Но не работает оно так из-за приведения null'а к +0 при переводе в число. При == этого не делается.

Вот тебе спека JS'а, где описаны шаги вычисления >=. http://interglacial.com/javascript_spec/a-11.html#a-11.8.4
185 1271631
Сегодня написал свой первый в жизни HOC... Поздравьте меня.
186 1271635
Как думаете, Web Сomponents смогут заменить популярные фреймворки?
187 1271636
>>71631
Ты его уже третий раз первый раз в жизни пишешь.
188 1271637
>>71635
А чем они лучше?
189 1271638
>>70468 (OP)
Хочу выразить бугурт по поводу анального SpeechRecognitionAPI, который отправляет инфу с микрофона в гугл и не работает без инета. А я хотел запилить своего офлайн Джарвиса на яваскрипте
Аноним 190 1271641
>>71637
Нет првязки к стеку технологий, легко шарить компоненты между командами разработчиков
# OP 191 1271646
>>71638
Брат, всё будет, но не сразу.
Веб 3.0 становится правдой прям у нас на глазах. Конечно же Гуглу не интересно грузить свои серверы, но пока только так. Скоро повсюду будут СИМД-процессоры, типа тех, что сейчас делает Нвидиа для АИ. И Гугл будет получать готовенькие результаты, вычисленные за твой счёт.
Ну а пока
— Мы поставим у вас дома микрофон, который будет передавать все ваши разговоры в корпорацию.
— Вы что, сдурели?
— О, а ещё он будет говорить вам погоду за окном.
— А, ну тогда ладно конечно. Мы даже заплатим.
192 1271699
>>71635
https://reactjs.org/docs/web-components.html

ЧСХ, можно написать веб-компонент с использованием React, а можно запихнуть чужой WebComponent в проект на React.
193 1271700
>>71601

> $ нигде не нужны


FTFY
354354345.jpg46 Кб, 600x449
195 1271707
Итак посоны, есть вопрос. Пытаюсь понять эту хуергу немного, но туповат. Делаю скрипт для левого сайта, предположим.

Мне нужно с другой страницы этого же сайта вытянуть содержимое и загнать его в таблицу. Содержимое, разумеется, динамическое.

Просто подскажите в какую сторону копать, как вытягивать, а то я совсем лупень.
196 1271711
>>71707
Два слова: chrome extensions. Остальное очевидно
197 1271712
>>71707
>>71711

>> Делаю скрипт для левого сайта


>> с другой страницы этого же сайта вытянуть содержимое и загнать его в таблицу


> Два слова: chrome extensions. Остальное очевидно


/pr не перестает изумлять.
198 1271727
>>71707
Каким-нибудь найтмер жоес пиздить оттуда контент, сохранятт его в бд/жсоны/текстовики/вообще похуй и с помощью ноды же отдавать клиенту. Только это не скрипт уже нихуя, да.
200 1271733
>>71732
Так тебе ыше доказали, что ты пиздабол, когда заявил, что

>Объект не будет выдавать true на >= 0 или <= 0



Это ложь.
201 1271734
>>71707
Пишешь на node.js свой скрипт, пакуешь его при помощи browserify, используешь в браузере. Но суть в том, что такой скрипт и без браузера работать будет, поэтому не понятно почему тебе именно из браузера нужно. Иначе сохранять своего рода таблицы ты можешь только в формате JSON, либо в формате HTML, при этом JSON у тебя будет храниться в localStorage и копировать его оттуда придется руками, а HTML придется вставлять на страницу с которой запускаешь скрипт и сохранять её потом тоже руками.
203 1271736
>>71735
Ты понимаешь, что ты сравниваешь не объект, а преобразованный в число объект?
image.png120 Кб, 468x303
204 1271737
205 1271738
>>71736
Ты понимаешь, что ты выше делаешь то же самое?
206 1271739
>>71736
маня, объект - это абстракция, имеющая определенное поведение. ты объект сравнивать сам по себе ни с чем не моешь. ты можешь его только представиться тебе кем-то и сравнить это представление с чем-то. попросишь представиться числом - он представится числом, попросишь строкой - представится строкой. объект - это тебе не ассоциативный массив.
207 1271740
>>71739
Так мы о стандартах говорили, а не о "А ВОТ ЕСЛИ ТАК СДЕЛАТЬ, ТО ВСЁ БУДЕТ ТАК КАК Я ГОВОРЮ!". null это объект который нельзя изменить и поведение у него будет такое же как и у стандартного объекта в тело которого не вносили изменений, ты совсем тупой или просто потроллить пытаешься?
>>71738
Но я не говорю объекту каким числом ему представляться, в том то и разница. Это как на заявление о том, что небо голубое, кто-то наденет на себя очки с розовыми линзами и начнет кричать, что небо не голубое, а розовое.
208 1271741
>>71740

>Но я не говорю объекту каким числом ему представляться


Говоришь.
Ты создаешь пустой объект его литералом. То каким он числом представится (NaN) - прописано в спеке.
209 1271742
>>71740

>null это объект который нельзя изменить


Я тебе могу создать объект, поведение которого ты не сможешь изменить. Что дальше?

Чем блядь твое прописано в спеке, отличается, от прописано в библиотеке, идиот?
210 1271744
>>71741
Не говорю, за меня это сказали разработчики языка.
>>71742
В том, что речь шла именно о том, что известно заранее благодаря разработчикам языка (null и object), а не сделано отрицающей манькой. Ты настолько глупый, что аналогию понять не можешь? Ну дали тебе помидор, от того что ты можешь сделать его квадратным, другие помидоры квадратными не станут, насколько нужно быть тупым чтобы этого не понимать?
image.png19 Кб, 731x326
211 1271745
>>71744

>другие помидоры квадратными не станут


Ммм.
212 1271746
>>71744

> речь шла именно о том, что известно заранее благодаря разработчикам языка (null и object)


Речь шла о том, что - цитата -

>Объект не будет выдавать true на >= 0 или <= 0, а null выдает.


И что эта цитата - пиздабольство.
213 1271748
>>71744

> а не сделано отрицающей манькой.


Ну вот тебе встроенный объект разработчиками языка - new Nunber

Что выдает new Number >= 0 и new Number <= 0

Или у тебя new Number не object? Или не встроенный разработчиками?
214 1271751
>>71746
>>71748

Почему твой воспаленный мозг решил, что речь шла об объекте как о конструкторе, а не о литерале? При том, что null является именно литералом и в качестве конструктора использоваться не может.
В голос с тупой маньки, которая втиснулась в разговор с желанием выебнуться, но как обычно обосралась.
215 1271752
>>71751
Еще один даун.
Литерал объекта - это короткая запись вызова конструктора.
216 1271753
>>71751
new Number - это не конструктор, а конечный объект, мудак.
15002882299430.jpg68 Кб, 1209x481
217 1271754
>>71752
Ну раз ты так скозал....
218 1271755
>>71753
Тоже самое - >>71754

Твои попытки маняврировать уже дошли до стадии отрицания реальности, может остановишься? А то я уже начинаю опасаться о твоем, и без того слабом, здоровье.
219 1271756
>>71754
Ты что. Совсем дебил?
Ты сейчас начал отрицать, что
{} - это короткая запись new Object?
220 1271758
>>71755

>Тоже самое


А, а new Number - это у тебя конструктор.
Все, я понял тебя.
Хорошего дня.
221 1271761
>>71756
Вот теперь ты можешь давать пример в котором new Object >= 0 || Object <= 0 будет true. Именно Object, долбоебина, а не HYI_PIZDA.
>>71758
new Number это объект созданный при помощи конструктора функции Number, тупорылое ты ничтожество :)
222 1271762
>>71761

>Объект не будет выдавать true на >= 0 или <= 0, а null выдает.



> Именно Object, долбоебина


>Объект не будет


>долбоебина


Понятно.

>Именно Object, долбоебина, а не HYI_PIZDA.


Тебе выше уже показали, где именно new Object будет давать. Пиздоглазый, разуй глаза.
223 1271763
>>71761

>Объект не будет выдавать true на >= 0 или <= 0, а null выдает.


>new Number это объект

224 1271764
нужен толковый ответ, как, блядь, в тесте страницы запретить выполнение ДОЛБАНОГО скрипта?
225 1271766
*тексте
2.jpg101 Кб, 576x499
226 1271770
>>71764
Пикрелейтед/расширение типа AdBlock/свой скрипт который будет удалять из тела страницы ненужные скрипты до момента их исполнения.
227 1271773
>>71770
Вроде ясно высказался:

>>>в тексте страницы<<<

228 1271781
>>71773
В тексте?) Ну добавь <h6> ЗАПРЕЩЕНО ВЫПОЛНЯТЬ ДОЛБАННЫЙ СКРИПТ </h6>

В коде страницы выполнение определенного скрипта ты никак запретить не можешь, тогда бы все адблок запрещали. Только определить запущен какой-либо скрипт или нет, а потом отреагировать на это каким-либо образом.
229 1271786
>>71781

>>>определить запущен какой-либо скрипт


подробней, plz
230 1271789
>>71786
Ну на примере адблока:
Создаешь div элемент с id "ads", при загрузке адблок вырежет этот div, в этот момент вступает твой скрипт, который определяет существует этот div с id ads или нет, если нет, то он заменяет весь кода на надпись "Отключите адблок и обновите страницу", если всё норм, то ничего не делает.
231 1271804
>>71764
Опищи свою задачу подробнее. Зачем, что именно и где ты хочешь запретить.
232 1271834
>>71804
бесплатный хостинг встраивает в мою страницу код с рекламой, ищу возможное решение
233 1271836
>>71834
Перейти на другой хостинг.
234 1271838
>>71834
В какое именно место он встраивает скрипт? Всегда ли это одно и тоже место в теле страницы?

Если да, размести перед этим местом скрипт делающий document.write("<!--")
235 1271840
>>71834
Или дай ссылку на пример страницы, куда он встраивает рекламу.
236 1271841
>>71834
А что мешает найти, как называется div с рекламой и сделать ему display:hidden в js? Ах да, с бесплатных хостингов ведь могут пидорнуть за это
237 1271859

>>>с бесплатных хостингов ведь могут пидорнуть за это


склоняюсь к этой же мысли

>>>В какое именно место он встраивает скрипт?


перед <!DOCTYPE html>

>>>Всегда ли это одно и тоже место


да

>>>дай ссылку на пример страницы


нет
image.png110 Кб, 690x699
238 1271865
https://repl.it/repls/JaggedWorthwhileWheel

Как сделать нормально? После Питона чувствую себя аутягой, 20 строк кода на такую хуйню. Как быстрее и проще?
239 1271866
>>71859

>перед <!DOCTYPE html>


тогда надо смотреть на скрипт
но на

>>>дай ссылку на пример страницы


>нет


и суда нет
240 1271870
>>71865
Перевёл бы что ли, не все знают английский
241 1271873
>>71870
Зачем ему знать мнение кого-либо, кто не знает английский?
242 1271874
>>71865
Перегруппировать условия. У тебя в куче мест логика частично перекрывается, например a === b в одной ветке и a === null && b === null в другой.

Убрать вложенность if-ов

Упростить условия после первых двух пунктов
243 1271875
>>71873
Двачую оратора
246 1271880
>>71878

> a != a && b != b


А это зачем? Так ведь твой deepEqual сделает NaN равным NaN'у, хотя в условии нигде не говорилось про подобное изменение поведения.
247 1271881
>>71879

>deepEqual({a:0, b:1}, {b:1, a:0})


>=> false

248 1271882
>>71879
Пиздец макака.
249 1271883
>>71878

> a != a && b !=b


Не надо пытаться быть умнее паровоза
250 1271889
>>71874
https://repl.it/repls/BitterGrubbyLoopfission
А так? Сначала проверяю, являются ли они нормальными объектами и тереблю за ключи. Иначе ===

>>71878
Спасибо, интересно.
251 1271897
>>71889
Тут ты сам выбираешь, где остановиться.

Твой вариант вполне ок (лучше >>71879 и >>71878), а о вкусовщине говорить можно до бесконечности.

Я бы порезал вложенные if-ы и разбил условия на более простые.
https://repl.it/repls/CooperativeBeautifulParallelport
Гондола все будет хорошо.webm3,8 Мб, webm,
1484x1080, 0:42
252 1271906
Не знаю, в правильное место ли я обратился, но все же попробую. Изучаю реакт, делаю кое что простенькое на нем, но недавно встал вопрос о передаче данных из одного компонента в другой, при этом оба реакт-компонента - независимые. Пошарил в интернете и говорят, что для таких нужд нужен редакс. Стал изучать его, но, видимо я не совсем полностью понимаю его логику. Не могу найти пример, где подобная ситуация реализована. Если у вас есть подобные примеры, то не могли бы вы их показать? Я был бы очень признателен.
Заранее спасибо
253 1271912
>>71906

> Стал изучать его ... Не могу найти пример, где подобная ситуация реализована



Братиш, а в "изучать его" прочтение документации на redux входит? А то мне кажется, что кто-то охуел, и элементарные примеры в разделе Basics проигнорировал.
254 1271913
>>71906
Не нужен редакс, нужна правильная архитектура. Тебе нужно передавать данные с общего родителя, а если компоненты должны эти данные изменять, то передавать им колбеки в качестве пропсов. Редакс делает то же самое в твоем случае.
255 1271914
>>71912
У редакса документация хуйня, нубас не осилит.
256 1271916
>>71913

> Тебе нужно передавать данные с общего родителя


Ну-ну, а потом в зависимости от структуры компонентов будешь таскать пропы с коллбеками через пяток уровней вложенности.
257 1271918
>>71914
Шооо? Да там все разжевано до кашицы.
258 1271922
>>71913
Ну, там используется маршрутизация. Т.е. в одном маршруте есть компонент, который генерирует какие то данные и их нужно передать в другой маршрут, в котором используется другой компонент. А как передать в пропс данные другому компоненту при этом не вызывая его - я не знаю. Наверно для этого и сделали редакс, чтобы все состояния в хранилище держать а может и нет. Я нубас, все делаю на самообразовании
Ладно, попробую что нибудь придумать
259 1271926
>>71922
Тогда контекст погугли.
260 1271930
>>71922
https://reactjs.org/docs/lifting-state-up.html

Редакс тоже норм решение, чтобы не прокидывать пропсы через сто уровней вложенности.
261 1271932
Друзья, подскажите, пожалуйста, с ссылкой на пункт в спеке, расшифровывающий поведение следующего, наверняка очевидного для многих, кода:

> if (function f() {}) typeof f


1) почему условие выполняется, ведь function declaration возвращает undefined? Потому что хоистится? Ок, тогда второй пункт:
2) почему, если объявление функции хоистится, typeof это функции возвращает "undefined"?

Спасибо заранее.
263 1271947
>>71932
У тебя не FunctionDeclaration, у тебя FunctionExpression (именованный)
264 1271952
>>71922
Пишешь сгенерированные данные в стейт, подписываешь нужный тебе компонент на стор через connect(), через mapStateToProps делаешь его видеть стейт из стора и вуаля, они видит нужные данные
265 1271957
>>71932
А, внутри if expression выржение приводится к булеву ( https://www.ecma-international.org/ecma-262/9.0/index.html#sec-if-statement-runtime-semantics-evaluation )
267 1271967
>>71934
>>71965
Чем плоха книга? Я лет 10 назад покупал 5 издание в печатном виде.
268 1271978
>>71967
Чем плох пейджер? Я лет 20 назад покупал и пользовался.
269 1271982
Недавно начал изучать JS, нашел для себя async и await. Но я всё еще не понимаю как и где их использовать.

Анончики, пожалуйста объясните простым языком с чем и как это используется. С меня тонны нефти!
270 1271985
>>71967
Книга хорошая, правда чуть устаревшая. Просто вылезла первая по запросу "js book".
271 1271987
>>71982
Забей пока. Потом когда начнешь запросы на сервер делать, вспомнишь.
272 1271989
>>71982
Продолжай обучение, в скором времени ты столкнешься с колбеками, затем с колбек хеллом, потом поищешь как его победить, узнаешь о промисах, поймешь, что вместо колбекхела получил промисхел и вот тут тебе придет на помощь async/await
273 1271991
>>71982
Асинхронный код пишешь как синхронный
274 1271992
>>71991
Заодно бампану биореактором
275 1271994
>>71987
Я уже делаю запросы к БД (использую Mongo DB (под node.js Mongoose), и вот мне парень сказал что было бы лучше если я начну использовать awayt и async. А дело в том что я прочитал несколько статей и всё ровно не понял что к чему...

Вроде как код запускается паралельно или т.п. - это всё что я понял.
276 1271995
>>71994
Ты понимаешь что такое промисы?
277 1271996
>>71995
Вроде как, промис отправляет запрос и ждёт результата и в зависимости от результата, он выполняет нужный код. Правильно?
278 1271997
>>71982
Есть запрос A по результатам которого тебе может понадобиться информация из запроса Б, которая будет влиять на ход исполнения callback функции запроса A. Раньше тебе бы пришлось зацикливать всё это и делать карусель, добавляя запрос Б в запрос А и дописывать часть кода из запроса А в запрос Б. С async ты в нужном месте кода запроса A пишешь async Б и никаких каруселей выдумывать не нужно.
279 1272000
>>71996

>промис отправляет запрос и ждёт результата



Ок, понимание на уровне «это какая-то магия». Иди читай про промисы. Async/await это обертка над ними.

Про event loop почитать тоже лишним не будет.
280 1272002
Ну блин, я прочитал, но нихуя не понял, можете бытовым языком объяснить?
281 1272003
>>72002
Ну охуеть, блять, не понял он. По этой теме в сети миллиард гайдов. И текстом, и картинками и видосом и с дрочкой вприсядку. Иди читай пока не поймешь.
282 1272005
>>72002

>бытовым языком объяснить


Это работает с Божьей милости неизвестным нам образом.
283 1272006
>>72003
https://learn.javascript.ru/promise
Я нашел это и это:
https://habr.com/company/ruvds/blog/326074/

Но мне так и не объяснили зачем это юзать. Окей, анон выше сказал что away/async позволяет более удобнее получать ответы на n запросы. На этом и остановляется весь плюс всего этого?

Что насчет скорости?
Одна функция сможет быть использована n раз без потери времени?
284 1272007
>>72006
Вот еще: https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/async_function

Цель функций async/await упростить использование promises синхронно и воспроизвести некоторое действие над группой Promises. Точно так же как Promises подобны структурированным callback-ам, async/await подобна комбинации генераторов и promises.

А вот нахуя это вообще нужно? Только ради простаты? Мне это нужно узнать...
285 1272008
Хочу попробовать устроится на жс прогера, мне 37 лет
Раньше никогда не работал в этой сфере.
Жс знаю хорошо.
Вопрос есть шанс , что в таком возрасте без опыта возьмут ?
Может кто устраивался при подобных обстоятельствах ?
286 1272009
>>72006
Ты на русском что ли гуглишь? Серьезно?

>Но мне так и не объяснили зачем это юзать.


Это ложь, даже у Кантора написано зачем нужны промисы.

>Одна функция сможет быть использована n раз без потери времени?


???
287 1272010
>>72007

>ради простаты


Всё возможно.
288 1272012
>>72008
Если знаешь React, Redux, Node.js и еще вагончик различных фреймворков и библиотек, то могут взять в какую-нибудь шаражку на пол ставки. Но при этом нужно действительно хорошо знать жс и кучу фреймворков, и то будут смотреть как на говно и шизика, лучше вкатывайся на upwork, там можно заработать репутацию выполняя относительно простые задания за которые платят мало, заодно и опыт будет.
289 1272013
>>72010
орнул
290 1272014
>>72007
Зачем нужен Array.forEach и подобные функции если можно использовать циклы for или while?
291 1272018
>>72014
А зачем нужем Array.forEach, если есть Array.map?
Наверно для простАты
Хотя на тостере читал, что быстрее работает While, потом for, потом map, потом forEach
292 1272020
>>72007
Не только, промисы помещаются в очередь микро-тасков, у них порядок выполнения отличается. Не помню, сам гугли.
293 1272021
>>72020
В начало очереди они помещаются. Так же как raf
294 1272022
>>72018
Затем, что map возвращает новый массив.
296 1272040
https://repl.it/repls/PrimeGrownOpensource
Что происходит, если заменить строку над закоменченной ей самой? Долго доходило, что конкатенация возвращает новый массив, а не меняет in-place, но даже если так, то возвращенный в никуда массив должен идти нахуй, и после всего остается [1]. А остается [6,7]. Как так?
297 1272061
>>72040

Ссылки на объекты (но не фактические объекты): метод concat копирует ссылки на объекты в новый массив. И оригинал, и новый массив ссылаются на один и тот же объект. То есть, если объект по ссылке будет изменён, изменения будут видны и в новом, и в исходном массивах.
298 1272069
Хочу перекатить локальный сайт в NW.js. Хочу узнать, возможно ли это (фреймворк не знаю) на винде.

1) Нужно избавиться от локального сервера (apache php mysql).
2) Есть html и js файлы чужого сайта, который по XHR общается со с сервером в интернете. Нужно будет открывать несколько копий этого сайта и для каждой копии должны быть свои cookie.
3) Основная страница приложения должна иметь доступ ко всем копиям этого чужого сайта (dom, js) и наоборот - все копии чужого сайта должны иметь доступ к js основной страницы приложения.
4) Должен быть mysql, который хранит данные в папке с приложением.
5) Кодирование и декодирование base64.
6) Конвертирование jpeg gif png в jpeg.
7) Свободная работа с файлами на пк.
299 1272076
>>70468 (OP)
Cап аноны,
Задачка вам с недавнего собеседования:
Есть натуральное число X и массив натуральных чисел M.
Сколькими способами можно получить X суммируя числа из M?
Например Х = 3, М = [1,2,3,4] и ответ 2 1) 1++1+ 2) 2+1.
300 1272077
>>72076

>1) 1++1+


1+1+1
быстрофикс
301 1272081
>>72040
Конкат новый создаёт, а вот push как раз добавляет в существующий. 6 и 7 у тебя в ветку с push'ем попадают.

res у тебя объявлена глобальной переменной, поэтому при каждом заходе в flatter ты его обнуляешь, поэтому все пуши до 6 и 7 "пропадают". 6 и 7 остаются, потому что выполняются в самом конце цикла и после них с res ничего не делается.
302 1272089
>>72069
Нихуя ты губу раскатал
303 1272090
Посоны, фронтэнд и верстка — это одно и тоже? Вот реакт, скажем, это к чему относится?
304 1272095
>>72090
Не совсем. Фронт-энд и бэк-энд - термины, пришедшие к веб-макакам из среды пассивных педерастов, означающие еблю в рот и жопу соответственно. А вёрстка - всего-навсего составление и компоновка странички.

> Вот реакт, скажем, это к чему относится?


Тоже ебля в рот. Точнее, хреньворкщина.
305 1272096
>>72069
Всё делал в электроне кроме конвертации картинок, поэтому не знаю возможно или нет.
306 1272098
>>72076
https://repl.it/repls/UnselfishGiftedLists
Первые страницы SICP'a. Значит эта книга все таки не мем, ха? Кто бы мог подумать.
307 1272103
>>72076
Открываю гугл и нахожу готовое решение. Еще вопросы?
308 1272105
>>70555
Зато большая часть вакансии Vue включают в себя и React:
В регионе Москва:
517 вакансий «React not vue not php not native»
57 вакансий «vue not React not php»
309 1272107
>>72090
Одно и тоже, вёрстка это начальный этап фронтенда, реакт это уже заключительный. Сначала ты располагаешь элементы на страницах (вёрстка), а потом оживляешь их и налаживаешь взаимодействие между посетителем страницы и контентом (реакт).
310 1272108
>>72098
Какая же ты мразь.
Или пишешь со скобочками, или оставляешь все на одной строке вместе и ифом. Понял?
311 1272109
>>72103
>>72098
Через остаток от деления (%) решение сделал, но оно через раз срабатывало, лол.
Подобные задачи на одной онлайн олимпиаде видел, но там посложнее.
312 1272110
>>72109
На какую должность собеседовался?
313 1272111
>>72098
SICP не читал, ибо 4 года в вузике отпахал и новое для себя вряд ли в нем найду, хотя кто знает.
314 1272113
>>72111

> новое для себя вряд ли в нем найду


> не решил простую задачу

315 1272114
>>72110
JS Джуниор .
Помимо этой задачки были еще общие вопросы, задачка на замыкания (функция "с памятью") и мельком поговорили про ООП.
316 1272115
>>71575
Написать селектор, который его выберет и вывести свойсто value
document.querySelector('.setup-fireball-wrap .fireball-color').value
317 1272121
Аноны, немного нетипичная для данного треда просьба, но, вообще, через консоль можно ли выдрать с твича закрытое видео типа https://www.twitch.tv/videos/129664796 ?
318 1272126
>>72121
Не-а.
Для сравнения это как спросить: "А можно через консоль с чужого аккаунта сообщение отправить?". Я вдруг чего не обидеть хотел, а просто показать принцип работы этой защиты.
319 1272128
>>72126
Спасибо. То есть то, что видео хранится где-то на сервере, не даёт к нему доступа для скачки?
320 1272130
>>72128
Привязано к аккаунту, у которого есть подписка. У тебя видео даже не загружается. Ты сначала заходишь на страницу, на сервер идет запрос и проверяется, есть ли у твоего аккаунта доступ к видео, если есть, то потом уже и видео начнет загружаться, а так для тебя это просто статическая картинка "нет доступа". Подделать запрос на сервер очевидно нельзя.
321 1272133
>>72130
Почему нельзя?
323 1272146
>>72144
блять случайно отправил но не суть. В первый раз когда игра запускается, текстуры накладываются друг на друга. Как фиксить?
324 1272147
>>72146
Алсо моя телега для сотрудничества @NOHOMOXD
325 1272151
>>72133
Чтобы подделать запрос тебе надо знать логин и пароль от аккаунта, либо украсть ку-ку от сессии с залогеного компа.
image.png17 Кб, 472x372
326 1272154
>>72061

> в новый массив


Который тут же отправляется в небытие. Не понял, к чему ты клонишь.

>>72081
Что это значит, глобально? я знаю, что это значит
res это локальная переменная flatter, при каждом новом вызове новый пустой res, в старых вызовах (которые ждут ответа от рекурсивного вызова) свой непустой res.
327 1272173
>>71992
Хотя зачем я ведусь.
329 1272176
Это правда, что jQuery - говно для быдла и реальные посоны отказываются от него?
330 1272178
>>72176
Да.
331 1272179
>>71476

>6 часов не есть охуеешь же


Че епта? Могу не есть целый день, под вечер только начну голод испытывать.

Как вообще можно питаться больше 2х раз в сутки?
332 1272184
>>72176
С одной стороны да, с другой инструмент надо выбирать по потребностям.

По треду может показаться что сейчас весь интернет на реакте и модных фреймворках, но на деле это очень маленькая часть сайтов, большинство веба это классический сервер рендеринг, половина веба вообще вордпресс, а там jQuery обязательный скрипт.

Поэтому если ты хочешь найти работу быстрее, то jQuery может пригодится. Вот в нашей конторе шарашкиной мы только 4 месяца назад на Вью перешли, а все время до того работали с jQuery, да и сейчас в маленьких сайтах проще его заюзать чем пердолить компоненты на фреймворке.

Более того, сейчас пойдет волна обратная - от фреймворков к упрощению и чистому JS, уже вспоминают такие штуки как turbolinks и старые добрые надежные рельсы/джанго. Т.к вся эта каша огромная архитектура + еще какой-нибуь редакс и реактоприложение превращается в говно похлеще лапши на jQuery. Только в лапше можно кое как разобраться, а в сотне компонентов, которые туда сюда передают пропсы - хуй.

Но конечно, еще года 2-3 реакт продержится, так что если ты планируешь устраиваться именно JS-джуном в галеру, то джикверя тебе не нужна.

А вот если фриланс/удаленка, то скорей всего столкнешься с ней.
333 1272189
>>72184

> вордпресс


> 4 месяца назад на Вью перешли, а все время до того работали с jQuery


> в маленьких сайтах проще его заюзать вместо ваниллы, ага


> turbolinks


> Только в лапше можно кое как разобраться, а в сотне компонентов, которые туда сюда передают пропсы - хуй.


> фриланс



Эталонное говноедство
334 1272193
>>72184
Такое-то диванство, лучше рот не открывай при адекватных людях ирл.
335 1272194
>>72189
>>72193
Аргументы, клоуны?
337 1272196
>>72194
Против чего? Говноедский пост полон оценочных субьективных суждений, с ними спорить - как играть в шахматы с голубем.
338 1272197
>>72195
Вуесос потужился и высрал v-for, @click, :style в двадцати строках простейшего компонента. Мазохисты стонут от наслаждения.
339 1272199
>>72197
Жду версию на реакте
340 1272200
>>72199
>>72174

Слепошарый? Компактнее, без ебанутого "сахара".
341 1272201
>>72200
counterMessage каждый раз вызывается
342 1272203
>>72201
Понятно, что говноеды не могут без микрооптимизаций, но допустим, что какая-то макака умудрилась положить настоящую тяжёлую логику (а не выбор собщения) в представление...

https://codepen.io/anon/pen/jeEpqJ
delta-airlines.jpg51 Кб, 678x381
343 1272205
Сколько просить джуну 23лвл на самом деле вообще никогда не работал, получил образование в совсем другой области, и с этим дипломом невозможно устроиться на работу со знанием JS, React, TypeScript , ExpressJS, NodeJS и Андроид на Java в ДС?
counter2.jpg88 Кб, 762x704
344 1272207
>>72203
Сделай на реакте фулл версию
345 1272208
>>72196
Пусть пребывает в своем манямирке, где интернет весь в радужных пони фреймворках, джиквери нинужен, а сайты делают только на ноде и реакте.
346 1272209
>>72205
Готов поспорить что нихуя ты не знаешь, если б знал уже работу б нашел. И уж тем более не можешь ты знать 2 стака, ты уже не джун тогда.

Ну смотря какая контора, если галера - 60-80к, если поменьше, то 40-50к.
347 1272216

>>127220


Ну так я просто даже и не пытался еще. Ну я не утверждаю что я сеньор-помидор в обоих стаках (Бэк на ноде, фронт на реакте), но написать приложение, с авторизацией, на архитектуре RESTful могу. А не искал до сих пор, потому что думаю, что малонихуя не знаю.
Типа, какой даун захочет платить за мои скиллы. Понимаю что это лютые заебы.
Но у меня такое чувство, что если я приду на собеседование, меня начнут спрашивать.
- Давайка, заебашь, нам веб клиент управления МКС с учетом точек Лагранжа.
- А что такое точка Лагранжа.
- оооо, ясноо... Это же основы. Мы вам перезоним
А потом меня внесут в черный список программистов, и меня больше никогда не позовут на собеседование и я пойду работать охранником в Дикси.
348 1272218
>>72216 это к этому >>72209
349 1272222
>>72154

>res это локальная переменная flatter


Нет. Почитай про объявление переменных, var, let и const.

https://repl.it/repls/HarmfulRepulsiveBugs
350 1272233
>>71978
Книга для своего времени была единственно нормальной. Всё полностью объяснялось. Я после её прочтения на мидла в яндекс трудоустроился, но это было 10 лет назад...

>>71985
Ну так язык развивается, ничего удивительного.
351 1272251
>>72205
Какую Джуну?

> получил образование в совсем другой области


Вот и пиздуй работать по профессии.
352 1272255
>>72205
Скинь гитхаб. Мы же не можем твой скилл телепатически опредедить. «Знать React» это понятие крайне растяжимое, но обычно реально что-то знающие люди так не говорят.
353 1272265
>>72251
Джуна - это подносильщица кофе в IT-конторе. Выполняет самую грязную работу, от говновёрстки шаблончиков до чистки туалетов.
354 1272271
>>72205

>просить


Умерь пыл для начала, лол. Ты же обосрешься не сумев правильно ответить на вопрос на первом собеседовании, какой нахуй "сколько просить"? Если хоть что-то дадут, то считай, что тебе крупно повезло.
355 1272273
>>72208
Ну, если нравится копролитную лапшу пилить - jQuery нужен.
356 1272274
>>72205
Если джуны сейчас могут и в ноду, и в реакт, нахуя нужны помидоры? Можно джунов же нанять, они все и сделают.
357 1272286
>>72184
Капчую этого! Прошлый проект начали на реакте/редуксе, в итоге все разраслось в нечитаемую массу, в итоге скинули это всё индусам украинцам поддерживать.
Сейчас решено на ваниле делать, если что-то крупное то перейдем на ангуляр.
358 1272288
>>72286
Ебать вы неспособные.

*мимо 50к LOC на react/redux
359 1272294
>>72288
Что за loc? logged online clients?
image.png352 Кб, 1505x274
360 1272295
>>72294
Далеко пойдёшь.
361 1272300
>>72199
Вот же ты травмированный shouldComponentUpdate.
Бедный ребенок

https://codesandbox.io/s/42y6583zz4
362 1272301
>>72286

> Прошлый проект начали на реакте/редуксе, в итоге все разраслось в нечитаемую массу


> Сейчас решено на ваниле делать


Успех неминуем, надо просто сильнее головой об стену биться.
необучаемые
363 1272302
>>72300

>https://codesandbox.io/s/42y6583zz4


подрыв жоп кодомакак из-за функциональщины через 3... 2... 1...
364 1272310
>>72271
Че ты несешь. Все нормально он спросил. Почти на каждом ебаном собесе будут вопросы "на какую зп вы претендуете?", "назовите ваши ожидания по зп" и прочее. Ему все равно что-то адекватное надо ответить на такие вопросы. Вот и спрашивает здесь.
2.jpg205 Кб, 1769x874
365 1272312
>>72300
Что за дерьмо ты высрал, почему всегда синий?
366 1272313
>>72286
Шок, кто же у вас там работает. Не дай Бог с такими за один проект попасть.
367 1272316
>>72312
>>72207
Утырок, глаза протри.
this.colors.push("blue")

А почему всегда blue - к вуесосу.
368 1272318
>>72310
А, ну да, если ты скажешь слишком много или слишком мало, при этом покажешь идеальные знания нужного стека, то тебя без разговора пошлют нахуй. Надо обязательно в треде спросить про зарплату, потом еще загуглить, потом еще спросить у тех кто уже работает. Самому не смешно?
369 1272319
>>72316
А каунт по какому принципу прибавляется/убавляется? Почему ты высрал это непонятное дерьмо и не постеснялся выложить его здесь? Не понятно что это дерьмо делает и зачем оно нужно.
370 1272322
>>72319
>>72207
Утырок, глаза протри.
повторенье - мать ученья
371 1272326
>>72322
У него всё нормально работает в отличие от тебя, инвалид.
372 1272334
>>72326
На работающий codesandbox ссылку нахуй быстро и решительно.

Не надо тут пиздеть про код со скриншота. Я различия в том, что ты, дебилушка, напечатал и то, что он, дебилушка, запостил, выискивать не буду.
373 1272339
>>72334
Конечно не будешь исправлять, потому что ты только и способен на то чтобы высерать подобное неработающее дерьмо без всякой логики. Научился фигурные скобочки и пару английских слов писать ? Ну так мамке показывай, она похвалит, нахуй ты это сюда с серьезным видом принес, лол?
374 1272340
>>72339
Далеко пойдешь, макака нахуй. Уже в шахматы можешь играть в роли голубя.

На работающий codesandbox ссылку быстро и решительно, ебанатор, или получи в лицо тугую струю.
375 1272341
>>72340
Жди долбоеба-автора скриншота, мне больше делать нехуй как хуйню какую-то писать, лол. Взрослые дяди за свой код деньги получают, а не пытаются им тешить свое чсв и доказывать что-то кому-то на анонимном форуме.
376 1272342
>>72341

>>> кококо! маааам, меня обоссали


>> сынок, ну напиши, что большой и занятой


> "мне больше делать нехуй как хуйню какую-то писать, лол"


Одобряю. Стряхни капельки с ресничек и продолжай писать важный код.
377 1272356
Друзья, а каким образом происходит повышение в должности/матпоощрении?
Автоматически, по истечении какого-то срока работы? Или сами просите? Что в последнем случае предлагают, снова собеседование или тестирование?
378 1272358
>>72356

> Друзья, а каким образом происходит повышение в должности/матпоощрении?


В ваших конторах, разумеется.
379 1272360
>>72356
Для этого отдельный тред создали, хватит этим здесь срать.
380 1272362
>>72356

> Что в последнем случае предлагают, снова собеседование или тестирование?


В жизни такого не видел.
KPI, peer reviews, итоги года и прочее.
381 1272373
>>72356
Performance review каждые полгода.
382 1272374
>>72360
Прошу прощения, если не заметил. Имелся в виду "мы вам перезвоним" тред?

>>72362
Благодарю за ответ.
383 1272382
>>72373

> Performance review каждые полгода.


Это выглядит примерно так, как описано здесь: https://m.habr.com/company/badoo/blog/331570/ ?
384 1272402
>>72334
>>72341
https://codesandbox.io/s/lykwpvmk79
Только при изменении counter, должно отрабатывать counterMessage и добавлять цвет в colors
385 1272407
>>72300
>>72312
ramda/recompose
Спасибо, посмешил
386 1272419
>>72207
>>72402
Так, быстро нахуй.
Сначала одно, потом другое.
Таблетки прими.

>>72407
Картина маслом - хохочущий макак.
387 1272424
Котаны, значит я хочу сделать расширение, чтобы я могу выбрать область на картинке(манге) с английским языком и текст бы распознался и перевелся на русский.
Какие библиотеки смотреть или куда копать? Помогите. Дай бог здоровья
388 1272458
>>72424
Тебе нужен OCR. Никаких библиотек под разработку расширений ты не найдешь. В лучшем случае можешь найти себе облачный сервис и подвязаться на его апи, но вряд ли отыщещшь что-то стоящее.

Твой вариант, или пилить связку в виде демона работающего локально на компьютере и занимающееся распознаванием текста с картинки, и пересылать ему данные из расширения. Или поднимать такой же демон в облаке, если ты планируешь расширение не только под себя.

Перевод в твоей задаче самое простое, апи переводчиков тебе жопой жуй, бери гугл - яндекс, кого угодно. А вот OCR как сервис - это дело не бесплатное и не дешевое.
check if gay.jpg49 Кб, 499x369
390 1272487
Есть один API, который выдает посты с разметкой похожей на маркдаун. Планирую делать фронт на реакте, поэтому встал вопрос, как рендерить разметку при том, что постов на страничке может быть до 1000. Лексер\парсер с рекурсивным спуском написать не трудно, вопрос в производительности жс, сможет он в такое или нет? Подумываю написать на bucklescipt OCaml, он вроде может в хвостовую рекурсию, и преобразование в жс, но нужно поучить окамл. Есть какие-нибудь альтернативы или проще на ванильке писать?
391 1272515
>>72487
Ты прям всю тысячу сразу собрался выводить? ЗОЧЕМ?
392 1272531
>>72487
На окамле ты можешь использовать ocamllex/menhir, не надо руками писать никакие парсеры, там все есть.
393 1272545
>>72222
Ааа, я let перед res'ом не поставил. Теперь понятно.
То есть при первом вызове js ищет res, не находит его и потому создает новый, а при всех последующих рекурсивных вызовах функции находят объявленный во внешней области res и обнуляют его. Так?
394 1272553
Анон, расскажи о подходах по написанию модулей.
Как оптимальнее реализовывать фрагменты кода: в виде классов или в виде функций-фабрик? Какой способ считается хорошей практикой?
Сам пришел из Java мира и интуитивно пытался писать через классы, однако возможно есть лучшие практики.
В гугле находил статьи в которых упоминается что фабрики имеют больше бенефитов против классов.
Что думаешь, анон?
395 1272558
>>72553
И в догонку.
Считается ли нормальным миксить подходы в рамках одного проекта? Скажем, часть кода организовать в виде классов, а часть в виде фабрик?
Мне кажется что это усложнит чтение кода другим девелоперам которым придется с этим работать, соответственно придерживание одного стиля будет лучше влиять на читабельность.
Опираясь на статьи в гугле о том что фабрики имеют больше бенефитов и на то что стоит все организовывать в едином стиле то получается что классы остаются не у дел.
396 1272586
>>72558
>>72553
И уточню, под factory подходом я подразумеваю создание объектов без оператора new.
397 1272593
Начал вкатываться, прошёл бесплатные курсы кокодемии html/css. Возникли вопросы, сильно ли нужны интенсивы html/css? Или уже начать щупать JS?
398 1272599
>>72558
Хорошей практикой считается шлепать формы на Реакте, вертеть ООП на хую и угорать по функциональщине. Я серьезно.
399 1272603
>>72318
Я просто не хочу оказаться в ситуации, что попрошу меньше, чем мог бы зарабатывать
400 1272606
>>72458
>>72424
>>72462
Можно написать приложение для телефона, которое будет принимать картинки с текстом для перевода и переводить их используя телефонный гугл-транслейт в котором есть функция перевода текста с картинки, после чего он будет посылать ответ с результатом перевода в расширение. При этом можно использовать эмулятор андроида.
401 1272608
>>72603
Адекватный человек просит столько, сколько ему нужно, а потом уже действует по ситуации, договариваясь с работодателем. Если ты боишься чего-то, то тебе лучше подтянуть свои знания до уровня который позволит тебе ничего не бояться на собеседованиях.
402 1272609
>>72603
Блять, а как нам определить сколько ты можешь зарабатывать, если те не показал ни строчки своего кода? Зато за каким-то хуем выделил информацию о возрасте, как будто от этого все зависит. Ты в гей-шлюхи устраиваешься или куда?
403 1272610
>>72593
В голос. Зачем ты у нас спрашиваешь? Нужны или нет - определяется по собственным ощущениям и достигнутым целям, если у тебя ощущение, что ты нихуя не понял, либо у тебя не получается сделать оболочку нужного тебе сайт, то - да, нужны. Если у тебя всё заебись и ты достиг поставленных целей, то не нужны. В любом случае, в голову тебе залезть никто не может и понять что ты и как ты там прошел тоже не можем, поэтому решать придется только тебе, хватит уже жить по советам других.
1020193797.jpg71 Кб, 398x565
404 1272614
>>70468 (OP)
Кто-то читал? На сколько она будет новичку полезна? Список литературы из главного треда не внушил доверия.
405 1272619
Анон, как сделать сброс формы по нажатию кнопки?
406 1272620
>>72487
Может, не рендерить 1000 постов одновременно? Или они состяят из одного слова 1px шрифтом?
407 1272621
>>72558
Порезать на независимые компоненты с общим подходом к интерфейсу. Что внутри компонента (классы, фабрики, фукциональщина), никого не интересует.
408 1272636
>>72614
Что за рофлы? Почему этот ниндзя похож на макаку? На что они, собственно, намекают?
409 1272643
>>72614
Она написана 10 лет назад. В реалиях веба - это как до нашей эры.
410 1272644
>>72606
Зачем это надо, если и так можно установить на пекарню какой-нибудь tesseract? Нахуя какие-то эмуляторы, телефона. Ты ебнутый?
411 1272645
>>72644
Я так думаю, то был сарказм или реально ебнутый
image.png470 Кб, 877x424
412 1272647
>>72614
Если ты хочешь научиться передовым методикам измерения производительности, то конечно, читай.
413 1272667
>>72599

>вертеть ООП на хую и угорать по функциональщине


Ок, тоже к такому выводу пришел.

>>72621

>компоненты с общим подходом к интерфейсу


Вот собственно про этот общий подход к интерфейсу и спрашивал.

В общем подытоживаю. Классы и создание объектов через new не является хорошим средством во всех отношениях, методика разработки чисто на функциях имеет больше плюсов и стало быть стоит писать код так, что бы внешние интерфейсы модулей представляли собой фабрики в функциональном стиле.

На хабре еще нашел вот такой пример
https://habr.com/company/ruvds/blog/351800/
414 1272669
>>72644
И как ты автоматизируешь процесс со своим tesseract? API у них платное.
415 1272672
>>72667

> Вот собственно про этот общий подход к интерфейсу и спрашивал.


Выбери любой и придерживайся его.
417 1272691
>>72678

>JS-тред


>C/С++


В голос с дауна. Нахуй ты вообще здесь что-то пишешь?
418 1272695
>>72691
Ты настолько тупой, что не можешь организовать IPC между программами написанными на разных языках? Не пойти бы тебе нахуй?
419 1272696
>>71553
Это не ошибка, это особенность языка. Именно такие особенности делают язык душевным.
420 1272698
>>72300
А мне понравилось. Тоже хочу в таком стиле научиться писать.
421 1272700
>>72545

>при первом вызове js ищет res, не находит его и потому создает новый, а при всех последующих рекурсивных вызовах функции находят объявленный во внешней области res и обнуляют его.


Не совсем. Он ничего не ищет и не обнуляет в прямом мысле. Он просто каждый раз новый объект создаёт, и присваивает
его этой переменной. То же самое, как если бы ты писал window.res = [] ( или global.res = [] в ноде).
422 1272701
>>72696
Это официально признанная ошибка.

Автор сам говорит - простите, обосрался, надо было язык реализовать за две недели, а тепеоь обратную совместимость надо соблюдать.
423 1272703
>>72644
Вот за тесеракт благодарочка. Покопаюсь с этим.
Впрочем и остальным мое увожение.
424 1272704
>>72701
Ты в курсе, что первый стандарт писали не две недели, и не один автор?
425 1272715
>>72704
Ты фантастический деградант, не знающий разницы между Javascript и ECMAscript и не понимающий, что стандарт писался так, чтобы не поломать обратную совместимость с существующим языком.

Пиздуй в биореактор приносить пользу, короче.
426 1272726
>>72715
Дурачок. Первая реализация JS, та самая написанная за 10 дней - была Mocha. А JS появился когда стандартизовали ES. И собственно JS был его эталонной реализацией.

>стандарт писался так, чтобы не поломать обратную совместимость с существующим языком.


С каким из, существовавшим на момен до написания спеки, идиот? Была реализация Нетскейпа, майкрософта, и еще куча васянских поделок.

Порассказывай мне тут о том, что происходило при мне и на моих глазах, еще пожалуйста.
427 1272730
>>72695
Долбоеб, зачем мне организовывать IPC если всё можно написать на одном ЯП?
428 1272747
Есть данные, которые приходят с сервера и хранятся постранично в Mobx-сторе. Нужно организовать обновление каждой страницы с определённым интервалом. Как это сделать?
Хотелось бы сделать что-то вроде такого https://pastebin.com/DYA0nGeY
Направьте в нужную сторону, плиз.
429 1272751
>>72726
Ты фантастически упорный дебил.
Думаешь, не относящиеся к делу детали тебе помогут?

Прочти уже http://wiki.ecmascript.org/doku.php?id=proposals:typeof и пойми, что typeof null == 'object' захуяченная в стандарт - это сраная совместимость с существущей de-facto реализацией языка, независимо тот того, как твоя тупая голова её обзовет - Mocha, хуёча, Javascript, JScript или еще что. Как авторы спека сказали в обсуждении: это неплохо бы поправить, но идиоты уже используют особенность языка.

Это раз.

Дальше, эта же тупая голова явно не вмещает тот факт, что названия Mocha и LiveScript просуществовали примерно примерно четыре месяца - что явно больше времени, проведенного тобой в животе мамки - а уже в декабре 1995 (за два ебаных года до выхода ECMA стандарта, закрепившего говноедство c typeof null) эту загадочную поеботень официально назвали JavaScript.

Это два.

> при мне и на моих глазах


Иди капли от маразма прими, старикашка-тестер.
Screenshot2018-10-01-08-50-11-970com.yandex.browser.png101 Кб, 1080x522
430 1272769
Это правда?
Я просто тут видел срачи не раз, так и не понял что использовать.
431 1272772
>>72769
Это копролит.
Используй let / const
432 1272776
>>72769
Правда, только "var" надо заменить на "let".
433 1272777
>>71585
Что за Илюша?
14937375523491.jpg203 Кб, 1800x1800
434 1272778
>>72777
Олды поймут...
435 1272789
>>72643
>>72647
>>72636
Так, я понял, мэтры, какую литературу Вы бы посоветовали. Алкаю знаний.
436 1272799
Ребята. Кто-нибудь пробовал работать через rdp/vnc?
Насколько удобна и эффективна будет такая работа, если сеть в пределах одной комнаты?
Ситуация такая. Собрал охуенную пекарню и работаю за ней. Но захотел переместить пека в другую комнату, т.к. корпус громоздкий и не вписывается в интерьер.
Хочу из своего кабинета подключаться через rdp/vnc к пекарне и работать.
PS: сеть через провод
image.png11 Кб, 649x92
437 1272802
>>72647
Короче разбираюсь с visual studio code у меня бэкендовый проект, нормально открывал несколько файлов, сразу в списке открыты было, а сейчас стоит мне с одной c одного файла перепрыгнуть на другой, то старый эдитор закрывается, и в списке открытых едиторов только один, где убрать автоматическое закрытие старого эдитора?
438 1272816
как перезаписать параметры svg файла, находящегося на сервере? вроде получил его через get, но дальше не понимаю, что делать.
439 1272818
>>72816
точнее надо перезаписать один параметр и затем вернуть всё обратно в svg файл
440 1272820
>>72776
>>72772
const/let это прошлый век, в современном стандарте все юзают var
441 1272826
>>72820
Не пизди.
В современном стандарте вообще не используют модификаторов доступа к переменным. Все переменные хранят в глобальной области видимости.
442 1272827
>>72789
Бампецкий
443 1272830
>>72827
Никакую.
Чтобы выучить JS достаточно MDN. https://developer.mozilla.org
Если ты совсем тугой, то Кантора почитай. https://learn.javascript.ru/
15328453598500.jpg15 Кб, 199x200
444 1272831
>>72802

>visual studio code

445 1272832
>>72830
А я уже codecademy проплатил ну ебана хах
25fe8a0bb3d6724b793595571d9d6b18.jpg31 Кб, 500x372
446 1272833
>>72832

>codecademy проплатил


Ебать у вас тут потешный тред)))
447 1272836
>>72820
>>72826
Хороводик шутников
448 1272837
>>72836
С тобой никто не шутил, пёс.
waves-prijsverwachting-wallet[2].png74 Кб, 1135x709
449 1272840
>>70468 (OP)
Аноны каким образом JavaScript может работать с cookies?

Я вижу, что на этом сайте: https://waveswallet.io/
можно зарегистрировать кошелек вавесов,
тупо сгенерировав сид, или написав туда даже русские буквы.
Затем, этот сид шифруется паролем, и при вводе пароля - предоставляется
доступ к персональному аккаунту, привязанному к адресу.

Подумалось мне, что зашифрованный seed хранится в куки...
Пошёл сюда: https://learn.javascript.ru/cookie
Открыл консоль, ввёл в консоли:

>alert( document.cookie );



Пошёл на вавес сайт, ввожу alert( document.cookie );
и... Ничего... Вылазит пустой алерт!

Казалось бы, причём тут куки? А в исходнике (это файл waves-lite-client-mainnet-0.5.18.js )
я вижу некую
function $$CookieReader($document) {
//...
}

Ну и алсо, если скачать waves-lite-client-mainnet-v0.5.18.zip отсюда: https://github.com/wavesplatform/WavesGUI/releases
то всё это работает ещё и локально, без Интернета (я имею в виду саму авторизацию).
Значит, где-то в браузере, хранится зашифрванный сид, но куки, почему-то - пустые.

Я также вижу там, в коде, часто используется .ng, особенно в классах...
Как это всё работает?
Существуют ли в angular какие-либо особые функции для работы с куками?
waves-prijsverwachting-wallet[2].png74 Кб, 1135x709
449 1272840
>>70468 (OP)
Аноны каким образом JavaScript может работать с cookies?

Я вижу, что на этом сайте: https://waveswallet.io/
можно зарегистрировать кошелек вавесов,
тупо сгенерировав сид, или написав туда даже русские буквы.
Затем, этот сид шифруется паролем, и при вводе пароля - предоставляется
доступ к персональному аккаунту, привязанному к адресу.

Подумалось мне, что зашифрованный seed хранится в куки...
Пошёл сюда: https://learn.javascript.ru/cookie
Открыл консоль, ввёл в консоли:

>alert( document.cookie );



Пошёл на вавес сайт, ввожу alert( document.cookie );
и... Ничего... Вылазит пустой алерт!

Казалось бы, причём тут куки? А в исходнике (это файл waves-lite-client-mainnet-0.5.18.js )
я вижу некую
function $$CookieReader($document) {
//...
}

Ну и алсо, если скачать waves-lite-client-mainnet-v0.5.18.zip отсюда: https://github.com/wavesplatform/WavesGUI/releases
то всё это работает ещё и локально, без Интернета (я имею в виду саму авторизацию).
Значит, где-то в браузере, хранится зашифрванный сид, но куки, почему-то - пустые.

Я также вижу там, в коде, часто используется .ng, особенно в классах...
Как это всё работает?
Существуют ли в angular какие-либо особые функции для работы с куками?
450 1272841
>>72831
ну я так то на сублайме сидел, но там нет
а) Отладки
б) Автокомпилирования вуе.
в) Возможности задавать одну переменную среды для разных проектов. не меняя ее в коде.

Это из того что мне нужно
451 1272847
>>72840

>alert( document.cookie );


Чот проиграл.

Просто открой в инспекторе вкладку Application, там все данные есть.
452 1272853
>>72614

Купил пару недель назад второе издание, вышедшее в 2015 году. Фундаментальные вещи раскрываются подробно, десятки страниц посвящены замыканиям, областям видимости, регэкспам и прочему стафу.

Использовать эту книгу как путеводитель в фичи нового стандарта будет глупо, а вот для систематизации знаний самое то. Мастхэв.
453 1272860
>>70468 (OP)
Памагите, я тупой.

[CODE]let a = 0;

module.exports.update = function(b) {
save(a);
a = b;
}

async function save(value) {
console.log(value); // тут я думал должно быть 0, я же его передал, но по факту b
...
}
[/CODE]

Я вроде и понимаю, почему так происходит, но не понял, как починить. Мне нужно вызывать save() и не ждать, пока он завершится, а сразу назначить a = b, но при этом сохранить то, что я передал в функцию.
454 1272862
>>72295
орнул
мимо
455 1272865
>>72860
У меня работает...
Вставил, короче, в index.html это:

<script>
let a = 5;

update = function(b) {
save(a);
a = b;
console.log("inside update(", b, "): a = ", a);
}

async function save(value) {
console.log("inside save(", a, ") a = ", value); // тут я думал должно быть 0, я же его передал, но по факту b
//...
}
update(2);
</script>

открыл в Mozilla. Смотрю в консоль... Результат:
inside save( 5 ) a = 5 index.html:11:2
inside update( 2 ): a = 2 index.html:7:2
456 1272866
>>72860
значение "b" он будет выдавать только в том случае если ты передал его переменной "a" до выполнения функции update. В том отрезке кода, что ты дал, всё работает нормально.
457 1272877
>>72833
Ну да, а чо делать, нести деньги на курсы как-то мне кажется нерациональным, русским аналогичным сайтам я не особо верю - зачем, если у меня свободный английский.
458 1272896
>>72877
Каким образом до "свободного" дотягивал?
459 1272897
>>72896
Хотя конечно слушать советов человека который оплатил codeacademy чтоб выучить js...
460 1272900
Анон, нужна помощь.
Первое - помоги непредвзято оценить уровень кода (джуниор/совсем зелёный новичок/ты чо здесь забыл, гуманитарий!?)
Второе - дай советов мудрых, как можно прокачать JS-скилл. Очень желательно что-то сессионное, где можно прочитать главу\выполнить задание\освоить технологию за час-два, больше непрерывно к сожалению выделить не получится, адова работка ирл всё время сжирает. Основные желаемые направления - практика фронтенда, развитие правильного мышления (чтобы не забивать шурупы молотком, у меня мозги чутка деформированы хуйнёй вроде cmd\powershell, поэтому на JS невольно переношу не самые лучшие практики оттуда).
Пример приблизительного текущего уровня. https://pastebin.com/eq8rtkiu
Спрашивал у товарища, и он сказал всё ок, но я сомневаюсь в беспристрастности ответа, мог просто завысить результат, чтобы не обижать. Поэтому спрашиваю у тебя, анон.
461 1272902
>>72896

>Каким образом до "свободного" дотягивал?


Оплатил coursera, очевидно же
12a4a2c54e0a2c17bdb1a59d4617d13e.jpg122 Кб, 1113x1024
462 1272909
>>72902
Так у тебя "свободный английский" или ты "прошел платный курс английского"
463 1272911
>>72900

>выкладывать код на пейстбин


Пощади.
464 1272912
>>72900
Чет местами хуйня какая-то. Зачем создавать элементы в коде? Это прямо в хтмл же делается парой строчек. Это настораживае
465 1272914
>>72912
Потому что вот эта херня с pastebin - подключаемое расширение движка. А движок написан на похапе через пень-колоду. По сути, нормального доступа к шаблонизатору нет у расширения, поэтому создается через JS.
466 1272921
>>72900

>var вместо let/const


>не используешь this


>не используешь стрелочные функции


>объявление переменной вне цикла, когда это можно сделать в цикле


>нахуя ангуляр если всё это можно сделать через JQuery и получится тоже самое, только короче и понятней?



В общем, "совсем зелёный новичок" который учил JS по устаревшей книге, а потом быстро соскочил с него для того чтобы нахвататься основ Angular.
467 1272924
>>72909
Я свободно прошел курс. У меня платный английский.
468 1272925
>>72847

>в инспекторе


В ком?
2.jpg162 Кб, 689x875
469 1272927
>>72925
Ctrl+Shift+I

Куда ты с такими знаниями лезешь? Купи курсы на codeacademy и не вылезай оттуда пока не пройдешь их.
470 1272929
>>72921
Спасибо.
471 1272946
>>72927
Ты продаешь?
изображение.png3,3 Мб, 1920x1080
472 1272950
>>72921

> нахвататься основ Angular


Шта? Где там ангуляр?
473 1272955
>>72950
А $new и $id это что по-твоему?
474 1272966
>>72955
Функции.
475 1272969
>>72955
Немного сахара из жаваскрипта этой борды.

function $id(id) {
return document.getElementById(id);
}

function $n(id) {
return document.getElementsByName(id)[0];
}

function $t(id, root) {
return (root || document).getElementsByTagName(id);
}

function $c(id, root) {
return (root || document).getElementsByClassName(id);
}

function $disp(el) {
el.style.display = el.style.display == 'none' ? '' : 'none';
}

function $new(tag, attr, events) {
var el = document.createElement(tag);

if(attr) $attr(el, attr);

if(events) $event(el, events);

return el;
}

function $del(el) {
if(!el) return;
if(el.parentNode) el.parentNode.removeChild(el);
}

function $attr(el, attr) {
for(var key in attr) {
if(key == 'text') {
el.textContent = attr[key];
continue;
}

if(key == 'value') {
el.value = attr[key];
continue;
}

if(key == 'html') {
el.innerHTML = attr[key];
continue;
}

el.setAttribute(key, attr[key]);
}

return el;
}

function $event(el, events) {
for(var key in events) {
if(!events.hasOwnProperty(key)) continue;
if(el.addEventListener) {
el.addEventListener(key, events[key], false);
}else{
el.attachEvent(key,events[key]);
}
}
}
475 1272969
>>72955
Немного сахара из жаваскрипта этой борды.

function $id(id) {
return document.getElementById(id);
}

function $n(id) {
return document.getElementsByName(id)[0];
}

function $t(id, root) {
return (root || document).getElementsByTagName(id);
}

function $c(id, root) {
return (root || document).getElementsByClassName(id);
}

function $disp(el) {
el.style.display = el.style.display == 'none' ? '' : 'none';
}

function $new(tag, attr, events) {
var el = document.createElement(tag);

if(attr) $attr(el, attr);

if(events) $event(el, events);

return el;
}

function $del(el) {
if(!el) return;
if(el.parentNode) el.parentNode.removeChild(el);
}

function $attr(el, attr) {
for(var key in attr) {
if(key == 'text') {
el.textContent = attr[key];
continue;
}

if(key == 'value') {
el.value = attr[key];
continue;
}

if(key == 'html') {
el.innerHTML = attr[key];
continue;
}

el.setAttribute(key, attr[key]);
}

return el;
}

function $event(el, events) {
for(var key in events) {
if(!events.hasOwnProperty(key)) continue;
if(el.addEventListener) {
el.addEventListener(key, events[key], false);
}else{
el.attachEvent(key,events[key]);
}
}
}
изображение.png40 Кб, 796x1050
476 1272973
>>72969
Ебните меня кто-нибудь, я с разметкой зафейлил. Вот, короче.
477 1272987
>>72973
Какой-то велосипед дауна не знающего JQuery
478 1272995
>>72987
А по-моему, этим говном только зашкварные дауны и пользуются.
479 1273004
>>72995
Ты не прав. jQuery стал стандартом фронтенда ещё году в 2010м. Думаю, половина инета работает с его помощью. Его сила в модульности - есть миллионы плагинов от книжек до каруселей и тд. Учи jQuery и Bootstrap, будешь фронтендером
мимо-интересующийся-яваскриптом
480 1273008
Господа, а есть сейчас вообще современные фреймворки, которые не используют virtual dom в частности и архитектуру при которой json рендерится на клиенте в html в целом? Ну то есть если у меня бэкэнд выдаёт html-ки и мне нужно на них повеситься и их только немного обскриптовать без радикальных изменений в DOM итп. Из jQuery получается куча лапши, поэтому не вариант. Я знаю только https://stimulusjs.org/ в принципе это примерно как раз то, что мне нужно, но может быть есть ещё какие-то варианты. Knockout ещё делает примерно то же, но он же древний пиздец. Backbone в теории можно тоже прикрутить, но это уже немного не то.
481 1273021
Есть карта с метками.
Когда кликаешь по меткам должны появляться объявления.

Как правильно связать метки и объявления, если пары метка-объявления нет уникального id или класса?
Кроме как дать уникальный id/класс есть ли ещё способ их связывать?
482 1273024
>>73021
data-твойАттрибут
483 1273029
>>73024
А их можно через js генерировать?
484 1273040
>>73008

>https://stimulusjs.org/


Ересь какая-то. Его не встроишь без перелопачивания всего приложения. Хотелось бы что-то вроде <input type="text" data-source="dataRoot.greetings"> и как только меняешь dataRoot.greetings то оно меняется в инпуте. Написать что-ли велосипед свой
485 1273042
>>73008

>Knockout


А вот этот вроде неплох.
There are <span data-bind="text: myItems().length"></span> items
<button data-bind="enable: myItems().length < 5">Add</button>
А оно работает реактивно? И почему древность достаточная причина чтобы его не юзать?
486 1273043
>>73008
Хотя нет. На каждый чих создавать ko.observable() это не по мне. Хотелось бы максимальной прозрачности
487 1273062
То есть блять я могу сделать функцию foo, которая изменяет this атрибуты и потом добавить общие методы\атрибуты в foo.prototype, а могу сделать объект прототип с общими методами\атрибутами и записать его полностью в foo.prototype, а могу использовать class нотацию, но там только методы, и почему то не получается поставить запятые между методами, меня это раздражает. А можно ещё 5 способов определять классы?
488 1273065
>>73062
Питушок, это называется выразительность языка, что в этом плохого? В итоге каждый пользуется тем, что ему удобно.
489 1273076
>>72865
>>72866
Короче я точно тупой и ненарочно ввёл в заблуждение. Проблема была в том, что a и b ассоциативные массивы и я пытался сделать так:
a.field = b.field;

а надо было
a = {field: b.field}

Вот пример https://repl.it/repls/ImportantDefenselessAudit

> Я вроде и понимаю, почему так происходит, но не понял, как починить


Поспал немного и понял.
490 1273089
>>73062
Не страдай хуйней - используй классы из ES6.
491 1273090
>>73076

>https://repl.it/repls/ImportantDefenselessAudit



Господь дал вам иммутабельность и кучу библиотек для неё.
Нее, хотим ебаться с багами от побочек, сайд-эффект себя сам не напишет....
432.jpg370 Кб, 1906x768
492 1273096
>>70468 (OP)
Где можно почитать про "ресурсы доступные странице"? Я хз как оно называется правильно, гугл не помогает.

Вот есть у меня страница. Там разметка, там js, ссылкота на css и внешние файлы. Тут всё ясно в общем-то.

Но есть ещё набор произведённых http-запросов и их результаты. Пресловутые json'ы, например.

Вот где это находится и как им управлять с фронта?

Например, мне надо проверить совпадает ли имеющаяся у клиента выгрузка из базы с последней версией той же выгрузки. И если я пекусь за каждый килобайт, то мне вовсе не хочется перезагружать массивный json без необходимости.

И как мне тогда загруженный заменять другим? Просто новый get-запрос и обновление всех таблиц и прочих компонентов, вроде очевидно.

Но если я хочу в загруженном json'е изменить какую-то ветку? Или просто добавить туда данных?
Была б речь об одностраничной хреновине, то понятное дело можно было локальную переменную насиловать и не париться. Но если нужны перезагрузки страницы, то как это реализовать?
493 1273104
>>73096

>И если я пекусь за каждый килобайт, то мне вовсе не хочется перезагружать массивный json без необходимости.


Открой для себя сжатие и кеширование в HTTP.
494 1273112
>>73090

Выжирание вкладкой всей оперативы, конечно же, не сайд эффект, нет.
495 1273116
>>73076
>>72860
Эм, а не проще было поменять местами и сделать

>function(b){


> a = b;


> save(a)


>}


?
496 1273117
>>73116
А, стоп, криво прочитал, сорян.
497 1273119
>>73004
А что вообще такое это жиКуеры? Одна дебильная функция, обозначаемая значком доллара, раздутая до сотни КБайтов, которая в JS заменяется обычным querySelectorAll, плюс хуёвая обёртка над XMLHttpRequest? Нахуй оно нужно, такое говно?
498 1273120
>>73112

> Выжирание вкладкой всей оперативы


Garbage collector исчез?
499 1273121
>>73119

>хуевая


>без неё приходится отслеживать каждый шаг readystatechange


>отслеживать статус ответа на предмет ошибок, вместо назначения одной функции


>прописывать дохуя строк ненужного кода вида xhr.send()


Перетолстил.
500 1273122
>>73121
Так он вроде не говорил, что нужно им пользоваться в 2018 году. В стандартной либе есть fetch, всегда можно подключить другие промис бейзед библиотеки типа axios/superagent.
501 1273124
>>73008
Бери МаркоЖС. В довесок получишь сверхскоростной SSR.
502 1273126
>>73122

>fetch



Ну да, допилили через 5 лет после JQuery огрызок с промисами, заебись. Зачем переходить на fetch если все пользуются JQuery который по функционалу лучше fetch?
503 1273127
Я вообще для Хуякса фреймами пользуюсь, и мне похуй.
504 1273128
>>73124
Я ж говорю, мне не нужен SSR, у меня бэкэнд уже выдаёт готовый HTML. А в марко этом опять стейты и всё остальное. Мне не нужно рендерить стейт в дом. Мне нужно повеситься на готовый дом и добавить события на отдельные элементы, в основном просто через fetch запросики слать. Сейчас это всё делается через jQuery, но оно немного лапшевидное лул. Вот я и спрашивал, есть ли какой-нибудь более структурированный подход к вопросу, кроме стимулуса.
505 1273129
>>73128

>но оно немного лапшевидное лул


Так это не JQuery виноват, а твои кривые ручки, которые ты пытаешься вылечить магическим фреймворком.
506 1273131
>>73126
Аякс жквери перепилили на промисы? В любом случае, подключать жквери для того, что умеет стандартная библиотека, избыточно. Если все-таки хочешь продвинутую работу с запросами, то тот же аксиос мне кажется в 10 раз меньше весит, чем жквери.
507 1273132
>>73129
Если бы я там был один кодер на проекте, то я бы даже согласился с твоим аргументом. Но в сумме их уже было человек 15 (не одновременно). Соответственно, есть джва варианта -- или писать подробнейший гайд о бест-практиках и ревностно за ними следить или же взять фреймворк, который по сути и есть бест-практики уже готовые.

>>73126

>если все пользуются JQuery


все пользуются axios
508 1273134
>>73126
fetch в браузере, никаких оберток не требует
509 1273135
>>73131
Кек, они там еще с 1.5 версии .fail() например, then добавили в 1.8 версии.
510 1273136
>>73124

>> которые не используют virtual dom


> markojs


Ну мальчик, ну ёб...
511 1273137
>>73132

>все пользуются axios



Кто все? Твои друзья смузидрочеры и твоя шизофрения?
512 1273138
>>73134
Ну да, заебись метод когда тебе нужно написать юзерскрипт за пару минут, никто и не спорит.
513 1273139
>>73135

>> промисы


> Кек, они там еще с 1.5 версии .fail() например


/pr, не могу больше, прекрати
514 1273140
515 1273141
>>73137
на всех проектах, где virtual dom или его аналоги типа гиперскрипта (react, vue, preact...), jquery не используется потому что это ректализм неистовый через хуки. поэтому вместо него или axios или fetch, хорош тупить уже.
2.jpg150 Кб, 863x424
516 1273143
>>73139

>хахахихихиха хх пр прикрати што ти делаишь ахихихахаха


Портфель уже собрал и решил перед уходом на двачике посрать?
517 1273144
>>73143
Говноеды считают, что доки jQuery - истина в последней инстанции, ага. Найди fail в доках на MDN для начала.
518 1273145
>>73138
А для большого скрипта надо костылик подключить, иначе запросы ходить не будут же.
519 1273146
>>73144
ну он просто немного про версии попутал, до 3.0 там был свой deferred который не совместим со спеками, в 3.0+ уже Promises/A+
520 1273151
>>73144

>Найди fail в доках на MDN для начала.


В голосину. Ну да, давайте в MDN всё дерьмо тащить из библиотек и фреймворков. Я уже понял что ты поехавший, но не до такой же степени.
521 1273152
>>73146
Да я не против deferred.
Мне смешно с кекающей макаки, не знающей методов Promise/A+
522 1273153
>>73145
Иначе придется писать в 10 раз больше кода, который потом будет в 10 раз сложнее читать и модифицировать, всё так.
523 1273154
>>73151
это ты поехавший. тебе говорят про то, что в jquery не было нормальных промисов до 2016 года (3.0 версия) и это правда, а ты тычешь версию 1.5, в которой был собственный костыль, который похож на промисы, но ими не является.
524 1273155
>>73151

> Ну да, давайте в MDN всё дерьмо тащить из библиотек и фреймворков


ооо, чукча писатель, чукча не читатель.
525 1273157
>>73153

> Иначе придется писать в 10 раз больше кода


Признавайся, ты просто копаешься в окаменевшем дерьме и Fetch API в глаза не видел.

У /pr-клоунов всегда то, что не любимый и единственный фреймворчик, обязательно в 10 раз больше, съест всю память и выпьет кровь первенца.
526 1273161
>>73104
Как это относится к оперированию уже загруженными файлами?
527 1273163
>>73154
О, пошли влияния жопой.

>АНИ БЫЛИ НО ИХ НЕБЫЛО !!


Представь себе, JQuery это один большой костыль с самого начала своего существования, как и любая библиотека/фреймворк, и суть в том, что промисы, хоть и не A+ класса у них были еще задолго до появления fetch.
528 1273164
>>73157

>подразумевает, что JQuery можно заменить одним fetch


В голос с макаки, которой дали новую блестяшку и теперь она считает, что эта блестяшка ценнее всего в этом мире и каждый раз норовит упомянуть её.
529 1273165
>>73163
Только на собеседованиях не вздумай такое ляпнуть, бро...
530 1273167
>>73155
Даун, MDN это сторонний проект, такой же как и JQuery только крупнее, с каких пор он стал истинной в последней инстанции, известно только такому шизику как ты.
531 1273168
>>73163

>промисы, хоть и не A+ класса у них были еще задолго до появления fetch.


Сук, в голосину )))
Промисы класса /pr/
14592147724870.jpg32 Кб, 511x399
532 1273169
>>73165

>эта макака которая всю жизнь готовится к собеседованию, в то время когда можно зарабатывать в разы больше на собственных проектах

533 1273172
>>73168
Ну да, куда там разработчикам JQuery до /pr/ двача, не доросли еще, щенки. Долбоебы пишут какую-то документацию, делают релизы с подробным описанием, когда можно написать "ВРЁЁЁТИ" и это решит все проблемы.
534 1273178
Кстати, защитник жквери и шизик, хейтящий фреймворки - это >>72286-субъект.
535 1273180
>>73178
Пизди его!
536 1273189
Двач извини за глупые вопросы, но что за оператор такой '=>'?
537 1273192
>>73189
Это не оператор это вот это
var a = (x, y) => { x + y }
равно вот этому
var a = function (x, y) { return x + y }
только ещё и this переносится из вышестоящей ф-ии автоматом.
538 1273193
>>73189
PHAT ARROW
540 1273195
>>73192
Первая функция у тебя не возвращает ничего.
541 1273196
>>73195
угу {} убрать надо или return добавить
542 1273197
>>73192
>>73194
Спасибо!
perekat.png4 Кб, 180x125
П Е Р Е К А Т # OP 543 1273201
П Е Р Е К А Т
>>1273200 (OP)
544 1273210
>>73192

>var a = (x, y) => x + y


>равно вот этому


>var a = (function (x, y) { return x + y }).bind(this)

545 1273458
>>72896
По-образованию учитель английского, работаю переводчиком уже лет 7. Консалтинг-хуялтинг.
>>72897
Я бы даже добавил, что учителя по профессии можно не слушать в принципе, ну, очевидно что человек (я) в жизни свернул куда-т в ебеня.
>>72909
Проиграл
546 1274080
>>72826
Вообще сейчас в тренде не юзать переменные, кроме аргументов функций. Да и в них обходится не более чем одним, стакая их карированием. А еще в моде никогда ничего не изменять, только создавать новое.
547 1280316
Вопросы по ангуляру сюда или в /web доску? Как грамотно выкладывать переменные для отображения в ангуляре 2+? Имею в виду, вот есть у меня компонент-страница, в ней другие компоненты, дохуя всего. Есть куча переменных, отвечающих за отображение информации пользователю. По мере увеличения функционала заметил, что что то дохуя переменных стало в классе компонента? Может в ангуляре есть какие нибудь устоявшиеся паттерны или еще что нибудь? В каком нибудь WPF'е класс юзер контрола/окна рекомендуется освобождать от всякой логики и переменных, перенося их во вьюмодели, которую в качестве дата контекста пихают вышеупомянутым контролам/окнам. А в ангуляре чё? Я могу конечно просто создать класс типа my-component.viewmodel.ts, но я просто перенесу переменные из 1 класса в другой, ангуляр итак успешно настраивает биндинг. Что посоветуете?
Тред утонул или удален.
Это копия, сохраненная 9 ноября 2018 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски