Этого треда уже нет.
Это копия, сохраненная 20 мая 2021 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
image56 Кб, 1050x1050
JS Thread #205 /js/ 1967411 В конец треда | Веб
Предыдущий тред: >>1962747 (OP)
Больше пары строк кода в посте или на скриншоте ведут в ад.

Для программирования на HTML https://codesandbox.io
Для Node.js с консолькой https://repl.it/languages/nodejs

Если рассчитываешь получить дельный ответ, сформулируй правильно вопрос: «что я хочу получить, что я для этого делаю, что я вместо этого получаю». Если когда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.

Документация - https://developer.mozilla.org
Руководство для вката - https://github.com/acilsd/wrk-fet#javascript
Старая паста, частично устарела - https://pastebin.com/9yRADC0s
158973627239370.mp43,1 Мб, mp4,
1920x1080, 0:15
2 1967416
Пацаны, как въехать в асинхронность? Хули так сложно блять? Дайте советов что ли кто как въеал в эту тему
3 1967434
>>67411 (OP)
В жс очень хреновый дизайн у функциональщины. Лучше for лишний раз написать.
4 1967443
Господа сеньоры огласите топ стек на 2021
5 1967446
>>67416
Выбирай глубину кроличей норы. Observable? Асинк? Промис? Коллбэк?
6 1967447
7 1967450
>>67416

>асинхронность


Хули тут понимать, язык выполняет только одну строчку кода в стеке вызовов, если он видит асинхронную ебалу, он отправляет эту ебалу выполняться в web api если это браузер, далее эта хуета ждет своей очереди в очереди,лол, далее как только стек вызовов очишается event loop запихивает твой промис в стэк
8 1967452
>>67416
Просто загугли js event loop
Или послушай чувака https://youtu.be/8aGhZQkoFbQ
9 1967453
>>67450
Вот так примерно и обучают сейчас во всех сферах.
10 1967454
>>67453
Если пчел нихуя не понимает как еще быть?
11 1967456
>>67454
Ты его ещё больше запутаешь.
12 1967457
>>67453

>обучают


Нахуй его кому то учить? Всякие минины своей целью ставят не обучить а заработать на кабанчиках.
13 1967460
>>67457
Торрент
14 1967464
>>67456
Да нет это заставит его загуглить хотя бы что такое стэк вызовов, эвент луп, вряд ли ру ютуберы ему об этом рассказали
15 1967468
Стоит ли в graphql разбивать резолверы схемы и типы на разные файлы?
16 1967474
>>67464

>заставит


не заставит.
image72 Кб, 258x378
17 1967486
>>67446
>>67450
>>67452
>>67446
Да все въехал, посмотрел этот видос -
https://www.youtube.com/watch?v=vIZs5tH-HGQ

После начал читать пикрил, все стало понятно, ну почти, осталось на практике закрепить.

Алсо симпсон охуенно объясняет, очень подробно.
image876 Кб, 1668x2224
18 1967488
>>67486
Вот еще пояснения набрасал, пока читал.
19 1967553
Есть ли гайды по проектированию тестов с нуля?
Ну типа сижу я смотрю на тыщу компонентов и сотню сервисов, и куда тут воевать?
Начать ебашить юниты на каждый пук, и интеграционные на каждую пару пуков - будешь писать их дольше чем сам проект.
Или наоборот начать со здоровых е2е - а они пропускать все будут.
20 1967570
Ну прошёл я этого вашего Кантора. Что делать дальше? Уже можно учить реакт? Нужен ли тайпскрипт?
21 1967576
>>67570
Вы к кому обращаетесь, млад человек?
22 1967581
Норм что у меня класс (ксс) записан в стейте и на mouseEnter вызывается функция, которая изменяет этот класс? Например, чтобы один из дочерних элементов изменил цвет, я на mouseEnter по родителю вызываю функцию которая изменяет переменную в className. Или хуйня получилась?
23 1967582
>>67570
Теперь SICP читай, от корки до корки, прочтешь приходи
24 1967584
>>67581
Хуйня. Переделай.
25 1967586
>>67582
Забыл добавить, что читать нужно исключительно на английском языке.
26 1967589
>>67584
Во что? Если бы я знал, я бы наверное не спрашивал.
27 1967592
>>67589
Может мне ещё твою девушку вместо тебя выебать?
Переделай сам.
28 1967597
>>67592
Да во что нахуй? Я ебу что ли? Я нашел решение, оно работает, мне кажется хорошим. Спрашиваю, потому что интересно так делается или нет, и если не делается, то что делается вместо этого и как белые люди динамически изменяют класс.
29 1967599
>>67597
>>67582

> Теперь SICP читай, от корки до корки, прочтешь приходи

30 1967600
>>67582
Точно, совсем затупил придя к местному скаму с вопросом. Спасибо, что напомнил кто здесь обитает.
31 1967604
>>67600
Так быстро прочёл?
32 1967605
>>67599
Да охуенно, может мне еще ядерной физикой заняться? Иначе как я смогу сайты разрабатывать, точно не зная куда там по кремнию электроны летают.
33 1967609
>>67605
Глупости не пиши тут. Ленишься - так и скажи.
34 1967612
>>67581
Если не прикручивать болтами фреймворки - вполне норм. Хули там еще придумать-то можно?
35 1967614
>>67612

>Если не прикручивать болтами фреймворки


Что под этим имеется ввиду?
1715971.jpg25 Кб, 240x320
36 1967615
>>67416
Когда тебя ебут в жопу, ты мождешь надрачивать одной рукой хуй а другой мацать ебаря за жопу. Вроде как действия выполняются "параллельно", однако на самом деле они выполняются "конкурентно" и это главное. Конкруентность может быть и асинхронной
37 1967618
>>67615
Уволен.
38 1967620
>>67614

>ввиду


в виду раздельно
Имеется в виду что вуй или реакт например позволяют привязать состояние элемента напрямую к переменной и этим (реактивностью) славны. Вроде. А к чему ты стейт помянул?
39 1967624
Гайз на вас последняя надежда. Функция ищет least common multiple (наименьшее общее кратное) в заданном ренже, можете расписать работу reduce, я пытаюсь проследить, но не получается, я что-то упускаю/ не понимаю.

https://repl.it/join/xirpxlmw-lolkaazhaha

function smallestCommons(arr) {
const [min, max] = arr.sort((a, b) => a - b);
const range = Array(max - min + 1)
.fill(0)
.map((_, i) => i + min);

const gcd = (a, b) => (b === 0) ? a : gcd(b, a % b);
const lcm = (a, b) => a * b / gcd(a, b);

return range.reduce((multiple, curr) => lcm(multiple, curr));
}
smallestCommons([1, 5]);
40 1967626
>>67624
В коде ошибки.
41 1967628
>>67553
Теперь ты начинаешь понимать, почему на большинстве проектов забивают хуй на тестирование. TTD в контексте жабаскрипта - марксисм-ленинизм послегрузинского совка. Никто в него не верит и не практикует, но ты обязан повторять цитаты из него как мантры, чтобы на работу взяли.
42 1967629
>>67624
Код выглядит как жуткая псевдофункциональная лапша, за которую на ревью открутили бы башку. Перепиши нормально.
43 1967632
>>67581
Если хавер без бизнес-логики, то достаточно `:hover` использовать.
44 1967634
>>67628

>TTD в контексте жабаскрипта - марксисм-ленинизм послегрузинского совка


Бля, какое хорошее сравнение.
45 1967642
>>67628
Не согласен. Практикуют его все, но на выходе усилий слито больше чем профита.
46 1967646
Какое же БЭМ блять кривое говно, сразу видно его пердолики из яндекса придумали. Больше времени тратишь на то, как назвать элементный блок и его элементы, да ещё это говнище заставляет простыни селекторов писать даже в препроцессоре.
47 1967647
>>67626
>>67629
Это не я писал, я то через 2 цикла и счётчик сделал. Мне важно понять именно это решение, там через формулы типа
48 1967650
>>67642
Пописывание тестов ≠ TTD.
49 1967655
>>67647
А, тада ладно. Но код мне все равно не нравится, особенно редьюсом - он неинтутитивный какой-то, не люблю его.
50 1967666
>>67650
Да TDD (два раза подряд, это уже не опечатка, сука) практикуют.
Просто потом тесты никто не поддерживает и в какой-то момент спустя пару лет внезапно обнаруживает что они нихуя не стартуют и проще их заигнорить или выкинуть.
a8f5c73a120719e9fb5626d05e810212--men-smoking-cigar-smoking.jpg32 Кб, 400x495
51 1967670
ЖС - ЯП для альфовых Альф. Согласны?
52 1967681
>>67670
Или для них, или для забитых омежек, третьего не дано.
1.png7 Кб, 889x66
53 1967682
Блять, вот хуле ему не так?
Есть примитивный хэндлер клика, который проверяет, была ли нажата метаКей на маке и если была, то вызывает функцию.
const handleMcClick = (e: MouseEvent): void => {
if (e.metaKey) {
gayAlert();
} else return;
}

Все это назначается обработчиком в onClick.
54 1967691
>>67666

>Да TDD (два раза подряд, это уже не опечатка, сука) практикуют.


Test Tried Development.
 h.webm358 Кб, webm,
640x480, 0:03
55 1967698
>>67670
>>67615
Этот тред для гетеросексуальных мальчиков!

Уважаемый петух, пожалуйте обратно к себе в петушатню
>>1961875 (OP)
56 1967715
>>67646
Ты блядь откуда этот бэм выкапал? Он нахуй не нужен с styled components или tailwindcss, тем более если юзаешь среакт или вью
57 1967718
Так блэт, почему в первом случае контекст проебывается, в во втором нет?
58 1967722
>>67698
А что за срач я пропустил? Второй тред подряд кого то в йажа-тред посылают.
59 1967727
>>67715
Так просто хотел навернуть этот бэм.
60 1967734
>>67718
Сэт таймаут запускается как функция а не метод
61 1967739
>>67718
в первом случае глобальный контекст ссылки, во втором блочный
62 1967742
>>67734
let func = user.sayHi;
func() // undefined

Тут как видишь никаких setTimeout
63 1967745
>>67742
ты присваиваешь метод которого у тебя нет

у тебя есть функция с именем sayHi()

ее и надо передавать

>let func = user.sayHi();

64 1967748
>>67742
Что бы не было андефайнд делай bind или вызывай через контсруктор
65 1967761
>>67682
Бамп. Хуй что нагуглишь. Почему так?
66 1967765
>>67761
гугли всплытие событий
67 1967770
>>67765

>гугли всплытие событий


Это поможет мне правильно типизировать функцию?
68 1967787
69 1967789
>>67682
e: MouseEvent & KeyboardEvent
70 1967793
>>67789
Если я вообще убираю любое упоминание кнопок, то ничего не меняется. Проблема в обращение к ивенту как к таковому. Та же самая ошибка, если не проверяются кнопки клавиатуры, но есть, например: e.preventDefault()
71 1967802
>>67793
Ты не в рякте случаем пытаешься навесить ивент?
72 1967816
>>67666
Как ты модешь не поддерживать тесты при TDD, если при TDD они пишутся прежде любого кода?
73 1967823
>>67416
На ноде/deno асинхронность нинужна. Всё равно все будут юзать зелёные треды на cpython, если такая необходимость будет.
В браузере вебворкеры, а не аснихронность, они тоже нинужны в основном, покрайнеймере не для тебя.
74 1967824
Буду скоро менять работку, оттрубил какое-то время фуллстек шлюхой, хочу апнуться до миддла. Вроде как в жс шарю, но сука очкую что меня выебут на хитровыебанных вопросах касательно токонстей работы интерпретатора жопаскрипта, ведь я уже не ждун. Насколько сильно ебут на этом деле?
75 1967826
>>67802
В реакте, а шо?
76 1967832
>>67826
Там нужно свой MouseEvent использовать. Типа React.MouseEvent.
77 1967862
>>67824
Кажется блядь в JS вообще не существует нехитровыебанных вопросов. В любом говне десятки подводных, вплоть до того, что ты можешь обосраться на вопросе чем отличается let от var.

Сделал 2 коммерческих сайта с фуллстеком, работаю на 3-м. Всё еще не могу устроиться никуда на постоянку, потому что такое ощущение, что к тому моменту, когда я смогу ответить на все вопросы на собесе, я уже просто пойду проходить собесы на сеньера. У меня довольно много опыта, код который я писал проходит код ревью, но какой же пиздец начинается, когда открываешь доку жс и список из 300 вопросов на собеседовании, и понимаешь какое же количество разнообразного говна тебе еще нужно знать, несмотря на то, что в работе это гуглися просто за пару секунд и применяется примерно столько же. Я просто в ахуе с того, какое количество ебанутых корнеркейсов и подковырок нужно знать джуну. Я вообще не могу представить, каким образом это всё можно вот так вот просто взять и выучить. Кажется, как будто работать с ЖС и устроиться на работу это просто бесконечно далекие друг от друга задачи. Какой же пиздеж все эти разговоры про "программирование это просто", ты нахуй в петлю раньше полезешь, чем первый офер получишь. Но тут конечно есть плюс, количество инфоциган и вкатывальщиков кажется оказывает абсолютно нулевое воздействие на уровень зарплат именно по вышеописанной причине.
78 1967905
Писать function зашкварно?
Но стрелочные функции берут this из верхнего скоупа... Как тогда быть?
79 1967908
>>67862
Шиз, у тебя синдром самозванца, лечится походами на собесы, пока не пройдешь хоть одно
80 1967914
>>67905
Не так много ситуаций, когда тебе действительно нужны function https://dmitripavlutin.com/differences-between-arrow-and-regular-functions/
81 1967915
>>67862
В какое дно вы ходите вообще? Охуеть просто.
82 1967916
>>67905
Нет, стрелочки писать зашквар.
83 1967923
>>67905
Когда тебе нуден this, есть method function declaration.
84 1967925
>>67862
Дай угадаю - ты не был ни на одном собесе по жс в своей жизни.
85 1967927
>>67905

> this


Кстати тоже писать зашквар, потому что вероятнее всего будет хуевая очистка мусора (но это не точно) да и вообще чистота нарушается.
86 1967943
>>67925
>>67908
Был на 5 собесах. В последний раз это было примерно 4 месяца назад. С тех пор нашел себе фриланс и работаю теперь так, попутно вечерами задрачивая то, чего не знаю. Пока нет желания ходить на эти публичные сеансы унижения от рандомных хуёв. Но хотя бы теперь не совсем прожирая запасы от отложенных денег с прошлого места работы. Но на данный момент работаю по ставке 200р в час, хотя уверен на 100%, что это стоит конечно же куда больше, я бы рад работать за большее, но причину я уже описал постом выше. А согласен я на такое только потому, что в дальнейшем у меня есть перспектива роста, иначе бы уже грузчиком пошел работать, возможно за большие деньги, лол
8EBB3685-895E-43DE-B23E-7C628E2A0EB9.png138 Кб, 512x512
87 1967958
>>67943
У тебя синдром самозванца, который ты оправдываешь внешними силами(кококнторы плохие, а я вот хороший!)
Конторам нахуй не нужны твои знания при строгом и нестрогом сравнении, это просто тесты на долбоебов, что бы отсеять немощных вкатунов и не тратить время на них.
Конторам нужно только одно - что бы ты мог приносить им бабки. Если у тебя прокачан скилл программирования и ты можешь быть полезен компании этим, тебя 100% возьмут на работу.
Так вот причина по которой ты еще не на галере - это ты сам. Либо пиздабол и нихуя не знаешь, либо долбоеб и не можешь пройти банальные тесты к которым можно подготовиться за два дня до собеса, либо ты ласкаешь свой синдром самозванца. Вылазий из зоны комфорта, если ты канешь не корзина мамкина как славик сычев.
88 1967967
>>67943

>Но на данный момент работаю по ставке 200р в час


В пересчёте на месячную зарплату это 30 т.р. в месяц.
89 1967969
>>67958
Ну хуй знает, чел пчел. Вот думаю закончить 3-й проект и уже пиздовать в галеры, а то стыдно без 300к сек кодить. С комфортом у меня проблем нет, учитывая то, из какого говна я постепенно выбираюсь.
90 1967971
>>67943
И что тебя спрашивали на этих собесах, что ты не смог ответить, учитывая то, что регулярно работаешь с языком?
91 1967973
>>67927

>Кстати тоже писать зашквар


А какие альтернативы?
92 1967974
>>67967
Спасибо канеш, исходный код этого решения покажешь? А то я все никак посчитать не мог.
93 1967975
>>67971
В последний раз это было 4 месяца назад, тогда не знал что такое замыкание, всплытие события и т.п. такого же рода вопросы. С тех пор конечно я это выучил, это конечно круто, что я теперь обо всём этом в подробностях знаю. Вот только пока не понял каким хуем это мне помогло проектировать интерфейсы и писать совсем простенький бек. Ну ладно ладно, чуть чуть помогло, но опять же, когда столкнулся с проблемой срабатывания клика по множеству элементов, все равно загуглилось за 0.12132423 секунды
94 1967976
>>67975
Чувак, если ты умудрился разрабатывать приложенияна жс, не зная, что такое замыкания и принципов распространения DOM- событий, то все эти "интерфейсы" тобой писанные, о которых ты говоришь - это неподдерживаемый говнокод, и тебя совершенно заслужено не взяли.

Это все равно, что строить деревянные дома, связывая бревна веревками, и потом говорить - но я же построил. Какие в пизду строительные крепежи, нахуй они нужны.
95 1967978
>>67976
Не согласен буквально с каждым твоим утверждением
96 1967979
>>67976
Да пиздит он как дышит, я эту суку сразу раскусил мужики. Давайте ему бучу устроим, и в петушиный угол определим.
97 1967981
>>67976
Что замыкания, что дом события выдадут свои очевидные ошибки при незнании того, как они работают сразу же, как только ты начнешь с этим работать. Так что можно и без знания о подобных вещах проектировать приложение. Или ты думаешь я код писал проверяя его только в проде на работающем сайте?
98 1967983
>>67628

>TTD в контексте жабаскрипта - марксисм-ленинизм послегрузинского совка.


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

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


это же очевидный пиздеж. Того, что нужно знать на собесе за 2 дня ты даже прочитать не успеешь, не то, что запомнить или понять.

Может быть вы устраивались на работу лет 5-10 назад, и у вас представление о требованиях берутся из того периода.
100 1967988
>>67985
Нюхай носки падла дырявая, ты теперь чушкарь позорный, бери миску и пожалуй к пораше. Сиди там и смотри как галерные работяги отдыхают в треди.
101 1967993
>>67958
Банальные? Сложение массива, строки, объекта и жирафа это не банальные. А поскольку на практике ты это не будешь делать никогда, то надо эту теорию дрочить не за два дня до собеса, а каждый день чтобы она не забывалась.
102 1967995
Я на полном серьезе готов спорить с вами о том, насколько нужно уметь кодить на JS при создании сайтов на реакте, поскольку я буквально фактически это делаю. Вам это может не нравится, вы можете быть против этого, но сам факт вы не отмените. Того, что я дохуя чего не знаю и не могу ответить на вопросы не собесе это не отменяет, о чем я с самого начала и говорил. Но одно другому вообще нихуя не мешает. Возможно именно из-за того, что вы тут опытные дядьки с большими писями вам кажется, что отсутствие глубокого понимания принциповы работы тех или инных вещей в коде равняются полному отсутсвтию понимания принципов работы этих вещей даже на каком-то очень поверхностном, абстрактном уровне, когда ты знаешь как с ними работать и когда использовать, то вы конечно ошибаетесь. Потому что буквально у вас есть неоспоримый факт, весь мой код проходил код ревью, и я буквально готов отстаивать это в споре с вами, какими бы хуями вы тут не пытались меня крыть, потому что вы не можете отменить этот факт.
103 1968002
>>67993
Харош свои инцельные потуги в тред распылять, если у тебя айкью выше 100 это не проблема запомнить.
Если ты не забыл это вообще то программирование нахуй, не хочешь напрягать голову иди в пятерочку работать, там таким нытикам самое место.
104 1968004
>>68002
Это другой чел, чел
105 1968005
>>68002
Просто отсоси!
106 1968013
Имеет смысл сначала хотя бы базово изучить какой-нибудь строгий язык с правилами написания и прочей ебалой, чтобы потом на жс меньше быдлокодить? Никакого языка не знаю, не знаю их устройства, вкатываюсь с нуля.
107 1968026
>>68013
Для начала изучи ассебмлер i8080, чтобы понимать, как всё работает.
108 1968027
>>67973
Больше функционального подхода и больше чистых функций. Никаких this и прочей хуйни. Настраивайся писать четкий код, потом привыкнешь, а всю this хуйню будешь в отдельные слои хуйни загонять, типо //////TODO: FIX OOP GOVNOKOD

представляю как борщехлёбы придут в тренд, а тут замыкания обсуждают
109 1968028
>>68026
Верстал, спок
110 1968033
>>68004
В пятерочке всем места хватит и тебе и ему, и тебе нахуй и тебе
тычет пальцами на вкатунов
111 1968056
>>67570
Смотри курс React-самурай на ютубе. Там и TypeScript и все остальное.
112 1968068
>>67976

>это неподдерживаемый говнокод


Бля, а как понять, что ты пишешь говнокод? У меня такая паранойя по этому поводу пиздец. Но в отличии от того гения я и про замыкания и про всплытие знаю.
113 1968071
>>68056
Я тут недавно наткнулся на https://youtu.be/pahO5XjnfLA с темой про замыкания. Потом почитал кантора на эту же тему. Почему в этом видео по сути рассказывается вообще про другое? В целом конечно зная как работают замыкания можно сказать, что примерно он описывает этот процесс, но это же пиздец. У самураев этих ваших то же самое будет? Я еще хуею потом с того, что вот насмотришься таких видосов и будешь блядь собесы проходить. А еще и просмотров ведь дохуя и все благодарят. А фактически он говорит, что замыкания - это когда одна функция находится внутри другой. Это каким хуем вообще относится к замыканию?
114 1968073
>>68068

>Но в отличии от того гения я и про замыкания


Да ты сам тот еще гений нахуй если жопой мой пост прочел, еще и высокомерный хуесос, СМАТРИТИ В АТЛИЧИИ ОТ ТОГО ВОТ А Я ТО УЖ А Я ВОТ НЕ ТО ЧТО ОН, фу блядь, иди под струю мойся
115 1968076
>>68073

>Да ты сам тот еще гений нахуй если жопой мой пост прочел, еще и высокомерный хуесос


В твоем посте 0 конкретики. Только какие-то маняаналогии с деревянными домами.
116 1968078
>>68076
Блядь, всё, тут невозможно без неймфажества вести диалог. Про деревянные дома писал НЕ Я.
117 1968079
>>68078
Ну а хуле ты отвечаешь тогда не на свой пост, ало нахуй? За мной тоже в каждом треде бегается даун, который отвечает от моего имени на посты.
118 1968080
>>68079
Да потому что в рот я ебал это анонимное общение, все разговаривают как сумасшедшие и никто ни за что не в ответе. Еще и хуй пойми кто вообще кому отвечает
119 1968081
>>68080
Залетуха, плиз.
120 1968085
>>68081
это ты ПЛИЗ
Я тут с 2009 года, это не отменяет того факта, что анонимное общение не скатывается в говно едва это заходит дальше фап рулетки
121 1968086
>>68085

>с 2009 года


>РЯЯЯЯЯЯЯЯЯЯ АНОНИМНОЕ ОБЩЕНИЕ НИПАНЯТНА КТО КОМУ ОТВЕЧАЕТ, ВОТ НА ШВЯТЫХ ФОРУМАХ С КАРМОЙ...


ПЛИЗ
122 1968087
>>68085
2019*
быстрофикс :з
123 1968088
>>68086
ТАК ЭТО ТЫ ДОЛБОЁБ НЕ ПОНЯЛ КТО ТЕБЕ ОТВЕТИЛ СУКА
Ты даже локику разговора двух людей не можешь проследить. Какой нахуй кодинг. Ложкой в рот попадаешь? Вилкой без пробки пользуешься или тебе не доверяют такое?
Я нахуй ливаю из этого пиздеца, чтоб я еще раз тут о чем-то разговор завел, это пиздец, битва глухого со слепым в глубокой жопе обезъяны темной ночью
124 1968089
>>68088
И да, скажу напоследок (признание):
Про деревянные дома писал всё-таки я.
Теперь точно ливаю.
125 1968090
>>68089
Пока!
126 1968091
>>68090
Хотя нет, я пожалуй останусь! Всё-таки с 2009 тут, привык... Вы мне как родные, простите, анончики!!!
127 1968092
>>68089
Вот ты мразь конечно, выдал всю свою подлую суть, поняв, что слился. Решил воспользоваться анонимностью общения и опять же написать от моего имени, иначе ведь бы вышло, что насрал тебе в штаны всё-таки ты сам? Ну пацаны-то с утра увидят кто тут обосрался на самом деле. Но ты конечно мразь по настоящему, если решил прибегнуть к такой хуйне. Фу блядь, вот это было по настоящему мерзко. Очередная причина не поддерживать тут никакой активности и кому-то еще отвечать. Пошел нахуй
128 1968094
>>68092
Я полностью с тобой согласна. Пошли они нахуй!
Кстати, я тян-кодерша 19 лвл. Есть телега?
129 1968099
И с вами снова я - деревянный макак!
Всем привет, друзья!
130 1968100
Хотя нет. Я всё-таки понял, что кодерство не моё. Мне больше нравятся дома... Деревянные...
Деревянные дома, а не вот это вот всё...
131 1968101
>>68092
Лол! А нахуя ты пишешь от моего лица?

мимодеревянный
132 1968139
Ребят, кто знает как в html создать цикл? Я раньше делал, но забыл.
деревянный
133 1968141
>>68085
Пиздуй в телегу долбоеб. Там чатов по жс жопой жуй,хули ты тут разнылся.
134 1968142
>>68094
Я тоже кодерша, но кун! Есть вайбер.
135 1968143
Пасаны, как загрузить мое говнокруд чтобы любой мог перейти по ссылке и повтыкать в него?
136 1968152
>>68142
У меня ещё ВК есть!
137 1968154
https://www.youtube.com/watch?v=G9yLTEpDr7E
Сразу вспомнился мем про нотариально заверенные скриншоты.
138 1968189
>>67411 (OP)
https://habr.com/ru/company/otus/blog/547098/

>АРЯЯ КЛАССЫ НИНУЖНЫ!


>Использование классов гарантировает правильное приминение Inline Cache и рост производительности


>НИНУЖНЫ! НИНУЖНЫ! МНЕ ПАЦАНЫ ТАК СКАЗАЛИ!!

139 1968216
>>68189
Что с тобой?
140 1968222
Почему хтмл с цсс такое гавно? Всякие хитровыебанные родительские свойства абсолютно неочевидные, которые запоминать надо, пляски с размерами и свойствами, применяется не то что ближе к телу в коде, а то, что просто ниже стоит в коде, но не всегда, если только не дальше дочернего тега. Короче лютая поебень. Такое впечатление что издатель трахнул дизайнера, а личинку гомункула скинули программисту куколду.
141 1968232
>>68189
Там же его в коментах и обосрали
142 1968236
>>68222

>хтмл с цсс такое гавно?


Эх сейчас бы писать сайты на плюсах с компиляцией, каждый сайт под отдельную архитектуру, было бы заебись да?
143 1968241
>>68189

>var в цикле for


Всё ясно с этим экспертом.
144 1968242
>>68236
Да, но лучше на ассемблере.
145 1968250
>>68222

>которые запоминать надо


Как уже заебали неосиляторы подпивасные у которых память как у рыбки. Ебаные хтмлакадемии расплодили как бактерий этих даунов, а они и как дышать забыли, потому что это запоминать еще надо!
146 1968252
>>68241
Еще один ребенок, увидевший var. Ведет себя в точности как пятиклассник, услышавший в тексте число 69
147 1968254
>>68250
Я тебе такое полотно в голове накидал, что ты бы на пару лет в депрессии уебался, но тебе повезло и я забыл, что хотел написать.

мимо хтмлпрограммист
148 1968256
>>68232
Тебе ж и говорят: Использование классов гарантировает правильное приминение Inline Cache. Нигде не сказано что оно магическим образом под капотом его несет
149 1968262
>>68241
Пидерашка а кто за тебя будет чистить мусор? У тебя просто будет 100001 лет-копия в цыкле и память утечет примерно за час.
150 1968263
>>67411 (OP)
На связи фуллстек макака: питон (aiohttp/sanic) + жс (ангуляр)
9 месяцев назад вкатился, сейчас думаю менять работу чтобы не застрять на одном месте (и апнуть зп конечно же). Как посоветуете выбирать проекты, чтобы не продаться за дешево или не сесть за неликвидное гавно?
буду также идти фуллстеком пока либо только в бэк, как получится
151 1968266
>>68263
Мог бы пойти и в бэк на Ноду, но вакансий не шибко много да и берут туда в основном сеньористых мидлов
152 1968270
>>68263

>Как посоветуете выбирать проекты,


Ставишь перед собой бутылки, подписываешь их именами проектов. Крутишь бутылки, которая горлом покажет на тебя - садишься на нее.
153 1968282
>>68263
По зп какие ожидания?
154 1968288
>>68282
Ну что бы на дошик хотя бы хватало(месячный запас), ну и раз в неделю под хвост буду с удовольствием принимать(готов бесплатно!). В целом будет клево если еще стекломоя смогу купить на оставшуюся зп.
155 1968290
>>68282
От 100к минимум
На моем нынешнем месте в ДС2 мне походу чисто из принципа не хотят повышать ("аноннейм, ты больно много хочешь! мы тебя за 50к взяли, сейчас повысили до 60! куда тебе еще-то?")
156 1968297
>>68026
Выучил, что дальше?
157 1968298
>>68252
Это конечно хорошо, но в остальных примерах у него вполне еретический const. А вар именно в цикл засунул, ага.
>>68262
Какой сбощик мусора, ебло? Конкретно в его примере будет храниться миллион референсов даже с варом, так что прокукарекай тут про утечки памяти.
image4,1 Мб, 3310x3310
158 1968310
>>68297
Дальше, сложнее. Делай бочку.
159 1968313
Какое же хипстерское говно этот конфиг для eslint от airbnb.
160 1968316
>>68310
Сделал такую бочку в Valheim
161 1968318
>>68290

>аноннейм, ты больно много хочешь! мы тебя за 50к взяли, сейчас повысили до 60! куда тебе еще-то?


Провинция, известная галера, з.п. миддла вчерашнего юниора FE 80, что в питере фуллстэку платят 60, я бы не поверил, но вот только что прочитал на форуме, где все друзья. Это пиздец.
Рили, я бы на твоем месте откликался на все подряд - куча вакансий в ХХ удаленных в том числе где зарплата от 100. Мне бы даже 100 мало показаось, я бы брал от 150.
162 1968323
>>68318
В экосистеме должны существовать все, и чушки работающие за еду, и люди которые себя уважают.
163 1968325
>>68318

>фуллстэку платят 60


Хе, так я ж зеленым вкатуном тогда был. На тот момент это действительно было норм, тем более что к моим косякам относились с пониманием и даже позволяли учить ангуляр на ходу, особо не доебываясь на этой почве, но пора расти
164 1968335
>>68325
Тут еще такое может быть что ты вырос, но у них восприятие тебя тем же вкатуном никуда не ушло. Это даже понятие такое есть в психологии, не вспомню сейчас. Отрезвляет в таких случаях только оффер на руках с циферками, после которого у них должна проснуться мысль, что такая корова нужна самому, и следовательно контроффер в ответ. Ну или не должна, но у тебя уже вариант есть.Только так.
165 1968351
>>68323
За чсв не доплачивают.
166 1968358
>>68335

>Это даже понятие такое есть в психологии


Психология тут ни причём, программисты существуют, чтобы приносить ПРИБЫЛЬ бизнесу, соответственно чем выше ЗП у отдельного программиста, тем ниже ПРИБЫЛЬ у бизнеса.

>и следовательно контроффер в ответ


Если РАБотник прошёл через поиск новой работы находясь на нынешней, то скорее всего его не устраивает не только ЗП, и эти проблемы повышением ЗП не решатся.
167 1968360
>>68351
Эх, если бы. По собственному опыту скажу - видел сеньоров, которые доебывали миддлов вопросами, а-ля что там как работает, и джунов посмышленнее миддлов, и лидов, которые в жизни не подумал бы что лиды.
168 1968366
>>68360
Лид - необязательно синьор.
169 1968373
>>68358

>Психология тут ни причём, программисты существуют, чтобы приносить ПРИБЫЛЬ бизнесу


Трава зеленая, небо голубое.
Я и говорю про то, что ЕСЛИ он вырос, следовательно приносит больше прибыли, они должны его мотивировать, но часто бывает так, что действительно вырос, но этого НИКАК не видят - и это проблема ПСИХОЛОГИИ восприятия.

>Если РАБотник прошёл через поиск новой работы находясь на нынешней, то скорее всего его не устраивает не только ЗП


> скорее всего


Отдавать самый ценный ресурс - время, работая по найму, и не ставить во главе угла ЗП, по мне это несмышленность, как минимум. Тем более речь о том что ты не меняешь профиль деятельности, а делаешь работу которую и до этого делал за меньшую зп.
170 1968376
>>68366
Да, но я имел ввиду не лид команды, а lead developer как ступень после senior developer (у нас по крайней мере такая градация).
171 1968396
>>68373

>Я и говорю про то, что ЕСЛИ он вырос, следовательно приносит больше прибыли


От того, что он запомнил все глобальные методы Ангуляра, ПРИБЫЛЬ у компании не возросла. Соответственно платить ему больше снихуя - уменьшение ПРИБЫЛИ компании.

>но часто бывает так, что действительно вырос, но этого НИКАК не видят


Почему эта ситуация частая, ты конечно же не задавался вопросом.

>Отдавать самый ценный ресурс - время, работая по найму, и не ставить во главе угла ЗП, по мне это несмышленность, как минимум.


Есть два стула: на одном компания из отбитых вороватых пидорах за 300к наносек, на другом - цивилизованная фирма белых людей, но за 150к. На какой из стульев сядешь?
172 1968401
>>68376
После синьора идут уже околокабанчиковые должности, так что условный лид необязательно лучше в кодинге чем даже мидл.
173 1968405
Как сейчас эффективнее разобраться с реактом и стеком вокруг него?

https://reactjs.org/
https://redux.js.org/ (слышал что многие нелестно отзываются, но тут больше вопрос того что требуется в вакансиях)

Этих офдок будет же недостаточно да?
174 1968412
>>68405
Ну там базированная база. Лучших практик ты там не найдешь, по моему мнению
175 1968420
Хотите быстродействия пишите лучше на ассемблере, жс не для этого создан
176 1968422
>>68412
А где найду?
177 1968426
>>68422
в шапке треда
178 1968427
>>67624
бамп, вдруг кто объяснит
179 1968442
>>68396

>От того, что он запомнил все глобальные методы Ангуляра, ПРИБЫЛЬ у компании не возросла.


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

>Почему эта ситуация частая, ты конечно же не задавался вопросом.


Для меня это само собой разумеющееся, и опять сводится к ПСИХОЛОГИИ - организм стремится к покою, поиск нового - раздражитель.

>Есть два стула: на одном компания из отбитых вороватых пидорах за 300к наносек, на другом - цивилизованная фирма белых людей, но за 150к. На какой из стульев сядешь?


У тебя крайности, в мире все не так. Я из условного люксофта, буду стремиться в условный авиасэйлз, когда и если скилл будет позволять, думаю как и любой адекватно мыслящий кодер.
180 1968443
>>68189
Нихуя не понял из высера этого петухабра, зато нашел нормальное https://gist.github.com/twokul/9501770 https://richardartoul.github.io/jekyll/update/2015/04/26/hidden-classes.html объяснение.
Суть - динамический js будет работать быстрее, с кэшированием, только в случае неизменности макета.
Чистые функции и неизменяемые переменные кэшировались всегда (но это не точно), так что абсолютно похуй.
181 1968450
>>68442

> Я из условного люксофта, буду стремиться в условный авиасэйлз


Сразу скажу из-за з.п. я, так получилось, знаю сколько платят миддлам в этих компаниях, а не из-за того что условный авиасейлз стильныймодныймолодежный. В продуктовых потому что платят существенно больше чем на галере, не беря в рассчет исключения ноунеймы - а-ля "веб студия васи иванова".
182 1968455
183 1968456
>>68358
Как ты там собрался замерять прибыль, лол. Может только у онлайн-галлер есть такое преимущество в замерах, да и то там экономического смысла почти нихуя нет в большинстве случаев.
184 1968460
>>68401
Я именно про лида который КОДИТ и ничего не лидит, как ступень после сеньора. Лид, который лидит,в той команде тоже был, но речь именно про скилл того лида, который чисто кодер был.
185 1968466
>>68405
Взять/придумать проект со всеми фичами современных веб-сервисов и гуглить/стэковерфловить как это сделать на том или ином фреймворке. Доки чисто как база, как алфавит, можно сказать. Все на практике только познается.
Редакс много где сейчас, там паттерн надо вдуплить, кроме редакса есть еще реализации, но редакс по кол-ву звездочек их все вместе взятых рвет.
186 1968467
>>68401
В больших компаниях вполне бывают должности выше сеньора без кабанизма. Техлид или архитектор обычно они называются, но тут совсем вакханалия с семантикой начинается: Вакансия с названием техлида может оказаться по факту хоть на менеджера, хоть на тимлида или сеньора.
187 1968470
Пасаны куда и как можно загрузить свой круд на реакте чтоб любой мог по ссылке пройти и повтыкать в него?
188 1968477
>>68460
А ступень после лида, это Бодхисаттва?
189 1968480
>>68470
гитхаб
190 1968485
>>68477
Нет ее, это высшая инженерная ступень.
191 1968487
Чем отличается инженер от программиста?
192 1968495
а ну то есть reduce сразу ко 2 элементу в массиве применяется? ахуенно блять
193 1968498
Аноны, подскажите советом - какую книгу нормальную почитать о том как писать нормальный клиентский код на чистом JS.
Я вообще бекенд пишу, реакт знаю по вершкам. Но чет сам решил нативным JS на классах сделать в свой приложухе динамическую форму - получилось. Но код просто блядь пугает.
Особенно тот момент когда я DOM-элемент "привязываю" к какому то своему объекту. Ну в объекте есть ссылка на объект DOM.
Как правильно работать с тем, что этот объект может получить любой другой обработчик, и менять его состояние как ему угодно.

Или эта тема нормально не реализуется без своего маленького реакта?
194 1968499
>>68498
п.с.
или мне не ебать мозги, а сразу васянить на реакте?
195 1968501
>>68498
ппс

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



Как правильно работать с тем, что этот объект DOM может получить любой другой обработчик, и менять его состояние ( и его html ) как ему угодно.
196 1968504
>>68498
А чому ты хочешь без реакта писать? Есть сокральный смысол?
197 1968531
>>68466
Вопрос про источники инфы, всетаки. Где наиболее сконцентирована инфа по реакта. Нагуглить и так понятно что можно что угодно
198 1968536
>>68456

>Как ты там собрался замерять прибыль, лол.


Так её и не замеряют. Соответсвенно увеличение ЗП === уменьшение ПРИБЫЛИ для компании без ведомых на то причин. А причины искать не будут, потому что вся эта техническая хуитка для стороннего наблюдателя, манагера то есть - чистый и незамутнённый талмудизм. Хоть всю спеку TC39 заучи после вката, для манагеров будешь всё тем же вкатывальщиком-ждуном.
199 1968549
>>68498

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


Object.freeze().
>>68501

>Как правильно работать с тем, что этот объект DOM может получить любой другой обработчик, и менять его состояние ( и его html ) как ему угодно.


Не пихать скрипты с любыми другими обработчиками? Откуда ты блять левые обработчики ожидаешь в своём скрипте увидеть?
200 1968572
>>68504
Вью / ангуляр - НИКРУТА?
201 1968594
>>68572
И вью, и реакт, и ангуляр никрута так-то
202 1968599
>>68504

>>А чому ты хочешь без реакта писать? Есть сокральный смысол?


В своем приложении хочу и повелосипедить немного ( пока что, оно может вырасти ).

>>68549

>>Не пихать скрипты с любыми другими обработчиками? Откуда ты блять левые обработчики ожидаешь в своём скрипте увидеть?



Исхожу из логики что потом уже не я могу этот код поддерживать. На бэке принято пердолитсья со всякими патернами ООП и прочим. В JS мире может на это хер кладут. Я потому и спрашиваю какую нибудь хорошую книгу в которой описан лучший путь.
203 1968602
>>68549
п.с.

>Object.freeze()


Я правильно понимаю что допустим получив в одном обработчике объект формы я могу его заморозить. Но ничто не мешает в другом обработчике получить объект этой же формы, и допустим перепахать ее html как угодно?
204 1968625
>>68602
фриз не изменяемый метод
205 1968664
>>68602

>Но ничто не мешает в другом обработчике получить объект этой же формы, и допустим перепахать ее html как угодно?


А тебя ебать должно во что там перепахался html? В объекте будут храниться все релевантные данные и все изменения в нём будут происходить только через определённые методы, которые будут менять и состояние полей в html в одностороннем порядке. Если добавить сюда ассинхронщину, то переизобретёшь флюкс. А если посчитаешь, что собирать компоненты в доме слишком заёбисто, то переизобретёшь и jsx.
206 1968668
>>68599

> повелосипедить


Лучше велосипедь с фреймворками вроде solid. Свои велосипеды бессмысленны и опасны в ситуации внешних апи.
207 1968700
А для сервера вебпак нужен? Сейчас думал начать писать субконфиг, а потом подумал, а нахуй мне его собирать вообще? Я же его юзерам не отправляю, его node-ts спокойно исполняет со всеми модулями и всей хуйней из коробки.
208 1968703
Анончики, посоветуйте, что можно сделать. Я делал несколько сайтов на заказ разным людям, фронт часть. Сами сайты они не запускали, потому что там еще в процессе всё. А вот мне хочется как-то выложить их в потрфолио, чтобы можно было искать работу другую. Что можно делать в таком случае? Исходники ведь показывать нельзя, если это заранее не было обговорено? Деплоить куда-то фронт часть, чтобы можно было потыкать с фейковым беком это тоже нарушение прав в каком-то смысле? Ну и самый тупой вариант - просто выложить скрины сайтов.

Что можно делать в таком случае? Есть еще конечно идея, переписать немного сайт так, чтобы внешне он уже не совпадал с тем, что ты делал до этого, но тогда опять же ведь код будет тот же самый.

Как этот вопрос вообще решается в сфере кодеров? Например в тех случаях, когда то, что ты пишешь, это вообще не что-то публичное, и тогда невозможно просто взять и выложить это на всеобщее обозрение, бек там какой-нибудь
209 1968710
Mobx
210 1968713
>>68700
Серверный код лучше не транспилировать, так как ошибки из-за трансформаций могут вылететь в копеечку, в отличии от клиентского кода, который в худшем случае просто не заработает.
211 1968716
>>67570
Дальше YDKJS с отладчиком на вооружении. Кантор - это не более чем ознакомление с темой, его уже давно недостаточно для понимания жс.
image22 Кб, 476x256
212 1968722
ы
213 1968723
У var функциональная область видимости, то есть если где-то вне скобок используется эта переменная, она будет видна, а let блочная, только в рамках скобок работает. Я правильно понял или нет?
214 1968726
>>67570
Хоть что-то запомнил? Правда интересно
image.png17 Кб, 853x147
215 1968741
216 1968749
>>68741
Так это не функционально, ты же не вызвал функцию..
Я вообще не уверен, но Симонс или Симпсонс так говорит
image.png15 Кб, 656x96
217 1968751
>>68722
Че ыкаешь, макакен?
218 1968753
>>68749

>ты же не вызвал функцию


Ну так вызови... Сам думаю догадываешься что произойдет
image.png22 Кб, 549x258
219 1968757
220 1968758
>>68753
>>68757
Да я в программирование не первый день, просто эти скопы меня запутали, плюс смотрел интервью, где многие горят на var, называя ее глобальной переменной. Сейчас перелистал книгу и не нашел этого примера, хуй знает что за магия произошла.
221 1968766
>>68757
Пример сверху не увидел. То есть получается это работает не в случае с функцией, а с условием if?
222 1968769
В принципе логично, так как выполнение команды идет дальше, и возможно мы будем использовать эту переменную, но в C# вроде она работает только в блоке, дальше ее видно не будет. Я с каждой новой главой всё больше от шарпа отдаляюсь, как будто вообще его никогда не знал. Либо просто новые знания, о которых я даже не задумывался во время разработки.
223 1968773
>>68766
>>68769
Разве в шарпе не то же самое?.. Переменная которую ты объявляешь в блоке for / if / while не должна же утекать за пределы этого блока

В Пистоне например не так. Там нет никакой "блочной области видимости" (но по правде говоря не помню когда это мне хоть раз бы мешало)
224 1968776
>>68773
Какая-то дрочь с этим варом если честно, вообще не логично, хотя Симпсон говорит, что и var и let нужно использовать, хотя для меня проще в начале блока указать let, чтобы область видимости была там, где мне это нужно использовать в дальнейшем по назначению, а внутри блока при необходимости изменять эти данные через конструкции if и так далее.
225 1968778
>>68741
>>68749
>>68758

>js это просто


>пол треда не могут разобраться с тем, что такое var и как он работает

226 1968782
Фронтоаноны, чому вебпак не скукоживает весь жопаскрип в один файл? Не хочу вот такую хуйню на странице <script src="/build/runtime.js" defer></script><script src="/build/vendors-node_modules_srexi_purecounterjs_dist_purecounter_js-node_modules_alertifyjs_build_al-635012.js" defer></script><script src="/build/app.js" defer></script>
А вот такую хочу <script src="/build/app.js" defer></script>
227 1968784
>>68778
Сложности жс именно в уебанских тонкостях работы интерпретатора и необходимости тащить легаси-парашу без возможности просто ее отбросить (а то код в браузерах просто кекнится и перестанет работать)
Забавно кстати когда некоторые прогеры на жс выставляет это все как достоинства блин. Питонисты кстати тоже часто этим страдают
228 1968786
>>68778
Это просто, но не совсем логично. Зачем мне var, если я могу сделать такой код.
let num = 5;
let num2 = 0;
if(num == 5){
num2 = 10;
}
console.log(num2);
Я хочу явно видить, где у меня эта переменная используется, в моем случае, я получу какое-то стандартное значение, если даже if не пройдет, иначе ReferenceError.
229 1968793
>>68782
Вообще-то вендоров он должен в отдельный файл пихать, чтобы не дрочить кэш лишний раз. Хуй знает почему у тебя два вендорских файла, колупай свой конфиг.
>>68786

>Зачем мне var, если я могу сделать такой код.


Потому что var древнее let/const. Его не нужно использовать в свежем коде.
230 1968794
Я этих замыканий в рот ебал.
Когда функция создается, у неё сразу же появляется скрытое свойство environment, которое содержит ссылку на внешнее лексическое окружение того места, в котором она была создана, что и создает замыкание.
При этом сама функция содержит скрытый объект Lexical Environment, в котором есть Environment record, с списком всех локальных переенных, и объект содержащий ссылку на внешнее лексическое окружение.
Вопрос! Нахуя функции 2 ссылки на внешнее лексическое окружение, если все функции это всё равно замыкания? Как это работает? Ссылки из environment нужна функции только если она была присвоена какой-то переменной?
231 1968796
>>68793

>Его не нужно использовать в свежем коде.


Вот с этого я в ахуе каждый раз. Постоянно везде где только можно вижу вар, в новых уроках, от всяких прошаренных спецов, в свежих документациях написанных вчера, везде! Вы что-то от меня скрываете? Почему вар используется везде и по сей день? Ответ о том, что это просто старый урок, код, дока и т.п. совершенно не принимается, поскольку это не так. Тут должно быть что-то еще
232 1968797
>>68793
Была единственная подозрительная хуйня в конфиге - splitEntryChunks() Я ее вырубил, но после билда нихера не поменялось.
233 1968806
>>67411 (OP)
Генераторы нужны в 2к21?
234 1968813
>>68796

>от всяких прошаренных спецов


Так эти "спецы" или с другого языка вкатываются и по привычке хуярят вар, или писали код до появления даже строгого режима и необучаемые. Особенно проигрываю с яндекса, там как пить дать перемалывают косточки с var/let/const на собесе и прочие пропозалы екмаскрипта, но внутреннее говно будешь на варах и фабричных функциях писать.
235 1968834
>>68806
Они приконые.
236 1968838
>>68796
>>68813
Главное let в цикле не использовать... Главное не использовать в цикле...
237 1968849
Есть что-нибудь такое же фундаментальное как YDKJS, только по Angular + RxJS? Хотелось бы не отрывками откуда то знания брать, а именно быть уверенным в том, что я весь фундамент знаю и могу переходить к практике не ниже миддла (но без набитой руки).
image.png228 Кб, 480x360
238 1968850
>>68838
Если let в цикле использовать, то это.. это самое плохое.. потом так и будешь использовать
239 1968856
>>68849
Есть YDKANG и YDKRJS
240 1968862
>>68850

>Если let в цикле использовать, то это.. это самое плохое.. потом так и будешь использовать


Примерно так весь кодинг и объясняется
241 1968878
>>68856
Мне не обязательно серия YDK, по Ангуляру там только вопросы, без постепенной подачи материала, которая поможет на практике. Есть книга или сайт какой-то такого же уровня, как и по JS?
242 1968883
>>68878
да, читай лерн ангуляр кантора
243 1968898
>>68883
Годно, и MEAN стак можно изучить, и RxJs еще. А ты сам брал по Ангуляру, оч хороший, устроился потом куда-нибудь? И если что, можешь аккаунтом поделиться или выгрузить, а то джуну без опыта идти только дворником работать чтобы за пару месяцев на курс накопить.
244 1968907
>>68664

>>А тебя ебать должно во что там перепахался html?


Ну допустим из разметки я при каком то вызове хендлера должен получить, и не сейчас прям, а через некоторое время. А в это время другой объект может получить элемент DOM из этой разметки и нахуевертить.
Я готов потратить месяцок на пердолинг с книгой, что бы лучше понять как правильно все структурировать.
Вот книгу и спрашиваю. Чето типа "построение корпоративных интерфесов на JS без фреймворков и мокрых писек без смс"
245 1968908
>>68907
п.с.
что сука характерно - бекенд на ноде прям проще дался
246 1968919
>>68849
оф дока
image305 Кб, 1828x1074
247 1968922
У меня от энтой хуйни глаза на лоб лезут, можно это безболезненно скипать? Поверхностно понял че такое генераторы, читать 100 страниц про них больно.
248 1968928
>>68922
Мы вам перезвоним
Стикер512x512
249 1968930
>>68928
Нееет, ты врешь!
250 1968933
>>67411 (OP)
считается ли хорошим тоном использовать в тестовом фреймворки типа материала
в тз написано что Используемые технологии: JS, HTML, CSS. JS-фреймворки не запрещены.
251 1968936
>>68922
у меня от вас генераторы и даже обещания
252 1968944
>>68922
Чо это?
253 1968948
>>68933
Не важно, тебя все равно не возьмут на работу, пока ты не напишешь по памяти в блокноте клон гугла. С беком конечно, и всеми сервисами. Но это только для бесплатной стажировки.
254 1968949
>>68944
Генераторы, долбоеб.
255 1968960
const result = words.filter(word => word.length > 6);

Что за механизм заставляет передавать в функции параметры, как например здесь в методе filter, когда мы делаем этого явно. Ведь мы просто создаём анонимную функцию, которая ждет, что в нее будет передан параметр. Как фильтр передает в эту функцию текущий элемент массива? Как это называется? Где прочитать?
256 1968964
>>68960
фильтр возвращает массив готовый массив, элемент массива передает стрелочная функция
257 1968972
>>68964
аргумет с массивом парсится в множество аргументов для функции

можешь представить это как обычный цикл for
258 1968976
>>68972
>>68964
Вы вообще прочли вопрос или просто так решили написать набор слов?
Стикер447 Кб, 512x396
259 1968978
>>68976

>Вы вообще прочли вопрос или просто так решили написать набор слов?

260 1968994
>>68907

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


Хендлер будет вызывать связанный метод с твоим состоянием, все модификации дома за пределами этих методов будут считаться невалидными для состояния.

>А в это время другой объект может получить элемент DOM из этой разметки и нахуевертить.


Чё ты вообще несёшь? Какой другой объект? Поконкретней юзкейс приведи, а то получается, что ты не можешь управиться с домом даже на своей странице.

>Я готов потратить месяцок на пердолинг с книгой, что бы лучше понять как правильно все структурировать.


Нет такой книги, так как пока её будут писать, то советы в ней устареют. Касается в принципе всех книг по жс, кроме самых общих.

>Вот книгу и спрашиваю. Чето типа "построение корпоративных интерфесов на JS без фреймворков и мокрых писек без смс"


Никто не будет эту книгу писать. Человеку, на это способному, проще свой фреймворк создать и пропихнуть, чем вкатунов учить.
261 1969002
>>68960
ебать с такими вопросами иди документацию джаваскрипта читай и гугли на тему как работают языки программирования
262 1969006
>>68907
Один вопрос: Код твой, зачем тебе хуевертить какие-то элементы из второго места?
263 1969011
>>69006
Ну т.е. если мы передаем в функцию параметр явно, например:
func(5);
Это понятно, а когда мы не передаем в функцию аргумент явно, то каким образом он туда передается? Я не спрашиваю как работает метод фильтр, это просто пример.
Потому что вот здесь someArr.filter(arrElement => arrElement.length > 1), откуда анонимная функция берет этот arrElement? Что передает к примеру в данном конкретном случае текущий элемент массива в эту функцию?

>документацию джаваскрипта читай


С радостью, вот бы только знать, где там об этом написано
264 1969015
Обьясните вот сейчас когда интернет космических скоростей, на пекарнях майнят, нахуя все эти библиотеки реакты вью редаксы графкли , неудели нельзя пилить сайты как раньше ?
265 1969020
>>69011

>Ну т.е. если мы передаем в функцию параметр явно, например:


Но ты не передаёшь функцию здесь, а только результат её вызова.
266 1969021
>>69015
Я тоже так думал, когда 5G еще только в головах у людей был.
Суть такова скорость веба по другому работает, нежели скорость передачи данных по сети. Фильмы может будешь качать быстрее, но странички быстрее своего максимума открываться не станут.
267 1969024
>>69020
Откуда тогда сама эта функция берет аргумент для себя? Я же нигде этот аргумент в неё не передаю. arrElement ведь каким-то образом сам подставляет в себя текущий элемент массива. Как?
268 1969025
>>69021
Ну есть же типа всякин http2 или еще че
269 1969027
>>69015
>>69021
Все эти фреймворки нужны не для уменьшения трафика, а для во первых более быстрой работы страниц в самом браузере. Потому что то, как браузер оперирует элементами DOM по дефолту, это очень долго. Второе - SPA. Сам по себе браузер не может оперировать страницей так, как будто бы ты работаешь с приложением. Для этого и нужны фреймворки. Вот две этих основных задачи и выполняют фреймворки/библиотеки. Все остальное вторично
270 1969030
>>69015

>интернет космических скоростей


Абсолютно однохуйственно после того, как страница и весь контент загрузились.

>на пекарнях майнят


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

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


Ты залётный что ли? Библиотеки эти нужны, чтобы хуяк хуяк и готово быстрее приближать. Попробуй любой компонент средней сложности писать без какого-нибудь шаблонизатора, даже на условном жикверике быстро завоешь волком и побежишь в цирк выступать.
xxx.png54 Кб, 1110x670
271 1969032
>>69024
>>69020
Вот например другой вариант, пример у кантора, пикрил.
Откуда функция принимает этот x? Понятно, что x это текущий элемент массива, но каким образом текущий элемент передается-то? Я бы с радостью почитал про это, вот бы только понять где
272 1969037
>>69024
Потому что блять он ожидает в аргумент функцию с конкретным аргументом. Учи замыкания, чтобы не быть баттхёртом. А ещё лучше напиши отдельную функцию, которая должна колбэком в arr.filter() идти, а не инлайнь её анонимкой, там сразу всё поймёшь.
273 1969041
>>69032
Почитай про rhs и lhs
274 1969043
>>69032
Бля, он передаёт ВЫЗОВ функции, которая возвращает функцию, подходящую параметрами как колбэк для фильтра. Тут тебе уж точно надо учить захват переменныхзамыкания.
275 1969044
>>69037

>Учи замыкания, чтобы не быть баттхёртом.


В данном случае не замыкания, а коллбеки ведь, вот лишь бы спиздануть
276 1969047
>>68907
Francesco Strazzullo - Frameworkless Front-End Development_ Do You Control Your Dependencies Or Are They Controlling You_ (2019, Apress)
277 1969048
>>68922

>Обратные вызовы не обладают средствами композиции


Но cont это же монадка...
278 1969049
>>69043
Я тебя сейчас ударю нахуй. Каким образом это относится к замыканиям сука? Замыкания - способность функции запоминать ссылку на внешнее окружение при её создании. Как этот факт объясняет то, что в Х попадает текущий элемент массива?
280 1969058
Это пиздец просто, эти люди код потом пишут? Я пока вопрос задавал уже сам ответ понял, а вы всё еще не можете понять вопрос
Стикер511 Кб, 461x512
281 1969064
>>69049

>Я тебя сейчас ударю нахуй.

282 1969068
>>69064
Хватит постить здесь свои фотки и фото своего бати >>68978
283 1969069
>>68922
Тоже сгорела от них жопа. А там еще всякие связки генераторов с промисами и прочее. И про async/await автор упоминает лишь вскользь, хотя как я понял они руинять всю эту хуйню с генераторами и делают их по сути нахуй не нужными.
284 1969070
>>69049
Придурок почитай про метод фильтр
image35 Кб, 354x360
285 1969071
>>69069
Я вроде как расчитался, читаю просто бегло, че не понимаю - похуй, читаю дальше, автор хорошо от абзаца к абзацу объясняет, если не понял с первого абзаца есть впереди еще три или четыри, он там свои мысли по кругу гоняет, короче просто дочитывая уже вкуриваешь че он хочет сказать. Норм. Яже не жалуюсь в принципе.
Начать просто было тяжело.
286 1969072
>>69069

>хотя как я понял они руинять всю эту хуйню с генераторами и делают их по сути нахуй не нужными


Мякотка в том что ты можешь писать свои запускаторы генераторов, которые необязательно запускают промисы. Посмотри redux-saga например
287 1969075
>>68960
Потому что аррей это объект, и у него есть проперти, в которых он хранит все что нужно и передает в колбеки если надо

class Array {
..items = [...];

..filter = (callback) => {
....for (let item of this.items) {
......callback(item);
....}
..}
}
288 1969077
>>69071
>>69069
Что за книга?
289 1969078
>>69077
Библия
290 1969080
>>69075
>>69070
Короче я уже нашел ответ на вопрос, пока пытался задать сам вопрос. Это просто пиздец. Всё, спасибо. Вопрос решен
291 1969083
>>69021
>>69027
Вы так говорите будто реакты-редаксы ускоряют загрузку или скорость работы страниц а не наоборот.
Только благодаря как раз таки скорости современного интернета и тому что у каждой собаки 3ГГц и 16 памяти современные фреймворки и существуют. SPA на реакт ты вообще хуй запустишь на каком-нибудь старом говне мамонта.
image66 Кб, 1157x841
292 1969084
>>69077
Для мальчиков, книга для мальчиков так и загугли.
293 1969086
>>69083
Они работу самого сайта ускоряют, а не загрузку. Работу сайта, когда он уже загрузился. Если у тебя там одна страница буквально без каки-то интерактивных элементов, то тебе фреймворки не нужны
294 1969088
>>69083
Хуй знает о чем ты, я говорю что скорость загрузки сайтов на компе через оптоволокно уже максимальна если у тебя 100МБ канал.
Ускорить загрузку помогут только - новые версии веб апи, новые браузеры, новые мощные сервера с хорошим откликом.

Для мобилок 5g нужен потому нужен что бы принимать без потерь волн - частоту, она более мощная чем предыдущие и интернет стабильнее будет, и скажем на мобилке условия будут приближены к стационарным пека с оптоволокном, не более.
295 1969093
>>68994

>>Никто не будет эту книгу писать. Человеку, на это способному, проще свой фреймворк создать и пропихнуть, чем вкатунов учить.


Ну да, то то в джава мире половина книг это "строим корпоративные приложения". Вторая - шла фабрика через абстрактную фабрику к цепочке обязанностей.

>>Чё ты вообще несёшь? Какой другой объект?


Конкретней - другой прогер, решил доработать клиентский код на странице, читать что я там нахуярил и как оно работает - он в рот ебал. (Я хоть разообрался как вебпак работает, и +\- по классам все раскидал, но все же лапша.)
Написал он свой обработчик, который чето где то меняет html того элемента разметки на котором у меня висит обработчик. А у меня мой обработчик хуиту начал возвращать.Типа такого. Я не особо могу сформулировать, потому что из юз кейсов у меня пока - нихуя особого.

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

Полагаю это хуйню либы типа реакта и решают.

Если че не батхерти, а то у вас в треде конечно клоунада
296 1969095
>>69027

>Все остальное вторично


Чет я думаю что то о чем ты пишешь - вторично.
Первично структурирование кода, но я могу ошибатсья
297 1969104
>>69044
И откуда этот колбэк берёт значения для сравнения?
298 1969105
>>69095
Структурировать код можно и без фреймворка, но да, это то, что фреймворки делают очень хорошо
299 1969106
>>69093

>Написал он свой обработчик


Ну если он трогает чужие элементы то очевидно же что распидорасит.

>после бэка


По аналогии, тебя не беспокоит что соседний сервис насрет тебе в базу в обход твоей бизнес логики?
300 1969107
>>69083

>Вы так говорите будто реакты-редаксы ускоряют загрузку или скорость работы страниц а не наоборот.


Они скорость разработки ускоряют. Просто блять нахуячь какую-нибудь карточку товара с несколькими обработчиками на срякте, а потом напиши эквивалент на чистой ванилле без всяких хаков с инсертами шаблонных строк и сравни затраты времени.
301 1969109
>>69106

>>Ну если он трогает чужие элементы то очевидно же что распидорасит.


Короче это вещь которую нужно принять как факт.

>>По аналогии


Я об этом думал, конечно сторонний сервис может мне данные поменять, но структуру то не изменит. Не типы данных, ни количество полей.

Тут же сторонний скрипт может тупо разметку удалить вообще. Ладно, я понял, спасибо.
302 1969112
>>69107
Охуеваю ебаться с постоянными обращениями к дом, и блять залупой с навешиванием/убиранием обработчиков нна элементах которые динамически создаются и удаляются.
Хорошо хоть шаблонизатор хенделбарс жизнь облегчил пиздец.

Но вообще поебусь еще пару недель, да закачусь в реакт. Мне не SPA пилить, а всякие сложные формы с динамически подгружаемыми данными нужны.
>>69109 - кун
303 1969125
>>69093

>Ну да, то то в джава мире половина книг это "строим корпоративные приложения". Вторая - шла фабрика через абстрактную фабрику к цепочке обязанностей.


Это конечно хорошо, но мы говорим о жаваскрипт мирке, в котором за год может родиться и помереть целый фреймворк вместе со своими идеями. А неумершие могут полностью поменять парадигму, как например реакт с классов на хуки. Или выйти новая мажорная версия бандлера, с которой половина старых либ не дружит.

>Я не особо могу сформулировать, потому что из юз кейсов у меня пока - нихуя особого.


Берёшь html, лепишь на него элементы, через скрипт вешаешь на них обработчики и смотришь на результат.

>Полагаю это хуйню либы типа реакта и решают.


Реакт это дело не совсем решает, он больше как клиентский шаблонизатор, но конкретно что ты хочешь сделать - флюксо-подобное управление состоянием. И редукс является одной из реализаций этой парадигмы. И он не является частью реакта, хоть его часто в реактоподелия и пихают.
304 1969129
>>69112

>>Но вообще поебусь еще пару недель, да закачусь в реакт. Мне не SPA пилить, а всякие сложные формы с динамически подгружаемыми данными нужны.



Бля, и в тоже время я навелосипедил нативным js такой уютный пагинатор загруженных данных, переход по страничкам результата - это ajax запросы. Было прикольно его васянить.
305 1969145
>>69032
>>69057
>>68922
Что это за лютый говнокод? Блядь, неужели нельзя понятнее написать?
Нахуя городить все эти замыкания, если можно передавать в функцию просто больше аргументов?

Вообще не понимаю юзкейса этих замыканий, блядь.
Array prototype filter() - JavaScript MDN.png18 Кб, 737x474
306 1969153
>>69145

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


Какие больше аргументов в колбэк фильтра, если он ожидает колбэк с определённым количеством аргументов?
307 1969170
>>69077
Кайл Симпсон "Ты не знаешь Javascript, мразь!"
308 1969174
>>69153
Ну типо несколько раз назначить внутренние функции, хз вообще как это называется r = k(0); s = r(1) d = s(). Ну а я типо прост беру и делаю r = k(0); s = l(1); x(r, s).

В любом случае, нахуя нужны замыкания? Нипанимат.
309 1969183
>>67411 (OP)
Расскажите плез, где можно достатать весь список методов и вообще всего из чего состоит Реакт. На самом сайте Реакта в документации все этим методы как-то не структурированы, вплетены в графоманию.
310 1969188
>>69107
Вот это верно.
И это единственное что современные фреймворки ускоряют, в угоду всего остального.

Но как только производительность начинает вставать серьёзной хронической проблемой (например объём данных в редаксе того же порядка что объём памяти на устройстве) все внезапно охуевают от точно что пути назад в ванилу уже нет.
311 1969191
>>69174
Это и есть замыкание, просто неявное.
312 1969200
>>69191
Нехуясе. Нахуй тогда писать изъебесто через return, если можно и без этого?
313 1969207
>>69200
Ты и так возвращаешь функции, так что не более изъёбисто.
В теле этих функций один хуй будет что-то типа `return function(x)`;
1458400391512.png6 Кб, 205x224
314 1969227
>>69207
Всё равно нихуя не понял. Почему нельзя через пикрелейтед всё делать? Если через return function(x){}, то меньше памяти и что-то с оптимизацией связанное?
315 1969233
>>69227
Твой пример никакого отношения к теме не имеет.
Пример с фильтром можно было переписать как
const filter = inBetween(3, 6);
arr.filter(predicate);
Но тогда было бы слишком понятно.
316 1969234
>>69233

>arr.filter(filter)

317 1969237
>>69233
Ну так я спрашиваю, нахоя нужны эти замыкания, если можно и без них?
В случае фильтра, я просто делаю filtered = function(a, b, arr){};
318 1969249
>>69237

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


Чтобы не городить аргументы.
320 1969251
>>69249
А чем плохо городить аргументы?
321 1969253
Есть куча текста без пробелов обернутого в span
Когда засовываю его в некий контейнер то текст высирается в одну строку (конечно, пробелов-то нет), как заставить его делать переносы по строкам и уместиться в контейнер? Возможно кстати тут даже без жс обойтись выйдет
322 1969255
>>69251
Тем что это тяжело поддерживать и функции становятся тяжелыми, зависимыми от кучи аргументов.

В примере с фильтром, предикат (функция, которая фильтрует элемент) можно переиспользовать в другом фильтре. Или объединять с другими предикатами. Или передавать как аргумент в другуюфункцию. И так дальше.
323 1969259
>>69253

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


Каким строкам, если у тебя в тексте строк и переносов нет? Он должен за тебя распарсить текст и лайнбрейки вставить по смыслу или что?

>и уместиться в контейнер


Текст всегда умещается в родительский контейнер по умолчанию, тут уже надо спрашивать что ты с этим контейнером сделал, что у тебя не умещается.
324 1969272
>>69253
word-break: break-all;
?
325 1969281
>>69251
Функция должна делать что-то одно хорошо.

Твой пример сверху вообще-то не просто "фильтр", это комбинация из нескольких операций. Больше-равно, меньше-равно, "и" и фильтр.

const smallerThen = (x, y) => x < y;
const biggerThen = (x, y) => x > y;
const both = (fn1, fn2) => (...args) => fn1(...args) && fn2(...args);
const inBetween = both(smallerThen, biggerThen);

// ...
arr.filter(inBetween(3, 6))

К счастью, многие вспомогательные функции уже написаны до нас, т.к. они постоянно используются. Ramda.js популярная библиотека сейчас, с помощью нее вышенаписанное можно написать сразу
const array = [1, 2, 3, 4, 5, 6, 7, 8];
filter(both(lte(3), gte(6)), array) // [3, 4, 5, 6]

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

Кроме того, подобный подход улучшает твое качество кода, ты пишешь меньше процедурных портянок и код становится более абстрагированным, когда ты начинаешь использовать функции как аргументы. Тогда и становится понятно, что без замыкания на ДЖС писать вообще было бы невозможно, пожалуй.
326 1969312
Нужно ли делать делегирование событий в реакте или просто на каждую кнопку вешать онклик на похуях? Какая практика обычно распространена? С одной стороны меньше обработчиков, с другой с кодом куда легче работать и проще манипулировать данными при клике
327 1969316
>>69312
Сам спросил, сам нашел ответ, в общем Денчик порешал, что нет, нахуй нам не нужон этот ваш эвент делегирование https://github.com/facebook/react/issues/13635
328 1969319
>>69255
>>69281
Прочитал интернеты. Моё мнение токово. Литературно. На этом всё.
Абсолютно все примеры можно заменить на более простые, более понятные, более производительные императивные.
1475418736596.png12 Кб, 455x277
329 1969323
>>69255
>>69281
Алсо, пока ебал вашу хуйнявые закрывания и калбэки, придумал такую хуйню. Пользуйтесь. Прикона вышло, нужная хуйня, мне как раз треба.
Можно даже этот ваш контекст устанавливать через это, но его по-разному можно, так что это чисто словарь функций для ебания байтов.
330 1969326
>>69323
У тебя на скрине не байты, а числа в десятеричной системе, которые ты используешь как свойства объекта.

Теперь по крайней мере понятно почему ты ничего не понял про функции и замыкания, JS еще учить и учить. Алсо судя стилю письма тебе не больше 18 лет.

>простые, более понятные


Нет. Когда-нибудь возможно ты попадешь в большой проект и поймешь почему твои выглядящие "просто" бредовые идеи на самом деле говнокод.

>более производительные


Да. Но в 99% случаев разницы между наносекундами погоды не сделают, если только ты не пишешь под микроконтроллеры.
331 1969379
Кто шарит в graphql ? Есть несколько способов организовать структуру, какую лучше заюзать?
332 1969389
>>69379
Первую
sage 333 1969393
>>69389
Пашел на хуй
334 1969399
>>69312
Ты и так делаешь сорт оф делегирование, передавая колбэк потомкам.
15425220794420.jpg88 Кб, 800x1200
335 1969523
Рубрика вопросы от вкатышей.
Как-то раз, 5 минут назад, забавы ради, зашёл в доку ramba. Функциональненько так, сигнатурки красивые вся хуйня. Есть вот, к примеру, функция toUpper, её исходник это мягко говоря пиздец. Оно ведь сложно ради ничего!
Вопрос зачем и нахуя?
336 1969546
>>69523
Я не хочу тебе отвечать. Сможешь меня переубедить?
fsX0d3fs21dAf.jpg30 Кб, 382x486
337 1969549
338 1969618
>>69523

> её исходник это мягко говоря пиздец


https://github.com/ramda/ramda/blob/v0.27.0/source/toUpper.js
Там ровно одна строчка кода.
Катись обратно
339 1969633
>>69618

>Катись обратно


А вот хуй.

>Там ровно одна строчка кода.


Угу, инвокер. Что бы что?
image.png15 Кб, 981x256
340 1969675
>>67411 (OP)
ну и че это
sage 341 1969686
>>69675
Классо блядь порвало. Найс. С функциями для начала разберись
342 1969688
>>69326

> У тебя на скрине не байты, а числа в десятеричной системе


Именно так в жс байты используются, лол. Просто массив в число (если нужны преобразования ради надёжности, например) или строку хуяришь и всё. Ты же массивы не можешь сравнивать. Естественно нужен еще один словарь длин и цикл преобразования бинарных массивов, которые примерно так же будут работать.

> которые ты используешь как свойства объекта.


Кстати, а это нормально вообще, так переменные в объектах назначать? Выглядит кросиво, бохато, но как-то неприятно. Оно же просто как ссылки на буферы памяти используется, да?

> Теперь по крайней мере понятно почему ты ничего не понял про функции и замыкания, JS еще учить и учить.


Не понимаю зачем они нужны. Нужно практическое применение, но на практике это лишний говнокод с говноконтекстом и падение производительности. Мне кажется даже вот такой словарь с функциями будет медленнее простой портянки сравнения строк через if. Но это не точно, объекты это центральное свойство жс, возможно интерпретатор тут всё же использует высокоэффективный код.

> Алсо судя стилю письма тебе не больше 18 лет.


Меньше фантазируй.

> Нет. Когда-нибудь возможно ты попадешь в большой проект и поймешь почему твои выглядящие "просто" бредовые идеи на самом деле говнокод.


Не, говнокод это когда ты читать не можешь и не вкуриваешь сколько контекста функция принимает и где, например. Или что она храниться в памяти всегда. Это реальный говнокод, когда сайтик хуево работает на i5.

> Да. Но в 99% случаев разницы между наносекундами погоды не сделают, если только ты не пишешь под микроконтроллеры.


Речь шла про сурьезное программирование, в котором огромное кол-во функций и их переиспользования. Очевидно ни про какие наносекунды речи не идёт уже, а модули работают уже микросекундное время.
343 1969694
>>69686
Какие функции почему вебпак не видит мой экземпляр класса че за хуйня
Хотя в другом проекте точно также объявляю и все работает
344 1969708
>>68838
А что будет происходить, если не секрет?
345 1969741
>>69708
Он создаёт каждый раз новую область видимости, т.е. каждый раз будет работать scope.h, каждый раз будет работать аллокатор.
Для for(let ; ; ) это нормально, но если ты будешь внутри цикла что-то там создавать объемное.... Боюсь говнокод v8 к таким нагрузкам еще не готов....
346 1969773
>>69741
Плохо, что сказать. У меня ОЧЕНЬ много кода когда я так делаю, ещё больше в forEach... А какая альтернатива есть тогда? Я не вижу чтобы тормозили проекты мои, но всё же.
347 1969779
Блять нестед арэй значит разбираем форич колбек с циклом, а в цикле рекурсия колебка. Каждый день что-то новое узнаю
image13 Кб, 223x226
348 1969793
У вас бывает такое что заебался кодить, читать и хочется упасть на кровать и спать, но ты понимаешь что это выбор слабаков, и продолжаешь кодить, марафоню уже две недели по 12 часов каждый день, сегодня понял что сил уже не осталось, и ничего кроме кода больше не интересно, но на него сил не осталось, кек. Эмоциональное выгорание типо.
349 1969798
>>69793

> марафоню уже две недели по 12 часов


Завидую.
image.png67 Кб, 625x667
350 1969801
>>67411 (OP)
Сап, программач. Очередной вкатывальщик с очередной тупой проблемой. Подключил файл со скриптами в <head>, написал простенькую херню по аналогии с тем, что когда-то писал на делфях, но в результате получаю пикрил. Может я чего-то не понимаю и функции в жс, например, не могут содержать больше одной строки кода?
351 1969810
>>69801
щя тя абосут
352 1969811
>>69810
Если по факту - то это хорошо, я ради этого и пришёл.
353 1969821
>>69801
Google://js function syntax
Используй const или let для переменных.
Выведи копипастный код в отдельную функцию.
354 1969824
>>69801
Скобеи у теья непрааильно расставоены и не закрыиы.

А в целом у теья тут новнокод, поэтому ты и не понимаешь ничего.
355 1969834
>>69801
Говно и моча. Хочешь быстро вкатиться что бы писать по мелочи учи jquery, хочешь нормально выучить язык читай все что в шапке., книги, доку. И свою хуйню больше не кидай, пока хоть одну книгу не прочтешь.
356 1969843
>>69773
Да ничего не делай, всем похуй, память резиновая.
Альтернатива - дрочи архитектуры при которых в циклах переменные не объявляешь. Хз где про это читать даже и к чему это относится.
357 1969906
>>69801
Что за тег скрипт в js файле? Чо началось то?
358 1969931
>>69801
Все у тебя нормально, ты забыл фигурные скобки для функции
359 1969957
>>69793
Тоже так делал когда вкатывался, сейчас вообще охуеваю вспоминая откуда у меня силы брались на такую дисциплину.
360 1969981
>>69125
напердолил уже несколько сложных приколюх на реакте без всяких редуксов, полёт нормальный
есть мнение что сам редукс лучше не использовать а использовать либы использующие редукс
361 1969984
А что нода реально работает только на одном ядре?
362 1970001
>>69984

>A single instance of Node.js runs in a single thread. To take advantage of multi-core systems, the user will sometimes want to launch a cluster of Node.js processes to handle the load.

363 1970020
>>69688

>Именно так в жс байты используются, лол. Просто массив в число (если нужны преобразования ради надёжности, например) или строку хуяришь и всё. Ты же массивы не можешь сравнивать. Естественно нужен еще один словарь длин и цикл преобразования бинарных массивов, которые примерно так же будут работать.


Екмаскрипт ему дал типизированные массивы для байтоёбства, пердолься на здоровье. Говорит, не хочу пердолиться нормально, хочу жрать говно и костылить псевдобайтоёбство высокоуровневыми конструкциями.

>Это реальный говнокод, когда сайтик хуево работает на i5.


Давай рассказывай, как тебе ш5 поможет для рантайма синхронного однопоточного языка.
364 1970022
>>69675
короче все было из-за того что вебшторм создал мой файл с классом жсным, но в конце не было .js
и вот из-за этой хуйни вебпак его не видел
365 1970023
>>69984
Документацию прочитал бы, там есть объекты которые позволяют запускать доп- процессы на ядрах.
366 1970024
Я обнаружил, что у меня в реакте есть два очень похожих компонента, хочу сделать из двух один. Вопрос в типизации.
Первый компонент принимает в качестве пропса функцию с аргументом и типом возврата, второй принимает без аргументов и возвращает нихуя, в остальном они похожи.
Пока что я написал 2 интерфейса:
interface One {
//blahblahblah
myFunc(abc: string) => number
}

interface Two {
//blahblahblah
myFunc() => void
}

и в пропсах: const Component = ({...blahblahblah, myFunc}: One | Two): JSX.Element => {}
Это норм?
И как можно проверить, какому интерфейсу удовлетворяют полученные пропсы? Я хотел бы на основании этого подключать другие стили.
367 1970027
>>70020

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



Дрочился с этими массивами на ноде, пока васянил свою реализацию вэб-сокетов. Интересно
368 1970028
>>70024
Никак, передавай тип еще, или назови функции по разному лел
369 1970030
>>70027
А там разве json строкой срать нельзя? Не первый раз вижу всякие костыли вокруг ws.
370 1970031
>>70028
Серьезно блять? Пиздец. Почему для этого не предусмотрели функцию? То есть даже костылями нельзя проверить, всегда придется руками передавать тип? Пиздец блять.
371 1970032
>>70030
Хуета, берешь массив, потом считаешь количество хуеты в массиве.
если аргументов 4 то срешь говном, если 5 то жидко и вонюче пердишь и т.д.
372 1970033
>>70030
Я дрочился с передачей бинарных файлов через сокеты. Картинки например. Чисто велосипедостроение. Там много всякого, мим-типы.
Отправил клиент бинарным потоком через сокет картинку - сервер принимает этот поток. Там много интересного пердолинга.
373 1970038
>>69984
да, но можно заспавнить 10 процессов и посадить их по разным портам, но тут нужно писать балансировщик
374 1970039
>>70038
а есть тесты,сколько нода может держать каналов вебсокетов?
375 1970041
>>70039
ты амазон собрался писать на ноде?
376 1970043
>>70041
чисто теоретический интерес))
377 1970044
>>70043
это не от ноды зависит.
от лимита соединений в системе и доступной памяти.
378 1970045
>>70044
ты про ОС?
379 1970046
Короче ебал я рот этого Кантора и того кто его в этот злоебучий фак добавил. Доставьте мне тем которые реально нужны в работе и юзаются довольно часто чтобы их знать. Лучше буду гуглить мдн чем читать эту хуйню с отвратной структуризацией материала. Всё что нужно кроме базовых фич которые во всяких сях имеются, т.е. какие-то там промисы, дереференс это понятно, пердолинг с домом - очевидно. Что там ещё?
380 1970047
>>69984
Нет. У каждого инстанса ноды под копатом пул потоков, который используется для операций ввода вывода.

Веб воркеры это тоже отдельные треды.

Треды по логическим иядрам рапсредялет ОС.
381 1970049
Окей, я сделал 1 компонент из двух.
interface Props {
//blahblahblah
myFuncOne?: (abc: string) => number;
myFuncTwo?: () => void;
componentType: "TypeOne" | "TypeTwo"; --Это типо литерал стринг тайп или как-то так
}
В пропсах перечислены все возможные варианты, т.е. и myFyncOne и myFuncTwo. Это норм?
В самом компоненте есть onClick обработчик. Я хочу, чтобы в зависимости от componentType onClick был либо myFuncOne либо myFuncTwo, это норм, если я сделаю useState, в проверку типа в If, в зависимости от которой будет либо state=myFuncOne либо myFuncTwo и уже стейт будет передоваться в onClick.
Это норм вообще? Выглядит костыльно. Или лучше было бы не ебать мозг и оставить 2 компонента, которые отличаются 1й функцией?
382 1970050
>>70046
бля ты совершаешь ошибку вкатуна, не получив должную базу
383 1970054
>>70046
Бля, проиграл с нюфани, который 2 + 2 научился складывать, и теперь хочет "чего то применяемого в дела"
384 1970055
>>70050
Там нет ничего хорошего. Почти для каждой темы что я ответственно прошёл и из которой пробовал решать шизо задания я после гуглил/смотрел выборочно у чувака из курса с юдеми.
385 1970058
>>70054
А зачем на усредненом фронте ООП,асинк,коллбеки,объекты,если надо учить практич манипулирование DOM ом
386 1970061
>>70058

>ООП


хз

>асинк


Запросы по апи.

>коллбеки


Бывает иногда нужно.

>объекты


Ебанулся?

>если надо учить практич манипулирование DOM ом


Манипулирование домом из ванили - мозгоебство.
387 1970062
>>70046
Ты вкатывальщик? Освоишь Кантора, потрать день/два на чисто на верстку, затем недельку/две на реакт/вью/ангуляр и иди на собес уже
388 1970064
>>70062
План примерно такой и был, но спустя 3 часа мозгоебли над сабжем я реально бугуртнул. Пойду прогуляюсь, наверну кофе и может пересилю себя да добью этот ужас.
389 1970066
>>70031
Сдался в рабство тс-комплиятору по надуманной причине и под веянием моды - терпи, хули еще тебе делать. Жс-господа тем временем наслаждаются свободой без анальных пробок и передают в функции что хотят.
390 1970067
>>70066
ТС это охуенно. Когда я писал на жс всегда получалась лапша ебаная вместо кода, а теперь я боле-лименья доволен собой.
391 1970070
>>70046
Запили проект просто, да и узнаешь, что нужно на практике. Какой-нибудь просмотрщик 3D моделей на three. И опыт, и портфолио.
392 1970071
>>70049
Вообще забей на мерж всего двух функций, особенно если нужно пихать литералы в аргументы. Это они сейчас отличаются только одной функцией, потом захочешь чего-нибудь ещё подкрутить в одном компоненте и это будет намного сложней сделать.
393 1970074
>>70067
Теперь у тебя получается лапша кода вперемешку с лапшой типов?
394 1970075
>>70067
Большинство ошибок возникают после компиляции, во время работы с апи и тд.
ТС не поможет тебе защититься от них. Но как инструмент для выработки правильных привычек в написании кода тс гуд
395 1970076
>>70064

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


Если где конкретно тупишь - юзай ютуб. Просто на джуновских собесах обычно ебут именно за самую базу за css спрашивали больше чем за реакт

> Пойду прогуляюсь, наверну кофе и может пересилю себя да добью этот ужас.


Норм, главное потом вернись за обучение
396 1970082
>>67411 (OP)
Можно ли как-то обратиться к одному объекту апи если там нет айди (есть уникальный таймстамп)
image.png13 Кб, 503x198
397 1970086
Можно ли через Jest проверить, что приходящий объект (пикрелейтед) имеет все поля которые должен иметь, без расширения expect самому?
398 1970088
>>70075

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


Я об этом и говорю.
399 1970089
>>70061

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


нет
400 1970092
>>70082
Забыл добавить что и документации никакой нет, это просто набор объектов в жсоне и я хочу по ссылке или как-то ещё подучить один объект
Они же нумеруются от 0 до конца
401 1970093
Сделал на реакте галерею пикч типа как у пинтереста, слитной плиточкой такой. В принципе не сложно, но она сука "мигала" при ререндере когда в настройках вид галереи переключаешь типа. Пока нашел решение проблемы чуть не закукарекал, ухбля.
402 1970096
>>70092
Ну значит парси весь джейсон в массив и по нему пробегайся. Альтернатива - смотреть исходники сервака.
403 1970103
>>70049
Прежде чем писать типы расскажи, как ты без componentType собирался определять будешь ты передавать в одну общую функцию аргумент или не передавать в одну общую функцию аргумент
jnvkWgRr400x400.jpg26 Кб, 400x400
404 1970106
>>70058

>манипулирование DOM ом


пипец ты дурачок)
405 1970107
Батя за сегодня сделал колоссальное: написал собственный парсинг текста для проставления переносов. Нахуя спросите? Потому что css свойства word-wrap / word-break / hyphens не работали, но Батя не хуем деланный, Батя на хуя вертел всех и каждого
406 1970109
>>70103
Никак, очевидно. К чему эти вопросы? Меня больше интересует вот эта часть:

>В пропсах перечислены все возможные варианты, т.е. и myFyncOne и myFuncTwo. Это норм?


В самом компоненте есть onClick обработчик. Я хочу, чтобы в зависимости от componentType onClick был либо myFuncOne либо myFuncTwo, это норм, если я сделаю useState, в проверку типа в If, в зависимости от которой будет либо state=myFuncOne либо myFuncTwo и уже стейт будет передоваться в onClick.
407 1970110
>>70107
кинь посмотреть
image.png221 Кб, 1094x1810
408 1970114
>>70109
К тому что нужно ли оно, или есть уже другое (возможно вычисляемое) поле

Не над пихать пропсы в стейт
409 1970125
>>70020

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


Так из uint8 всё равно словарь придется делать, о чем ты нахой. Мне больше интересно эффективно ли хранить словарь в объекте.

> Давай рассказывай, как тебе ш5 поможет для рантайма синхронного однопоточного языка.


Система загрузку приложений на несколько ядер распределяет. И жопаскрипт будет на одном из. И желательно чтобы он не сжирал своими замыканиями и прочим говнокодом всё ядро.
410 1970127
>>70125

>Система загрузку приложений на несколько ядер распределяет.


Ядра с потоками путаешь.

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


Ты конечно же тесты проводил, что твой говнокод дохуя быстрый без замыканий, да?
411 1970135
>>70114
Ну, как-то так у меня и получилось. Я смотрю ты шаришь в реакте. Где можно вообще бест практис почекать по реакт + тс? И стоит ли ебать себе мозг с ворнингом об exhaustive deps с хуком юз эффект, если я 100% уверен, что все норм, просто эта хуйня глаза мозолит.
412 1970136
>>70127

> Ядра с потоками путаешь.


Не суть, не суть. Суть в том что даже хром нагрузку по ядрам распределяет.

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


Это в руководстве мозилы по замыканиям написано.
413 1970146
>>70135
>>70114

П.С. А вообще я вот что хотел:
Без передачи в пропсы type вычислить, к какому типу принадлежат пропсы. Типо:
type Props = X | Y
props: Props
И дальше блять я точно не знаю, вроде я чет такое читал на typescript.org
Идет проверка, удовлетворяет ли props интерфейсу X, и если да, то выполняется какой-то код. Блять надо посмотреть, что-то такое там точно было. И никаких дополнительных type= в компоненте не надо.
414 1970148
>>70136

>Суть в том что даже хром нагрузку по ядрам распределяет.


Хром ничего "не распределяет", что ему система даст, то и будет жрать.

>Это в руководстве мозилы по замыканиям написано.


Наркоман, там только пример с фабричными функциями приведён, который перерос в классовый сахарок в свежем жс.
1607483801395.png223 Кб, 840x524
415 1970152
>>70148

> Хром ничего "не распределяет", что ему система даст, то и будет жрать.


Че несешь, ты поехал что ли. Он давно уже вкладки по потокам и ядрам распределяет.

> Наркоман, там только пример с фабричными функциями приведён, который перерос в классовый сахарок в свежем жс.


У тебя шиза началась. Буквально.

> > It is unwise to unnecessarily create functions within other functions if closures are not needed for a particular task, as it will negatively affect script performance both in terms of processing speed and memory consumption.

416 1970153
>>70146

>Идет проверка, удовлетворяет ли props интерфейсу X, и если да, то выполняется какой-то код


type guards
Но в них тоже надо что то чекать, типов то в рантайме нету
417 1970155
>>70152

>Че несешь, ты поехал что ли. Он давно уже вкладки по потокам и ядрам распределяет.


Кого он тебе распределяет, наркоман? Он вкладки в отдельных процессах создаёт, а как эти процессы будут насиловать ядра и потоки решает система.

>It is unwise to unnecessarily create functions within other functions if closures are not needed for a particular task


Долбоёб.
418 1970157
>>70153
Блять, да я ебал. Сложно было было что ли изначально типизацию к языку прикрутить. Пиздец блять боже, как же я завидую всяким сишарпам, где все няшно и изкаробки.
419 1970159
>>70155

> Кого он тебе распределяет, наркоман? Он вкладки в отдельных процессах создаёт, а как эти процессы будут насиловать ядра и потоки решает система.


Создание вкладок в отдельных процессах это и есть распределение. Подходит немношк.

> Долбоёб.


> if closures are not needed for a particular task


Так вопрос с этого начинался.
Нахуя нужны замыкания на практике? В какой такой практической задаче (напоминаю, let уже изобрели) замыкания понадобятся и без них (напоминаю, любую рекурсию можно в цикл разложить) жить нельзя?
420 1970169
>>70157
Тебе похоже чуть побольше надо из компонента вынести чем одну функцию. Но без примера тут хз
421 1970172
>>70159

>Создание вкладок в отдельных процессах это и есть распределение.


Вкладки создаются, чтобы память хорошо сжиралась, а не для каких-то волшебных многопоточных оптимизаций.

>Нахуя нужны замыкания на практике?


Ты даже типичную промисифированную реализацию таймаута без захвата переменныхзамыканий не напишешь. Да и любую любой враппер в принципе.

>(напоминаю, любую рекурсию можно в цикл разложить)


В цикл можно хоть твою мамашу разложить, вот только не каждая реализация рекурсии циклом сохраняет оригинальную читабельность.
422 1970173
>>70159

>Нахуя нужны замыкания на практике?


Зачем промисы если есть колбэки?
Зачем вообще колбеки если можно просто в цикле чекать интерапты
Нахуя ваши циклы, я могу просто goto!
image.png13 Кб, 362x288
423 1970223
Аноны, делаю задачки по учебнику и не могу понять, че делает вот эта строка помеченная стрелкой.
Это я подсмотрел уже в готовых решениях как вывести итоговый результат. Поэтому и не понимаю.
Есть функция которая делает некое вычисление, в этой функции есть абстрактный(?) параметр sum
И только если в конце объявить что um(menu), то typeof выдаст мне желаемый результат. Что происходит когда срабатывает это um(menu)? из объекта menu подставляются данные?
424 1970227
>>70223

>Что происходит когда срабатывает это um(menu)?


umnojenie
425 1970235
>>70223
происходит 8-12 строка, нажми брейкпоинт в дебаггере да посмотри по шагам что происходит если читать не умеешь
426 1970237
>>70157
захуй она нужна, чтобы проблемы на ровном месте создавать?
427 1970238
>>70172

>В цикл можно хоть твою мамашу разложить, вот только не каждая реализация рекурсии циклом сохраняет оригинальную читабельность.


Можешь забить, чел живет в своем шизомире Даннинг-Крюгера т понятия не имеет как работает JS.
428 1970242
>>69633
Рамда в исходниках сложная чтобы соблюдать каррирование каждой функции и выжимать перфоманс (многие функции под капотом там через while написаны)
429 1970244
>>70157
Вообще-то сложно, типизация это отдельная сложная область. У тебя мало опыта просто.
1477340676774.png3 Кб, 277x64
430 1970272
>>70172

> Вкладки создаются, чтобы память хорошо сжиралась, а не для каких-то волшебных многопоточных оптимизаций.


Не суть, не суть. Главное что вкладки не в одном потоке и не на одном ядре работают.

> Ты даже типичную промисифированную реализацию таймаута без захвата переменныхзамыканий не напишешь.


А зачем нужен таймаут в промисах? Таймаут ведь имеет колдблек.
Промисы тоже ненужны, они создавались когда вебворкеров не было и изобретали шизофрению с псевдоасинхронностью. Сейчас же чисто поебать на блокирование потока которому предначертано быть блокированным и асинхронным.

> Да и любую любой враппер в принципе.


Вот тут точно нет необходимости в замыканиях.

> В цикл можно хоть твою мамашу разложить, вот только не каждая реализация рекурсии циклом сохраняет оригинальную читабельность.


Проблемы говнокодеров.

>>70173
Вот действительно, зачем нужны промисы, когда есть коллбеки и нормальная асинхронность? Ну почти нормальная, изменения dom и так отделены фреймворком, так что похуй.

>>70238
Ну так я и спрашиваю зачем это всё нужно, че объяснить-то сложно что ли.
431 1970274
>>70272
Алсо, на пике буквально единственная хуйня, которую хоть как-то можно прикрутить к использованию, за счет того что оно промисы возвращает и имеет в себе try...catch. Но даже оно заменяется обычным куском кода и try..catch.
432 1970315
>>70272

>Сейчас же чисто поебать на блокирование потока которому предначертано быть блокированным и асинхронным.



ты чё несешь поехавший.
А рендеринг у тебя в браузере когда происходит, если у тебя поток все время блокирован?
433 1970340
>>70242

>соблюдать каррирование каждой функции


>выжимать перфоманс


Выглядит как деление на 0
434 1970345
>>70272

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


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

>А зачем нужен таймаут в промисах? Таймаут ведь имеет колдблек.


Бля, ты долбоёб. Колбэки как раз насильно заставляют скоупы для замыканий плодить.Если ты конечно не любитель анонимки пихать в колбэки. Но тогда твои пуки про производительность ничего не стоят.

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


Земля тебе пухом, братишка. Интерфейс вебворкеров по дефолту на колбэках работает (а значит больше замыканий), не разделяет контекст с основным потоком и не может в конструкции, не представляемые джейсоном. То есть для всех небайтоёбских операций он добавляет оверхед в виде конвертаций сообщений на обоих концах. Да и требует ассинхронного взаимодействия, на заблоченном потоке ты даже воркеров не сможет пропукать.
435 1970369
>>70172

>В цикл можно хоть твою мамашу разложить, вот только не каждая реализация рекурсии циклом сохраняет оригинальную читабельность.


Что ты несешь, поехавший, рекурсия - это нечитабельный антипаттерн, которого нужно избегать всеми силами. Дрочат на него только вкатывальщики в ФП, которые написали свою первую функцию для чисел Фибоначчи, либо жсеры, которые реального ФП и его подходов в глаза не видели, и думают что ФП ЭТА КАГДА ФУНКЦИИ ПИШЫШЬ
436 1970387
>>70369

>Ваше ФП не ФП

437 1970394
Всем привет.

Подскажите, как работают побитовые операции в данной функции сложения? Чет не совсем догоняю этих хитростей побитовых.

function add (x, y) {
while (y != 0)
{
var carry = x & y;
x = x ^ y;
y = carry << 1;
}

return x;
}

В общем, хотелось бы получить более ли менее подробное объяснение.
438 1970407
>>70394

>var


Начитался, блядь, двачей.
Где хитрости то?
Сложение столбиком помнишь? Тут тоже самое, только в двоичной системе
x' = x ^ y складываем каждый разряд по модулю 2, в десятеричной ты складываешь по модулю 10
y' = (x & y) << 1 каждый разряд который у обоих чисел равен 1 переносим в старший
Очевидно, что x + y == x' + y'

Что непонятного то?
promises.png35 Кб, 653x594
439 1970438
image.png48 Кб, 738x490
440 1970487
Написал палиндром чекер. Что скажете? Что можно изменить в коде мб или типа того?
441 1970490
>>70058
Ты когда вкатился, болезный?
Какой еще DOM блять?
442 1970519
>>70487
Нахера каунтер, когда можно return false при первом же не совпадении?
И да просто сравни с реверсной строкой
443 1970520
>>70490
Кирпичный конечно
444 1970527
>>70114
Что за штука делает такие охуенные скриншоты?
445 1970533
>>70438
Ироничный try catch с колбеками
446 1970536
>>70527
carbon.sh
447 1970543
>>70487
Укатывайся к себе в пхп тред, жс - язык для господ.
Снимок экрана 2021-03-18 131309.png163 Кб, 1662x832
448 1970544
Мужики, объясните долбоёбу почему функция работает не так, как надо.
В общем, функция должна возвращать массив с объектами, которые собираются внутри функции из массива с ключами и массива с массивами данных.
Моя хуйня возвращает массив с тремя одинаковыми объектами, значения которых взяты из последнего массива.
449 1970545
>>70519
ну да проебался с каунтером, да и итерировать там полмассива можно было. а просто сравнивать я не хотел
450 1970546
451 1970550
>>70544

>Моя хуйня возвращает массив с тремя одинаковыми объектами


Нет, это один объект. Тебя не смущает, что ты не создаёшь новые объекты?
452 1970552
>>70544
Так трудно вместо i и j как-то осмысленно называть переменные? Ты три раза засунул один и тот же объект в массив, чего ты ожидал увидеть там?
453 1970553
>>70550
Всё, понял. Спасибо.
454 1970557
>>70487

>изменить в коде мб или типа того?


ну хуй знает
'race car'.match(/[^\s]/g).every((e,i,a) => e === a.reverse())
Screenshot4.png2 Кб, 505x47
455 1970558
>>70557
разметка сожрала
456 1970559
>>70558
Нахуя так то??!
457 1970560
>>70559
Ну я даже хз. Читабельность лучше как минимум?
459 1970564
>>70562
что это за хуйня там у тебя понаписана
460 1970568
>>70564
В js нет встроенной функции reverse для строк, приходится так, да.
Ну а в функцию мне было лень оборачивать
image[1].jpg177 Кб, 640x640
461 1970569
462 1970573
>>70568
Блять, читаю по диагонали, короче. Нахуя тебе реверс для строки, если ты получаешь массив из регулярки.
463 1970580
>>70573
Потому что декомпозиция
1 Профильтровать строку
2 Получить развёрнутую строку
3 Сравнить их
image.png112 Кб, 1531x841
464 1970581
466 1970584
>>70580
Так ты делаешь тоже самое через реверс массива.
467 1970588
>>70584

>Так ты делаешь тоже самое


Угу, проверку на палиндром.
468 1970591
Можете проверить, правильно ли я рассуждаю?:

Нужно getом забирать данные с бэка пока не придет stop в json
пагинации нет, данные приходят так называемыми пачками (batch)
Тоесть пришел ответ 10000 items, stop:false значит не весь, stop:true может быть когда придет 1000000 items
Понятно что ждать весь ответ не вариант, нужно показать юзеру результат уже из первой пачки

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

Как я думаю сделать:
если фильтр выбран применить его к уже загруженным данным, произойдет ререндер и они отобразятся в соответствии с условиями фильтра, это понятно
но нужно будет также начать применять фильтр к другим пачкам, сразу после загрузки, и только потом показывать данные (чтобы уже отфильтрованные отобразились), пока не знаю как реализовать, но мысль правильная? не подскажешь как лучше сделать? какие еще подводные могут быть?

Нужно сделать на редаксе, еще все покрыть тестами - thunk, если покрывать, слышал, что гемор ужасный, так ли это и почему? А saga типа норм, но с ней дело не имел.
469 1970599
>>70591
если юзер фильтр сбросит чо будешь делать?
470 1970613
>>70591
Сделай полоску загрузки, чтобы юзер понимал что данные не полны, фильтр запрети менять во время подгрузки, опционально кнопку отмены, если запросы рили долгие.
471 1970640
>>70599

>если юзер фильтр сбросит чо будешь делать?


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

>фильтр запрети менять во время подгрузки


Может юзер захочет посмотреть отбор из тех 5тыс. items, что прогрузились (там с фильтрами результат будет 50-200), пока грузятся остальные 50тыс. Такое решение не пойдет - тут именно нужно чтобы моментально смотреть загруженные данные с нужными фильтрами, ничего ждать нельзя.
И вообще, думаю, что первые 5-10 сек. запретить применять фильтр - плохой пример UX в нынешнее время, где все скорость решает. Юзер к конкуренту уйдет, потому что "там не тормозит".
472 1970645
>>70640
У тебя не на сервере фильтрация что ли?
473 1970647
>>70645
Именно так. Фильтрация на клиенте. очень толстый клиент
474 1970651
>>70640
Тормозит не значит долго.
475 1970652
>>70315
Кек. Вебворкер и рендеринг это отдельные потоки.

>>70345

> В этом-то и ссуть, что вкладко-процессы не из-за мифических оптимизаций добавили,


Какая разница? Речь шла о том, что хром использует потанцевал ш5.

> Бля, ты долбоёб. Колбэки как раз насильно заставляют скоупы для замыканий плодить.Если ты конечно не любитель анонимки пихать в колбэки. Но тогда твои пуки про производительность ничего не стоят.


Проиграл с этой хуйни. Зачем мне плодить какие-то там колбеки или промисы? Вся асинхронная работа происходит в разных потоках, вебворкер сам пропукивает пропуки для стейта и тасков.
Для всего остального давно придумали различные реализации реактивности, которые кстати работают на коллбеках в большинстве случаев, тому что ромисы имеют собственную петлю, отличную от коллбеков.

> на заблоченном потоке ты даже воркеров не сможет пропукать.


Зачем пропукивать воркеров? Параллелизм не так работает, пропуки это сообщения между тредами.

>>70438
Им дали вебворкеры для нормальной параллельной асинхронной работы, нет, промисированную псевдоасинхронищу жрать вкуснее. Нахуя нужно чтобы интерфейс без лагов был? Нее, это не про говнокодеров, ща нахуярим.then(чтобы скроллинг лагал).
Пиздец просто.
476 1970663
>>70651
Завернут на код ревью так. Компания дрочит на скорость, как никто другой. Тут уже в первой пачке данных фильтруй нехочу, а ты предлагаешь ждать, чтобы все пришли - уже ПРОСАДКА в эффективности, выражаясь их языком. Недаром бэк так спроектирован - пачками отдавать, наверное.
477 1970683
>>70663
>>70647
>>70591
Генератор фильтра должен быть доступен всегда. Т.е. фильтр генерируется на сервере и отдается клиенту, клиент может начать фильтровать не имея данных вообще.
Как клиент, так и сервер имеет свой экземпляр фильтр, который синхронизируются между клиентом и сервером.
Данные фильтра и сами данные идут двумя отдельными запросами.
Алсо, сейчас пишу json-фильтр с байтовым потоком и байтоебством, может покажу потом что вышло и какяэтавижу.
478 1970690
Я не понимаю рекурсию
479 1970695
>>70690
Костя Базров научит тебя рекурсии. Лучший учитель имхо
480 1970696
>>70683

>фильтр генерируется на сервере и отдается клиенту


Анон, условия придумываю не я. В своем ОП-посте я их изложил. Или я не так тебя понял?
Фильтрации на бэке нет, отдаются пачками данными.

>клиент может начать фильтровать не имея данных вообще


Да, именно. Врубаешь фильтр(ы), к данным которые пришли он применяется, потом рендерится.
481 1970698
>>70652

>Какая разница? Речь шла о том, что хром использует потанцевал ш5.


Потанцевал в память срать? Вроде ты тут над байтиками трясёшься, но при этом защищаешь всирание памяти браузером.

>Вся асинхронная работа происходит в разных потоках


Ты дебил или вкатыш?

>вебворкер сам пропукивает пропуки для стейта и тасков


Ух какой волшебный воркер, ничего не делаешь, а всё есть. Ты на синтаксис его инициализации, вызова и взаимодействия посмотри, дебил блять.

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


Это не из-за какой-то волшебности колбэков, которые кстати срут ненавистными тобой замыканиями, а потому что эти либы были написаны до промисов.

>Нахуя нужно чтобы интерфейс без лагов был? Нее, это не про говнокодеров, ща нахуярим.then(чтобы скроллинг лагал).


Ты случаем не из пыхатреда? Скроллинг у тебя и на генераторах, и на колбэках будет лагать, и даже на воркере, у которого кстати доступа к дому нету. Нормальный многопокпок у него на воркерах, одна история охуительней другой.
482 1970700
>>70696

> Или я не так тебя понял?


Не, всё верно, я предлагаю въебать фильтрацию и на беке и на клиенте.

> Анон, условия придумываю не я.


Так возьми и придумай. Скажи "птсс, если на беке будет фильтрация, то производительность будет в тысячу раз лучше и денег будет меньше".

> Да, именно. Врубаешь фильтр(ы), к данным которые пришли он применяется, потом рендерится.


Не, смотри. Ты берешь полный набор данных, которые есть на беке. И генерируешь фильтр. И отсылаешь его на клиент. Т.е. фильтр уже сгенерирован будет и клиент уже может щелкать по клавишам, пока данные только идут.
А новые данные просто проходят через существующий фильтр, когда они приходят на клиент. Можно на каждый пакет данных навесить хэш фильтра, чтобы знать применялся к ним конкретный фильтр или нет. Если эти пакеты хоть как-то структурированы, офк.
483 1970703
Анусы, делаю в одном файле export default {a, b}, в другом import {a, b} from хуй. И не работает. Я понимаю, что это не по спеке, но в вебпаке это работало раньше точно т.к. он это превращал в простой var {a, b} = webpack_module_import(). А теперь не работает. Это новая версия пофиксила и детектит, когда я пытаюсь сделать named import из модуля, где только дефолтный есть, или я где-то проебываюсь?
484 1970709
>>70703
Делай именованные экспорты и не выёбывайся.
image.png90 Кб, 891x568
485 1970714
Функция конвертирует обычные цифры в римские. Рейтаните
486 1970720
>>70709
Но их не я делаю, css-loader с modules: true
487 1970725
>>70720
Значит создавай тикет в репе вебпака/лоадера.
488 1970726
>>70725
А надо ли? Я помню, что это работало, а сейчас хз, может это я просто в конфиге где-то проебался. Кто кодит с вебпаком и модулями, у вас получается имена классов как named export импортить?
489 1970729
>>70700

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


Я что-то не раздуплюсь - если на бэке нет фильтра, почему на фронте только не использовать этот подход? Ну тоесть фильтр не выбран - все так и остается - данные рендерятся в порядке, как на бэке они, выберешь фильтр - загруженные данные фильтруются, происходит перерендер, новые через фильтр проходят; если не загружено ничего, а клиент успел щелкнуть по фильтру, соответственно данные проходят через фильтр прежде чем отрендерятся.
490 1970731
>>70698

> Потанцевал в память срать? Вроде ты тут над байтиками трясёшься, но при этом защищаешь всирание памяти браузером.


Что за хуйню ты несешь блядь каждый раз? Речь была про распределение жс по ядрам. Какая память, блядь?

> Ты дебил или вкатыш?


> Ух какой волшебный воркер, ничего не делаешь, а всё есть. Ты на синтаксис его инициализации, вызова и взаимодействия посмотри, дебил блять.


Сказать-то что можешь или только жидко пукать?

> Это не из-за какой-то волшебности колбэков, которые кстати срут ненавистными тобой замыканиями, а потому что эти либы были написаны до промисов.


> эти либы были написаны до промисов.


> до промисов


Ахах. Дебил, блядь, промисовый, промисы 9 лет в либах существуют и 6 лет как стадарт.

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


Промисовый, смотри.
Основной поток - для рендера, чтобы UI не лагал никогда. Асинхронные потоки - для асинхронных событий.
Доступно излагаю?
491 1970736
Аноны, вот у нас для вызова API использовали XMLHttpRequest, потом для облегчения JQuery, теперь fetch, а что использовали и используют для этих целей в PHP? Раньше file_get_contents а теперь curl_init? Я всё правильно нагуглил?

А как они поступают если нужно получить данные сразу с нескольких API и вывести в нужном порядке? То есть если 1 API недоустпен - вывести данные со 2API и т.д.
492 1970745
>>70731

>Что за хуйню ты несешь блядь каждый раз? Речь была про распределение жс по ядрам. Какая память, блядь?


Нести хуйню про ядра начал тут ты, потому что обосрался. Я тебя просто поправляю.

>Сказать-то что можешь или только жидко пукать?


То есть ты вообще не понимаешь, что несёшь полную хуйню.

>Ахах. Дебил, блядь, промисовый, промисы 9 лет в либах существуют и 6 лет как стадарт.


Ну да, ведь либы стали писать ещё до стандартизации промисов, да?

>Основной поток - для рендера, чтобы UI не лагал никогда. Асинхронные потоки - для асинхронных событий.


Это у тебя в пыхопитоне такое разделение? Пиздуй-ка обратно в свой загон, нам жабадебилов с ООП головного мозга и так хватает.
493 1970749
>>70736
Ты вообще про что? На клиентской стороне ты всё так же фетчем можешь запрашивать, а на ноде фетча и не было, кроме отдельного пакета.
494 1970750
вас-саляму алейкум братья, кто знает, в рамадан харам код на reacte писать ? Если да, то на чистом JS можно ?
495 1970751
>>70750
Только на brainfuck'e, транслируемом в es3
496 1970755
>>70749

>Ты вообще про что?


Про то что как на PHP парсят API, с помощью file_get_contents и curl_init? Больше способов нет?
497 1970767
>>70652
Ты долбоёб братишка, промисы делают код читаемым и понимаемым то есть редактируемым и поддерживаемым, чо у тебя там лагает выброси свой пентиум и купи компьютер.
498 1970768
>>70714
на codewars заценят
499 1970770
>>70640
храни нефильтрованое фильтруй в рендере хули ты изобретаешь там
500 1970772
>>70745

> Нести хуйню про ядра начал тут ты, потому что обосрался. Я тебя просто поправляю.


Распределение вкладок по ядрам есть? Есть. Дальше пошли твои маняманевры и подрывы.

> То есть ты вообще не понимаешь, что несёшь полную хуйню.


Ну так поясни и не пукай. Но ты не можешь, потому что очевидно хуйню несешь ты.

> Ну да, ведь либы стали писать ещё до стандартизации промисов, да?


Не, либы которые я использую написаны в 2019.

> Это у тебя в пыхопитоне такое разделение? Пиздуй-ка обратно в свой загон, нам жабадебилов с ООП головного мозга и так хватает.


Это разделение не_у_говнокодеров, мань. И нужно чтобы поток UI не лагал, как у говнокодера.

>>70767
Ох уж эти проблемы говнокодеров, которые писать не могут без промисов. Ору нах
34896523957.png13 Кб, 862x129
501 1970774
502 1970791
>>70772

>И нужно чтобы поток UI не лагал, как у говнокодера.


Братишка, даже там, где для распаралеливания уже за тебя сделано всё, и у тебя есть и потоки, и удобные абстракции над ними из коробки, и возможность распаралелить каждый пук от парсинга жсона и его вставки в базу до подсчёта высоты текста в UI (и даже возможность паралелить рендеринг UI!!!, хотя и не из коробки, и получать 120 фпс на ебаном айфоне 4с, хуяря код в декларативном стиле на флексбоксе) все всё делают в главном потоке нахуй.

Просто ирл всем тупо похуй, такие вот объебосы (а их большинство) берут самый медленный лэйаут, прикованный костылями к главному треду, парсят жсон на мэин треде, там же ходят в базу и пишут в/читают с бд там же — и у всех отмазки уровня "ну бизнесу жи нормальна, когда ебать начнут тогда и начну шевелиться", и потом у нас 4 из 5 приложений лагают на ровном месте как говно, лол.

мимо-айосер-увидевший-пост-на-главной
503 1970792
>>70791
К чему я это — просто забей на этих долбоёбов и расслабься, твоё портфолио если будешь всё делать качественно всё равно тебя протащит вверх через них, лол.
504 1970805
>>70792
Двачую.

мимокрок потратитл время на вылизывание всех своих пет-проектов перед собесами, после чего успешно был принят на галерку
505 1970809
Мне лень читать весь тред, объясните, о чем срач. Кто вообще воркеры использует для чего? Я думал это для долбаебов, которые хотят протеины на жсе во фронте вычислять или ещё такую другую тяжелую хуйню. А почему бразуеры вообще не делают параллельный тред для всего, кроме работы с DOM'ом, нахуй все эти воркеры?
506 1970811
>>70792

> просто забей на этих долбоёбов и расслабься


Да и так сижу проигрываю над этой хуйней. Отрицание вебворкеров, лол, ну и пиздец.

> твоё портфолио если будешь всё делать качественно всё равно тебя протащит вверх через них, лол.


Предлагали уже купить проекты из портфолио, правда с полными правами. Планирую сделать полноценную CMS и продавать их тащемта, отличный запасной план если другие проекты будут хуево денег приносить
507 1970814
>>70809

>А почему бразуеры вообще не делают параллельный тред для всего, кроме работы с DOM'ом, нахуй все эти воркеры?


Потому что это нихуя не тривиальная задача, мозилла пыталась это дело ресёрчить https://ru.wikipedia.org/wiki/Servo_(движок) , но новая директор_ка закрыла этот проект нахуй, поэтому всё надо будет делать руками ближайшие 5-10 лет.
508 1970820
509 1970829
>>70690
Анон доходчиво объяснял >>1970829
510 1970830
>>70829
У меня от таких объяснений Uncaught RangeError: Maximum call stack size exceeded
511 1970896
>>70772

> не могут без промисов


а зачем мне писать без них?
512 1970901
>>70896
Чтобы у нанооптимизатора интерфейс на 2мс не подвис из-за того, что ты джейсон в основном треде парсишь.
513 1970913
>>70772

>Распределение вкладок по ядрам есть? Есть. Дальше пошли твои маняманевры и подрывы.


Распределение вкладок по процессам, дебилоид. И распределили их не с целью, чтобы i5 использовать по полной.

>Ну так поясни и не пукай. Но ты не можешь, потому что очевидно хуйню несешь ты.


Что тебе пояснять если ты хуйню несёшь? С тобой и так всё понятно.

>Не, либы которые я использую написаны в 2019.


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

>Это разделение не_у_говнокодеров, мань.


Это разделение в твоём мирке, не имеющее отношение к движку.
>>70809

>А почему бразуеры вообще не делают параллельный тред для всего, кроме работы с DOM'ом, нахуй все эти воркеры?


Потому что полное распараллеливание - рэйс кондишн через рэйс кондишн.
514 1970914
>>70809
Воркеры это просто потоки. Ньюфаги, и всяческого рода поехавшие, думают что асинхронное событийное погроммирование не блокирует поток js, но на самом деле он блокируется в момент исполнения промиса. В итоге - лаги интерфейса и всё такое. асинхронщина нужна для работы с несколькими внешними интерфейсами, но это редкий случай микросервисов/внешних сервисов
Чтобы подебить эти проблемы блокирования, придумали вебворкеров - отдельные потоки для интерфейса, ядер, сети, всего i/o в целом. Это всё уже давно используется (нет) на нативе, с недавнего времени и в вебе (нет).
Самый шик это конечно servo. Но это уже будущее нахуй, которое успешно проебали. Сообщество js и веба уже глубоко консервативно, монополизировано и обоссано шизоидами, никаких изменений не намечается, анон >>70814 писал уже. Даже фреймворки с многоядерной работой на вебворкерах это редкость.

>>70896
Чтобы не быть говнокодером, очевидно.

>>70901
Почему нельзя просто писать нормальный код? Неужели это настолько сложно?
515 1970917
>>70913

> Это разделение в твоём мирке, не имеющее отношение к движку.


На самом деле вебворкеров не существует?
Ты таблетки забыл принять.
516 1970923
>>70914

>Неужели это настолько сложно?


Да, я не хочу учить воркеры, эти их ебанные send, onmessage, или как там они сообщениями меняются. Каждый выпук делать как обработчик событий, ну ебаный в рот, мне так лень. И нахуя? Даже на моем некропк почти не лагает ни один сайт, кого ебет, что там 50мс жс какой-то занял, люди это даже не замечают.
517 1970951
Аноны хочу сделать на сайте функцию закладок которые будут храниться в локалсторейдж, я так понимаю мне надо сделать кнопку в каждой новости которая будет сохранять айдишник, название и ссылку на новость в массив, который мне надо будет конвертировать в строку и хранить в значении в локасторейдж, и на специальной странице конвертировать эту строку обратно в массив и через цикл выводить его значения, всё так?

Я скрипт-то уже написал, так вот, массив получается вида
{
['id25', 'name25', 'url25'],
['id7', 'name7', 'url7'],
['id52, 'name52', 'url52']
}

Как видно айдишники в разброс, но блять после их парсинга из локасторейдж и привидения в массив они сука сортируются по айди и выводятся не сперва новодобаленные закладки, а по номеру айди, что за прикол какого хуя и почему так происходит?

Конвертирую их в строку с помощью JSON.stringify(), а обратно в массив с помощью JSON.parse(), я всё понятно объяснил? Как заставить их храниться и выводиться новые в начале, старые в конце?
518 1970956
>>70951
Немного проебался с описанием массива, он выглядит вот так
{
25:['id25', 'name25', 'url25'],
7:['name7', 'url7'],
52:['name52', 'url52']
}
И сортируется по цифрам при добавлении новой новости и парсинге его в строку или обратно для вывода на странице закаладок, заебал уже
519 1970960
>>70951
Хэш таблица - не упорядоченная структура данных, почему ты обратного ожидал?
Хочешь порядка - храни в упорядоченной, массиве
520 1970975
>>70960
Не понял немного, как понять упорядочанный массив?

Сейчас ещё раз потыкал скрипт и понял что вся проблема в моменте добавления новости в массив, я это делаю так
bookmark[5] = ['name5', 'url5']
И о чудо эта хуйня добавляется в начало как с самым маленьким айди, а не в конец как самая последняя добавленная, я так понимаю проблема в этом, я неправильно добавляю новое значение в массив или нужно отказаться от айди? Тогда я не вдупляю как добавлять новое значение, просто кидая его в начало или конец массива
521 1971009
>>70923

> учить воркеры


Проиграл
522 1971010
Аноны перефразирую вопрос закладки на localStorage

Есть массив который я паршу туда и обратно с помощью JSON.stringify() и JSON.parse() чтобы сохранить его как строку в localStorage, в массиве хранятся айди новости, название и ссылка на новость, массив получается вида

{
25:["name25", "url25"],
7:["name7", "url7"],
52:["name52", "url52"]
}

Добавляю новые данные я туда вот так

bookmark[5] = ['name5', 'url5']

После таких действий он автоматически сортируется по айди и получается вида

{
5:["name5", "url5"],
7:["name7", "url7"],
25:["name25", "url25"],
52:["name52", "url52"]
}

Как мне добавить новую новость ["name5", "url5"] в конец, я реально запутался пиздец, айдики можно тоже во внутрь убрать, типа ["id5", "name5", "url5"], то есть в итоге после добавления новой новости в закладки должно получиться

{
["id25", "name25", "url25"],
["id7", "name7", "url7"],
["id52", "name52", "url52"],
["id5", "name5", "url5"]
}

Но как это сделать? Как сделать добавление нового значения без указания айди типа bookmark[n] =
522 1971010
Аноны перефразирую вопрос закладки на localStorage

Есть массив который я паршу туда и обратно с помощью JSON.stringify() и JSON.parse() чтобы сохранить его как строку в localStorage, в массиве хранятся айди новости, название и ссылка на новость, массив получается вида

{
25:["name25", "url25"],
7:["name7", "url7"],
52:["name52", "url52"]
}

Добавляю новые данные я туда вот так

bookmark[5] = ['name5', 'url5']

После таких действий он автоматически сортируется по айди и получается вида

{
5:["name5", "url5"],
7:["name7", "url7"],
25:["name25", "url25"],
52:["name52", "url52"]
}

Как мне добавить новую новость ["name5", "url5"] в конец, я реально запутался пиздец, айдики можно тоже во внутрь убрать, типа ["id5", "name5", "url5"], то есть в итоге после добавления новой новости в закладки должно получиться

{
["id25", "name25", "url25"],
["id7", "name7", "url7"],
["id52", "name52", "url52"],
["id5", "name5", "url5"]
}

Но как это сделать? Как сделать добавление нового значения без указания айди типа bookmark[n] =
523 1971024
>>71010

>массив получается вида


>


>{


>25:["name25", "url25"],


>7:["name7", "url7"],


>52:["name52", "url52"]


>}


>


Это объект
524 1971055
>>71009
Ну там ебаные onmessage и прочее
image.png9 Кб, 293x264
525 1971070
>>71024

>Это объект


Да анон так и есть, просто я сходу не вспомнил, давно уже не баловался JS

>>71010
Бля аноны нашёл на learn.javascript

>Упорядочены ли свойства объекта? Другими словами, если мы будем в цикле перебирать все свойства объекта, получим ли мы их в том же порядке, в котором мы их добавляли?



>Короткий ответ: свойства упорядочены особым образом: свойства с целочисленными ключами сортируются по возрастанию



То есть эта хуйня и правда сортируется по номеру или алфавиту при добавлении новых свойств в объект, я проверил даже, как обойти эту хуйню? Чтобы новые свойства добавлялись в начало или конец как мне нужно?
526 1971072
>>71070

> Чтобы новые свойства добавлялись в начало или конец как мне нужно?


Это объект, у него нет начала или конца. Вставляй ключ order в котором будет именно массив а не ебаный объект с idшками упорядоченными.
image.png10 Кб, 412x205
527 1971078
528 1971093
Аноны, а например есть массив

test = [a, b, c]

Как удалить значение с ключём 1? То есть элемент b? Задать ему пустоту?

test[1]=""?
529 1971094
>>71093
test.slice(0,1).concat(test.slice(2));
530 1971147
>>71093
let [a, c] = variable
531 1971154
function updateDOM(providedData = data) {
...
}

Аноны, что это за синтаксис в аргументе? Что за присваивание? Причем эта функция в коде везде вызывается вообще без аргументов.
532 1971171
>>71154
Default parameters
533 1971233
React-Redux гуру помогите.
Не могу понять откуда ебаная вложенность в стэйте.
534 1971234
Аноны, пиши в этот тред а не тематический пушто вы мне как родные стали. Позвали на обучение в дата саенс. Прошел собес. Нужно знать питон а ЖС все что я знаю. Но по шпаргалкам худо бедно быстренько подтянул питон и прошел первичный отбор. Дальше будет обучение а потом экзамен. Стоит ли браться за это учитывая что знаю хуево как питон так и математику но могу быстро подтянуть
15282252352360.jpg205 Кб, 900x825
535 1971249
>>71234

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

image134 Кб, 512x512
536 1971256
537 1971259
>>71234
Вот почему корзины такие не решительные? Вот блять твою судьбу должен рандомный человек решить?

Иди если бесплатно, хоть опыт получишь, не понравится сделаешь вывод - на бесплатные кормушки семинары больше не ходить, понравится - так наоборот больше профита поимеешь.
538 1971264
>>71234
Что-то мне подсказывает, что подтягивать питон и математику немного ахуеть какие разные вещи)
539 1971328
>>71233
Ты ее сам создал, напиши типы
540 1971336
>>67628
впиливать тесты в имеющийся проект - ебала редкостная. нужно ТДДшить новые компоненты и писать тесты которые проверяют не ебнется ли старый функционал от выполнения нового. иначе как девелопер ты не сможешь девелопить, а портратишь месяц-два на покрытие тестами того, что кое-как, но работает уже.

если не дали спеку, что должен делать тот или иной легаси компонент, можешь посылать нахуй смело - как ты учтешь все кейсы без четкой спеки? написать 9 тестов к примеру займет полдня, но не будет учтен крит какой-то и компонент все равно попадает/некорректно обработает, полдня потрачено, а баг живой и здоровый

мне ТДД сэкономил много времени и нервов, но это не марксизм-ленинизм per se, а Госплан скорее - без четкого соотношения задач и имеющегося продукта - это хуета, а не Госплан

мимо сеньор-помидор 4.5К/мес
sage 541 1972014
Я ТУПОЙ И ЕБУСЬ В ГЛАЗА?

Какого хуя мне пустой массив возвращает рекурсия?

function z(ls) {
const result = [].concat(ls)
if(ls.length === 0) {
console.log("kakogo xyia");
return result;
}
return z(ls.slice(1));
}

console.log(z([0, 1, 3, 6, 10]))
sage 542 1972019
>>72014
Отбой, понял что я тупой.
543 1975059
>>71336

>впиливать тесты в имеющийся проект - ебала редкостная


Это единственное средство зафиксировать стабильное поведение программы в свете надвигающегося рефакторинга.
544 1975773
>>75059

ну если рефакторинг по шаблону strangler, или как его там, делаеш, и большинство компонентов будет переработано, то конечно имеет смысл. если иметь какую-никакую версионность параллельную, то от версии к версии можно тест-базу наращивать.
545 1977066
Сколько времени нужно уделить на верстку? Кто-то говорит, что 10 дней - дохуя, а другой говорит пару месяцев потратить минимум. ГДЕ ПРАВДА?

мимогречневый
546 1977168
>>77066
на верстку чего?
547 1977183
>>77168
На изучение верстки перед вкатом в JS
548 1977210
>>77183
на верстку чего?
Стикер191 Кб, 512x512
549 1977913
>>77183
Пара месяцев это точно минимум. Уверяю тебя, что ты не выучишь прямо всё по части css и html. Чуть больше базы освоишь, а все остальное узнаешь с опытом и временем
550 1978581
>>77913
Спасибо анончик, добра тебе
551 1983021
Mobx
Стикер191 Кб, 512x512
552 1983026
553 1983937
mobx
554 1984071
>>77913
Иногда вижу сайты, где все элементы абсолютно позиционированы, так что там
1. нихуя не сдвинуть
2. высота НУЛЬ

цвета, шрифты, паддинги - все ок. Но что было в голове у человека, который гвоздями приколачивал блоки (и не к родителю, а к странице, т.к. все топ-лефт-райт от края экрана вплоть до top 1200px)...хм...
555 1986590
mobx
556 1988155
>>86590
Франтент-макак плиз
557 1988183
>>88155
А тут сидят другие?
558 1988189
>>88183
Вы проебали мое уютненькое программирование, никаких инженерных принципов, никакого желания учиться, из-за вас JS считают говном не за настоящие его слабые стороны, а из-за качества выполнения задач.

Про то, что половина из вас хачи, хохлы и фемки - я молчу.
Стикер127 Кб, 512x512
559 1988195
>>88189

>Про то, что половина из вас хачи, хохлы и фемки - я молчу.

560 1988484
xstate
Тред утонул или удален.
Это копия, сохраненная 20 мая 2021 года.

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

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