Двач.hk не отвечает.
Вы видите копию треда, сохраненную 18 июня 2018 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
15213165999650.png93 Кб, 619x619
JavaScript thread #1e2+2 # OP 1167958 В конец треда | Веб
Ссылка на прошлый тред: >>1157660 (OP)

Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.

Часто задаваемые вопросы: https://github.com/vladimir37/js-thread/blob/master/Wiki/faq.md

Список материалов для изучения: https://github.com/vladimir37/js-thread/blob/master/Wiki/learn.md

Список инструментов и направления JS-разработки: https://github.com/vladimir37/js-thread/blob/master/Wiki/tools.md

Конфа /pr/ в Slack: https://slack-2chpr.herokuapp.com/

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
2 1167962
Ты СОВЕРШЕННО не понимаешь в чем суть JS. JS это не раби «о, привет чуваки, зацените я слепил три гема и получился блог, гыгы». JS это не псевдофункциональный код питона. JS это не C#, Джава или ПХП. JS это язык, на котором люди могут побыть программистами-творцами — ужасными, поехавшими, ненормальными чудовищами, которыми они на самом деле и являются.

Добавили промисы, а мы смеемся. Присыпали сахаром прототипы и назвали классами, а мы смеемся.

Три тимлида прыгнули с крыши 16-этажного дома, взявшись за руки после попытки разгрести код с тридцатикратной вложенностью, а мы смеемся и просим еще. Промисы, колбэки, асинки/авайты — мы смеемся. Модульность, асинхронность, непрерывная интеграция, юнит-тестирование, key-value хранилища, два десятка фреймворков на любой вкус — мы смеемся. GitHub позволил писать приложения на десктопе, запихивая в каждый хеллоуворлд отдельный браузер — мы смеемся. Мы бездушно подпишемся под чем угодно, наши предпочтения не основаны на здравом смысле, бесцельные споры — наша стихия, мы — истинное лицо современного IT.
3 1168102
>>67958 (OP)
Существуют ли функции для деления и отнимания больших чисел в виде строк,
как например вот эта: https://jsfiddle.net/mtsL1k2x/5/
Можно ли написать так же кратко, используя какой-то быстрый алгоритм рассчёта?

У меня есть ещё функция для перемножения чисел, если хотите - дам.
Это - длинная арифметика.
Интересуют алгоритмы быстрого вычитания длинного большего от длинного меньшего,
с целочисленным положительным результатом,
а также алгоритм быстрого деления с остатком - с целыми числами в результате
или же нулём, если остатка нет.
Я знаю, что есть BigInteger, но инклюдить его не очень хочется,
а перелопатить код, чтоб найти функции долгое и нудное занятие. Они могут зависеть от других.
А в ссылке, что я закинул сюда - там лишь две простые функции.
4 1168202
Аноны, а поясните за node.js есть будующее у ентой хуевины?
5 1168206
>>68202
Так спрашиваешь, словно она вчера появилась.
Ей уже 10 лет. И она постоянно развивается.
6 1168215
>>68202
ты что, ебан?
7 1168216
>>68215
Почему вы спрашиваете?
8 1168219
>>67958 (OP)
Насколько сложно найти бекендовую работу за 10$ в час на node.js?
При этом без знания либ.
9 1168272
>>68219
Всмысле работу на ноде без знание ноды?
10 1168336
>>68272
Без знания всяких ангуляров, докеров, вебпаков и прочей херни.
11 1168390
>>68219
Если есть проектик нормальный на ноде с экспрессом на гх и знание ес6, то думаю за месяц легко найти.
12 1168412
>>68336
Если ты хочешь выучить что-то одно и сидеть на жопе ровно, ты явно ошибся профессией, или как минимум технологией.
13 1168481
Где найти код дефолтных событий браузера? Хочу посмотреть дефолтную реализацию onSubmit для разных форм и не могу найти - гугл выдаёт всякие учебники и обработчики событий от васянов.
14 1168508
>>68481
v8 гугли
15 1168565
>>68508
v8 это не браузер. он не реализует никаких onsubmit, даун.
sage 16 1168570
>>68565
Ты мне это в лицо сказать сможешь, чмо? А то в интернете-то вы все смелые, герои блядь комнатные.
17 1168605
>>68565
v8 за всю работу дома отвечает и просто закидывает в очередь эвент лупа онклики и прочее говно, которые потом входят в стэк вызовом колбэков. (я себе всегда это так представлял)
18 1168606
>>68565
если найдешь что скинь в тред, тоже интересно
19 1168618
>>68606
Да у вас же и всплывало, вроде бы. https://www.youtube.com/watch?v=8aGhZQkoFbQ
20 1168684
>>68605
v8 отвечает за эвентлуп, а не за дом.
дома в v8 нет и никогда не было.
алгоритм обработки форм дома описан в сорцах компонентнов браузера отвечающих за дом.
v8 это js-engine, а не дом.
21 1168685
>>68570
Могу и ебало тебе разбить, если хочешь.
22 1168962
Антоны, посоветуйте нормальный видео курсы или книги по js, чтобы потом было легче вкатиться в react native. Если вкатываться в react native то нужно ли знать html и css?
23 1169029
>>68685
Снимите уже номер петушки.
24 1169050
>>68962
Иди нахуй.
25 1169057
>>68962
Поднасру макакичам в тред
https://developer.mozilla.org/ru/docs/Learn/Getting_started_with_the_web/JavaScript_basics жмешь далее, далее, далее пока не закончишь. Примеры можешь тестировать на codepen.io.

> нужно ли знать html и css


html не нужен, CSS только подмножество. Вкатишься на примерах, не ссы.
26 1169104
Анон, помоги, как реализовать функцию __extends в примере ниже. Я так понимаю она должна работать как расширение классов в ES6, но как это реализовать отдельной функцией?
https://repl.it/repls/StarryJudiciousLoopfusion
27 1169182
>>69104
Господи какой пиздец этот пример. Я один охуеваю от этой разметки, именования функций, стиля их объявления?
Captured1.png20 Кб, 1280x784
28 1169229
>>69182
Но это же стиль плюсов и джавашарпов... табами надо было отбивать, тогда бы легко читалось.

Что же косаетьса функцiи — здесь имелося в виду вот чо новерн))
30 1169431
Недавно вкатился в этот ваш жаваскрипт(после статически типизированных языков) и мне очень непривычно. Я забываю просто какие проперти у какого объекта или класса есть, какого типа аргументы какая-то моя функция принимает(а иногда это должен быть какой-то класс), ну и так далее в том же духе. Про всякие функции и обжекты из других библиотек я вообще молчу, это же пиздец - вот есть какой-нибудь getZalupa(hui, mocha) который принимает хуй знает что и возвращает хуй знает что, и вместо того чтобы за 1 секунду навести курсор на эту функцию и посмотреть типы мне надо лезть в документацию и смотреть что там оно принимает и что возвращает, и какие проперти у того и другого есть и зачем оно вообще нужно. Это не жава, в которой я иногда вместо просмотра документации начинал просто писать примерно первые буквы слова которое связано с тем что мне надо и так наугад находил нужную мне вещь.

Это я что-то не так делаю или надо просто привыкнуть к этому пиздецу? Или даже не привыкать, а использовать что-то статически типизированное, тайп скрипт какой-нибудь?
31 1169433
Нидхелп

Как уронить WebWorker? Именно уронить, crash, а не просто вогнать в бесконечный цикл.
Хочу понять, упадет ли его родитель, и если да, то до какого колена.

Пробовал выделять овердохуя памяти в нем, нихуя не происходит. Эффект аналогичен бесконечному циклу, в какой-то момент он просто перестает отвечать на сообщения, но падать не падает.
32 1169436
>>69431
Ты писал не на языке, а на IDE.
Если довольно долго, то считай, что ты уже профдеформирован. Дальше сам выбирай. Вряд ли динамика для тебя. Программист на форте везде будет писать на форте. Ты везде будешь искать статичность и автокомплит. Соответсвенно и выбирай инструменты аналогичные - типизированые трансляторы, типизированные статичные библиотеки, без мета-магии, и вот это всё.
33 1169442
>>69431
А, ну и алсо, js это современный ассемблер, просто для более высокго уровня абстракции. Вот и думай. Писал бы ты на асме под аппаратуру, откуда бы брал себе автокомплит. С js-ом тоже самое. Это встраиваемый язык, и его возможности диктуются окружением. Так что на TS ты писать конечно можешь, но вот можешь ли ты писать на TS, например под Автокад?
34 1169537
Помогите пожалуйста! Как заставить эту поеботину работать? Я понимаю что тут с областью видимости проблема, но не понимаю как исправить.

https://repl.it/repls/SparklingStridentUtilities
35 1169540
>>67958 (OP)
А тут можно по ангуляру вопросы задавать или потребуется пройти в другое место?
Screenshot2018-04-07-18-33-59.png252 Кб, 1440x1524
36 1169564
>>69537
Проблема не с областью видимости, а с контекстом вызова функций, то есть this.
Когда ты в showItems вызываешь форматтер, ты ему напрямую указываешь, что вот твой контекст, работай в нём. Он такой окей, понял. А когда ты вызываешь его через show, ты уже не говоришь передаваемой функции, в каком контексте работать. В итоге этот контекст проебался.
Последний способ не работает, потому что ты передаёшь в параметре уже вызванную функцию, и в show в итоге пришла строка, которую вернула передаваемая функция, и show такой: "и хуле ты от меня хочешь, строку вызвать? Ты шо ебобо?"

Решение - передавать контекст дальше внутри show. Тогда функция будет указывать, что принятому аргументу нужно выполниться в контексте этого show.
37 1169638
Блед, куда response делся
38 1169809
Анонеймы, молю помогите.
Проебываю понятие callbackов, из-за этого не понимаю суть работы map, reduce, for each и т.д. Гуглил - нихуя не понял. Смотрел видосы на ютабе - нихуя не понял.
Где еще можно почитать/посмотреть чтобы понять?
39 1169811
>>69809
Я тоже не понимаю это слово, но оно и не нужно совершенно. Map и проч. очень элементарно работают. Тупо функция принимает в кач-ве параметра другую функцию. Возможно это и есть колбэк.
40 1169820
>>69811
Да, это и есть колбек. Но блять в моей тупой голове не укладывается суть работы функции которая в качестве параметра принимает другую анонимную функцию.
41 1169823
>>69820

>функция(данные, чтоСделать)


>чтоСделать = функция(данные)

42 1169828
>>69820
Что сложного блядь.
Представь, что ты землекоп.
Копаешь траншеи. Сколько скажут столько и копаешь. Вот отсюда и до обеда.

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

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

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

Пиздец просто, принцип проще некуда. Весь мир на нем построен. Что не ясного.
43 1169831
>>69828
АААА СУКА, ПОНЯЛ. Я как бы передаю в параметр уже готовое значение какое-то которое возвращает функция которая собсна в параметр передана.
44 1169833
>>69831
нет ты сука совсем тупой
45 1169837
>>69828
функция внутри функции. пиздец. Только вот начал читать про жс, охуеваю с переменных пока что.
интерересно расписал.
46 1169841
>>69837
Она не внутри функции. Внутри функции это уже не коллбэк, а замыкание.

Коллбэк это самодостаточная функция. Ты ее можешь и просто так вызвать сам, а можешь и передать куда-то.
47 1169861
Почему жс не обновлялся уже 8 лет?
image.png26 Кб, 465x383
48 1169864
>>69841
Хорошо, а как тогда вызывать функцию внутри функции?
49 1169868
>>69864
Так же, как если ты хочешь например питаться не через пищеварительный тракт, а закладывая еду прямо в желудок себе.
50 1169870
>>69864
Неужели тебе не очевидно, что к моменту когда ты пытаешься вызвать ss в своем fq = ss(..) функция ss уже не существует вообще? Это не говоря о том, что в той области видимости ее и не существовало никогда, но это ладно. Я о том, что вы когда код пишете - вы наугад ебашите, не приходя в сознание? Не пробовали побыть интерпретатором и по шагам выполнять то, что вы написали? Вас как детей надо, чесслово, ставить в круг, и играть в игру аля-крокодил, давая каждому задачу - вот ты переменная, ты функция, ты вот число, ты вот поток выполнения, давайте посмотрим, что тут происходит.

Просто катастрофический дефицит абстрактного мышления у вас, товарищи.
image.png98 Кб, 371x340
51 1169871
>>69864

> как тогда вызывать функцию внутри функции


очевидно, пробросив туда, откуда ты хочешь ее вызвать, как и все остальное, что ты пробрасываешь

как обратиться к f внутри mult ты же додумался. почему дальше твоя думалка думать не смогла?
52 1169924
t
53 1169926
>>67958 (OP)
я знаю, почему у тебя не будет детей.
15204322716150.jpg47 Кб, 640x387
54 1169964
>>69229

>mcedit



Пиздец кокойты.
55 1169999
Есть оиба, который можно рисовать связи? Например есть два дива с текстом, на одном я кликаю и тащу стрелку до второго.
56 1170023
>>69999
Такое обычно рисуют на канвасе, а не на дом-нодах. Если вместо дивов готов рисовать все на канве, то изи какой-нибудь d3 или что-то было. Гугли по js graph visualization
57 1170025
>>69999
на хаскеле ебани
58 1170042
Аноны, есть тут кто шарит в промисах? поясните какого фига в results пушится не сразу, а только в конце? Откуда он знает что будет последний then?
И что вообще записывается в chain?
http://plnkr.co/edit/pzWpd9418pnVJxlvK4SV?p=preview
59 1170048
>>70042

>какого фига в results пушится не сразу


сразу.
60 1170065
>>70048
Нет
61 1170135
>>67958 (OP)
Есть ли в node.js профилирование и перфоманс тесты?

Можно ли например сохранить джейсонину и загрузить в гуй хрома?
62 1170191
>>69182

>30 сьрок кода


>Какие-то проблемы уже тут.


Ясн.
63 1170278
Вы, девочки, хотя бы в курсе, что JS - не язык программирования?
64 1170317
Так я и не могу понять как работают мап, редюс и форич и вообще колбеки сами.
65 1170338
>>70278
Опа. Дай угадаю, ты обоссаный джавист или обдрыстаный питонист? Вернись в свой курятник.
66 1170347
>>70317
Ладно, еще раз поясню по хардкору

function НарубитьДрова (дрова, function Рубить(бревно) {Топор = new Топор(); Топор.рубить(бревно);} )
{
for (бревно in дрова)
Рубить(бревно);
}
67 1170355
Т.к я очень тупой, сухой формат Кантора иногда бьет по голове даже после 10ого перечитывания главы.
Может есть книга где более на пальцах разъясняют?
Я, как и все дебилы из фронтенд треда привык к курсам от хтмлакадемии, где объясняют для аутистов полнейших, тяжело вкатиться так резко в сухую литературу (а что будет когда документацию читать буду вообще не понимаю, наверное повешусь или в дворники вкачусь в итоге).
68 1170360
>>70355
Можешь на тытрубе глянуть видосы по жс, там их много.
Но дело не в том что хтмлакадемия хорошо объясняет, а в том что хтмл и цсс очень простые вещи. Кодинг это сложнее намного.
Привыкай. Решай задачки-говоломки на сообразительность для развития мозгов.
69 1170378
>>70338
Программировать на DHTML, это так круто...
70 1170384
>>70355

>сухой формат Кантора


Вот это новости. У кантора формат для детей ясельного сада.
71 1170453
Лучший язык эвер
72 1170490
Смотрите, решал задачку на кодварс
(Delete occurrences of an element if it occurs more than n times)
https://jsfiddle.net/vsuzmkko/1/
Хочу, чтобы двачик сказал мне, что решение очень элегантное
73 1170494
>>70490
написано странно. проще было просто для каждого числа счетчик увеличивать и если больше N то не выводить результат.
типа
for( var i : input)
{
cout++;
if(cout>n)
continue;
result.append(i);
}
74 1170495
>>70494
жрет скобки
cout ( i ) ++;
if ( cout ( i ) > n)
и .тд.
sage 77 1170544
>>70541
За такое я бы уволил.
78 1170546
>>70544
Я бы тебя уволил раньше, чем ты меня.
79 1170549
>>69431
JSDoc для кого придуман, блять?
Большинство нормальных либ его используют. А нормальные редакторы его хавают и показывают по наведению мышки.
80 1170550
>>70541
выпились, плз
81 1170683
>>70541
Миниатюра "как сделать так, чтобы код на жс был похож на лисп"
82 1170688
>>67958 (OP)
Сап, решил вкатиться сейчас. В каком порядке читать книги из гайда шапки?
83 1170712
>>70688
Раз задаешь такой вопрос, то можешь смело сразу и укатываться.
84 1170717
>>70712
Тогда начну по порядку.
85 1170757
на каком языке лучше писать прилагу вк ГОСТИ ВКОНТАКТЕ?
86 1170760
>>70757
Haskell, очевидно же.
87 1170764
>>70760
Purescript лучше подойдет.
88 1170793
Кто то работал с google sheets?
89 1170832
>>70355
Кодинг на самом деле намного проще сss'a, в кодинге ты просто кодишь очевидные фронтовские алгоритмы, а не ебешься с пикселями и движениями неведомой хуйни вправо-влево. По основам жса глянь курс с юдеми, скачай с рутрекера вирд партс жаваскрипт.

Кантор хуевейшая книга сама по себе, объясняет он по-даунски, не советую
image.png155 Кб, 748x317
90 1170909
>>70683
>>70550
>>70544
Неосиляторы.
91 1170956
>>70832

>Кантор хуевейшая книга сама по себе, объясняет он по-даунски, не советую


Какой язык такое и объянение ))0
92 1170962
>>70956
Язык-то идеальный.
93 1170969
>>70962
Лол. Даже сам Кокфорд не раз говорил, что в я зыке полно странностей и ошибок. Но всем похуй.
94 1170972
>>70962
Попробуй создать пустую переменную и выполнить с ней оператор плюс-равно, вот так:

var str; str += 'ABCD';
console.log(str);
95 1170973
>>70972
Она не пустая, в ней undefined.
Что тебе тут не очевидно?
96 1170975
>>70972
а нехуй переменные без присваивания заводить
особенно в языках без строгой типизации
97 1170978
>>70975
Достаточно понимать как, что работает. А не ебашить наугад.

Твои советы сравни - если не хотите случайно сдохнуть, нехуй на улицу выходить. Признак дегенерата.
98 1170979
>>70969

>сам Кокфорд


Ссылки на мнения кого-то, кто для тебя авторитет, тоже признак дегенерата.
99 1170982
>>70979
Тут забавно еще то, что етот Кокфорд, емнип вообще левый хуй. Т.е. опытный пользователь, не более, не дизайнер и не разраб жс.
100 1170987
>>70982
Он простой программист. Его основная заслуга, если ее таковой можно считать, что он распространил формат json и пропихнул его для спецификации. В то время все обменивались xml'ом, Крокфорд взял нотацию хэш-таблицы и js и популизовал как формат для обмена данными на замену ксмл. Так вот.

Но суть в том, что ссылаться на чьи-либо мнения, как какие-либо аргументы, в темах, не касающихся самих этих людей, тем более в формулировках САМ, ну это пиздец. Особенно для программиста.
101 1170988
>>70987

>хэш-таблицы из js

102 1170992
>>70988
Да я в курсе насчет его достижений.
103 1171114
>>70909
Да не неосиляторы. Я прекрасно понял, что твоя каша из тернарных операторов делает. Только вот с точки зрения читаемости за такое нужно по рукам бить.
104 1171138
>>70135
Бамп
500px-BigeIEkU9FumS0S.jpg50 Кб, 500x412
105 1171156
Аноны, есть ли в html такой тег, который выводит текст в окне? То есть, есть окошко с белым фоном, и там написан текст, который нельзя менять на странице? Что-то вроде textarea, но текст на странице изменять нельзя.
106 1171164
>>71156
Ты не поверишь, но это можно писать обычным текстом без тегов.
107 1171168
>>71114
За такое нужно ебало бить
108 1171174
>>71156
Скорее всего ты имел ввиду <marquee>.
109 1171188
>>71174
Я думаю, он имел ввиду <blink></blink>
110 1171539
>>71156
<b></b>
111 1171575
Безопасно ли использовать protected route в Angular?
Да, если пользователь не идентифицирован на сервере и не имеет ключа, он не посмотрит защищенный компонент и, уж тем более, не получить json с данными от сервера (asp.net core если важно).
Но, злоумышленник, посмотрев в код, будет иметь представление какие данные отдает сервер и как они отображаются у пользователя. Это нормально?
112 1171580
>>71575
Как один из вариантов решения, сейчас отдаю часть наиболее важных (по мнению моей паранои) данных в виде html кода.
113 1171592
Нужна небольшая консультация, так как не имел опыта на JS вообще, кроме пары тестовых заданий.
Я хочу сделать html форму с JS скриптом, который будет генерировать данные (на основе JSON файлы в этой же папке) и выводить их в форму. + хочу прикрутить возможность сохранять данные в txt формате на диск. Возможно ли это реализовать на чистом JS? При условии, что на компьютере, где будет работать скрипт, не будет админских прав и интернета. Только IE и Chrome.
114 1171610
>>71174
>>71188
>>71539
Типа толстите на толстоту?
115 1171611
>>71156
<p></p>
116 1171639
>>71156
Возможно тебе нужен язык программирования css (цсс).
117 1171643
>>71639
css (контер стрике соурсе)
118 1171652
>>71592
Нет.
119 1171655
>>71639
Скорее всего ему нужен язык haskell
120 1171718
до чего же я мастер js
121 1171722
>>71652
Нет, в смысле нельзя в файл сохранять? Или вообще такой скрипт офлайн не реализовать?
122 1171824
>>71722
Ну смотри. Обычными средствами ты не сможешь получить доступ к файлам в браузере, ибо безопасность.
Но если твое приложение крутится на локалхосте, то ты вполне можешь получить содержимое файла через ajax.
123 1171827
>>71824
То есть и статичный файл типа того же json этим скриптом не прочитать?
124 1171832
>>71722
Боже, да сохраняй ты в local-storage и успокойся уже.
125 1171909
>>71722
Гугли
Data uri
Blob
И не слушай погромистов, не умеющих сделать сраную выгрузку файла на жс.
126 1171937
>>71722
Можно. Формируешь файл в памяти и даешь его на созранение.

На ознакомься с экхемплом https://app.keeweb.info/
Это одностраничное приложение работающее локально, ты можешь сохранить страницу html себе на диск и запускать локально, а не удалено.
127 1171956
Как сделать это менее говнистым? Мне кажется, это пиздец, но кодварс засчитал
https://jsfiddle.net/tqg9he1a/1/
128 1171965
>>71956

>кодварс


Ты же посе решения задачи можешь посмотреть решения остальных, в том числе топ, в том числе самое лучшеее и короткое.
загружено.jpg120 Кб, 1024x576
129 1172016
Что почитать дауну, чтобы понять, как работают коллбек-функции?
Нихера не понимаю, слишком сложно для меня. Вернее суть я уловил, но когда начинаю смотреть примеры, то пиздец как сложно.
130 1172035
>>72016
Почитай тред чуть выше. Тут один анон разжевывал как мог, прям для самых довенов. Может настигнет прозрение.
131 1172043
>>72035
Так он ему и разжевывал.
132 1172050
>>71722
В Опере, Хроме, Лисе ты можешь запросить привилегии у пользователя, но только если твой код выполняется локально, является приложением.
133 1172051
>>72050
Также есть недокументированные способы, но они применяются с диалоговыми окнами через загрузки.

Ты можешь сохранить такой файл (при согласии пользователя), но не можешь загрузить, поэтому как писали выше используй хранилище браузера и не парься это тот же файл на диске юзера. Разницы нет никакой.
134 1172052
>>72051

>Разницы нет никакой


Есть. Все что созранено в зранилище браузера, будет удалено при очистке кэша\истории браузера.
135 1172067
>>69871
А деструктуризация в других ЯП тоже есть? Хоть и понял как она работает, но до сих пор когда её вижу напрягаю свой мозг, чтобы понять что куда присваивается, особенно когда присваивают свойства какого-нибудь объекта. Иногда кажется не очевидной хуйнёй, которая только усложняет код.
136 1172068
>>72016
Не заёбывай себя. Ты не работу их не понимаешь, ты просто не понимаешь что это и для каких задач нужно. С практикой придет понимание.

Ты видимо ещё до прототипов и контекста вызовов не дошёл, раз у тебя есть время над другими вещами голову ломать
137 1172087
>>72067

>А деструктуризация в других ЯП тоже есть?


Есть, конечно. В этом плане в js нет ничего уникального ни в чем, кроме того, что он собрал лучшие фичи из всех остальных языков.

>Иногда кажется не очевидной хуйнёй, которая только усложняет код.



Серьезно? вызво функции тебе не кажется нечевидной хуйней? А операция сложения? Уверен? А если бы ты жил во времена программирования на перфокартах?

Скудоумие и узколобость неизлечимы.
138 1172091
>>72068
Нах прототипы нужны? Уже ведь завезли синтаксически норм классы почти как в Джаве.
139 1172095
>>72091
С чего ты взял что как в джаве, это норм, а не наоборот?
140 1172115
>>72035
Спасибо, вроде немного получше понял.
Ещё дебильный вопрос - в каких ситуациях использовать forEach, а в каких for? Первый мне всегда давался с трудом, так что я всегда писал всё через for и если видел в чужом коде forEach, то переписывал его в for для лучшего понимания.
Но в чём отличие и где применять каждый из них - я нигде не нашёл инфы.

>>72043
Это был не я.

>>72068
Да, всё так.
Просто начал изучать асинхронность и там в первой главе про коллбеки, и что это основа основ.
141 1172122
>>72115

>и если видел в чужом коде forEach, то переписывал его в for для лучшего понимания.


Вот же червь-пидор. Надеюсь тебя гонят отовсюду ссаными тряпками.
142 1172123
>>72115
На чем раньше писал?
143 1172128
>>72123
На C++
144 1172131
>>72087
В которой раз убеждаюсь что комьюнити на дваче ужасно агрессивное. Это наверное потому-что здесь в основном омеги которые если в чем-то разобрались лучше других, начинают компенсировать и самоутверждаться

>>72115

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


лол, тоже этим страдал, просто Кантор упор на for в уроках делал, и у меня это от него. Хотя на деле все перебирающие методы наоборот упрощают жизнь, поэтому нужно специально заставлять себя именно их использовать, пока не станут как родные
145 1172132
>>72091
На собесах думаю все равно спрашивают, вряд ли их устроит твой ответ.
146 1172134
>>72131

>все перебирающие методы наоборот упрощают жизнь


Чем конкретно?
Тем, что чуть меньше писать?

То есть по сути разницы никакой, это всё дело вкуса, как пробелы/табы?
Плюс в гугле пишут, что for в разы быстрее, чем forEach, кому верить?
557e048d2d398cffa7b5d8e8968137e6.jpg34 Кб, 298x443
147 1172135
>>72132

>2k18


>ходить на собесы

148 1172137
>>72134

>Тем, что чуть меньше писать?


>[1,2,3].forEach(i => console.log(i))


>for(let i of [1,2,3]) console.log(i)

file.jpg74 Кб, 600x579
149 1172139
>>72137
Я не так пишу. Пощади, о гуру жс
150 1172143
>>72128
Ну и ты хочешь сказать, что будучи плюсовым программистом, ты не знаешь, что такое передача функции по ссылке и зачем это используется?
151 1172146
>>72143
Нет, ведь в плюсах нет приёмов ФП...
152 1172152
>>72146
ФП это прежде всего зависимые типы, а не лямбды. Лямбды - это обычная императивнщина. И функции передают по ссылке в другие фукнкции испокон веков. И в си, и в плюсах, и даже в асме. Особенно в асме.
153 1172188
>>72131
Мне в форыче не нравилось то, что из цикла нельзя выйти преджевременно. Плюс, в каком-то перформанс тесте я встречал, что итератор и forEach работают намного медленнее классического for (let i = 0; i < a; i++). Так что если встаёт вопрос быстрого перебора больших массивов, да ещё чтоб останавливать в нужном месте, то лучше каноничного фора ничего нет.
154 1172325
>>72115

>Но в чём отличие и где применять каждый из них - я нигде не нашёл инфы.


В том что в жс нет цикла форич. Метод массива форич есть, а цикла нет. Соотв-но фор универсален, форич нет.
155 1172330
>>72325
Причем for работает быстрее, чем вызов метода.
156 1172355
Анончик, чё пачитать по вебпаку? У меня три пакета p5js+webpack+webpack-cli тянут 1 мб зависимостей в деве, это немножко дохуя и собирается неприлично долго для хелло ворда. Я хочу чтобы эта сука не пихала в бандл неиспользуемые зависимости.
157 1172463
>>72355
в деве это норма вроде, кроме доков был какой-то реп с вкусностями по вебпаку, что-то типа авсом реакт только авсом вебпак но не точно так
158 1172494
>>67958 (OP)
Я просто оставлю это здесь: https://dev.to/_gdelgado/the-economics-of-js-182d
159 1172497
>>67958 (OP)
Привет, программач. Пишу приложение на Node. Нужно сделать так, чтобы при подключении первый пользователь попадал на страницу с ссылкой, передав которую второму пользователю тот мог бы подключиться к первому. При этом, этом, нужно чтобы одновременно больше одной пары пользователей могли поддерживаться подобным образом.
Как это сделать? Подозреваю, что нужно как-то химичить с socket.io и неймспейсами, но не совсем понятно, как именно.
160 1172503
>>72494
Я просто посылаю тебя нахуй.
Заебали уже со своими высерами.
161 1172507
>>72503
Таблетки опять забыл принять?
Screenshot568.png17 Кб, 502x500
162 1172528
Анон, поясни идиоту, какого хуя тут 16?
Цикл выполняется до i = 7 (потому что знак i<8, а не i<=8), и "sum+=i" тоже делает sum = 7.
Так чому тут 16? Я понять не могу.
sage 163 1172534
>>72528
Ты довен? 4+5+7=16
164 1172535
>>72528
5+4+7 = 16
165 1172536
>>72534
>>72535
Он все полученные i складывает, что ли?
Бля, ебать я тупой.
166 1172537
>>72534
>>72535
Алсо, благодарю вас.
sage 167 1172580
>>72537
sum+=i это сокращённая запись sum = sum + i.
168 1172614
>>72330
Как вы заебали. А вы ожидали, что вызов функции на кажду. итерацию будет быстрее цикла, что ли? Вы ебаутые? нахуй вы каждый раз повторяете быстрее, быстрее. А код без функций еще быстрее, что теперь - не использовать функции? Ты тупой? Сукка, нахуй иди мудак.
169 1172628
>>72614
Вызов функции инлайнится в 95% случаев, кстати.
170 1172635
>>72628
Нет.
171 1172651
>>72635
Жс-пидора ответ.
172 1172802
>>72580
Да, это я понял. Просто при самостоятельном разборе кода я совсем забыл про sum+=i и не брал в расчет выполнение этой строки совсем.
Невнимательность - один из моих главных врагов.
173 1172910
>>67958 (OP)
Хочу вкатится в платный курс на learn.javascript.ru, стоит ли оно того?
174 1172940
>>72910
Нет, уже долгое время существует понятие Open Source, платные курсы дают тебе то что ты сможешь найти сам и вполне бесплатно.
175 1172959
>>72940
Это понятно, что найти сейчас можно всё. Просто мне хотелось бы найти нечто цельное и систематизированное по ноде и (желательно) реакту, вот и присматриваюсь к разным курсам.
рожки-палец.jpg579 Кб, 850x1200
JS-непидор 176 1173058
Я за повышение привилегий для ЛГБТ!

мимонепидор
177 1173068
>>72910
Не стоит, просто всрёшь деньги.
Обычно на курсы идут те, кому сложно читать статейки, и им хочется чтобы их научили. На деле информации там всегда меньше чем нужно, и самое страшное, ты себя приучиваешь к тому что-бы кто-то тебе всё обьяснял. Но при этом всём курсы всё равно годная штука чтобы их наворачивать с видосами, статьями, документацией, мастер-классами, но естественно если не платить за них деньги, и не проходить их по два-три месяца, лол. А смысл отдавать деньги за что-то если тебе все равно потом придется дообразовываться из других источников?
К тому же я смотрел один курс с лернжс, и там было просто адовое качество с бульканьем микрофона и со звуками автомобилей из окна. А люди за это ведь платят.
178 1173094
>>72802
А всё потому что отступы на скрине кретин расставлял и с первого взгляда и не очевидно, что sum+=i внутри лупа находится.
179 1173110
Анон, вопрос по сокетам, а точнее библиотеке socket.io.
Как, сука, задетектить, что socket.emit('msg') прошел, а не соснул с ошибкой?
Там вторым аргументом ебаный коллбек на выполнение, в оф.доке не нашел ответа.
675765765.png18 Кб, 786x379
180 1173112
Анонче, помоги решить задачу, уже третий час голову ломаю, подсказку дайте чтоли какую.
181 1173116
>>73112
Че тут сложного то
Для каждого i элемента в массиве:
_если сумма элементов от 0 до i-1 равна сумме элементов от i+1 до последнего:
__добавить i в массив ретурна
182 1173119
>>73116
А половины массива выбирать слайсом?
А вот в последнем примере как у первого и последнего чисел массивов справа и лева беруться нули?
183 1173135
>>73094
Грубо, но верно.
Есть ли какие- то сервисы, которые подгоняют строки для более приятного и понятного чтения?
Вроде бы похожий сервис видел гайде по пхп в соседнем треде.
184 1173137
>>73116
Если индекс первый, сумма слева = 0, если индекс последний, сумма справа = 0
Собираешь нужные индексы слайсом и через reduce сумму ищешь
image.png448 Кб, 1516x752
185 1173160
Вы мне только скажите, я реально настолько тупой или синтаксис жса действительно местами сложный?
Откуда столько скобок блять, как не привыкшему глазу это уловить все? Как понять что где куда?
186 1173166
>>73116
>>73137
И все равно чё то не получается нихуя, можно пример?
Captured1.png6 Кб, 752x298
187 1173181
>>73160
И вправду слишком много скобок. Убери первую круглую и ставь точку с запятой после закрывающей фигурной.

Вот типичный JS-код в стиле 2009-2015 года (как видишь, это конструктор класса), и там нет ничего сложного.
189 1173206
>>73181
пиздец анон оформление у меня слёзки через 1 секунду
190 1173211
>>73204
Спасибо, анонче, вроде сам только что решил, не так изящно конечно но вроде работает, добра.
191 1173214
>>73206
А всё из-за того, что код написан под старые браузеры, а ещё там подключён React, и в его файлах отступы должны быть сделаны Tab'ами.

Так-то я написал бы лучше. Сам рыдаю от єтово.
192 1173245
>>73214
я думаю тот анон про цветовую гамму, лол
193 1173248
Котаны кто вкатывается гоу в конфу в телегу
джоинт чат ERcgzA_J3RefVnGflzvo5w
Безымянный.png1 Кб, 345x34
194 1173250
Для избранных
>>73248
195 1173442
>>73250
ахуеть конфа из одного ананаса
196 1173481
>>73442
Какой язык, такая и конфа.
197 1173484
>>72959
будь оригинальней, читай первоисходники, на этих курсах штампуют мусор
198 1173588
Читаю Кантора, дошел до замыканий и обсираюсь на каждом шагу. Не могу решить ни одного задания, внезапно из-за того что 3 дня уже читаю это - позабыл все. Даже сортировку забыл как делать.
Заново читать Кантора или лучше пока не проебал вообще всю цепочку перепрыгнуть на альтернативный источник информации?
199 1173621
>>73588
Порешай задачки на кодварс, потом вернись к замыканиям
Сам так делаю
200 1174049
Почему к реакту практически нет никакой официальной документации? На reactjs есть либо туториалы, либо типа доки, которые на самом деле никакие не доки, а набор сказок с примерами, из которых нужно сидеть вылавливать, что же блять делает конкретная функция, что она принимает, и что возвращает. Вот хочу я, допустим, узнать про setState, что там за колбек есть, принимает ли он аргументы и какие, есть ли гарантия, что он вообще выполнится, и если выполнится, то когда именно -- а хуй там, нихуя не написано. Про события вообще молчу, молчаливо высрали наборы пропертей для каждого события и типа на этом доки закончились. А что это блять за проперти, какие у них области допустимых значений, где я это должен узнавать? В гугле в бложиках ноунейм смузидебилов? Это типа норма для жс-экосистемы или как?
201 1174051
>>74049
Какая документация еще. прошлый век? Смотри Дена Абрамова на ютубчике, попивая смузи.
202 1174058
>>67958 (OP)
Бля, понравился мне этот язык. Он как гибрид питона и си, но вместо шестерёнок и поршней тебе выдали глину, лепить из неё.
203 1174070
>>74049
Чтобы написать документацию, надо знать как это говно работает. А если знаешь, то она и не нужна. А там новая версия выйдет
204 1174073
>>74070
Ну охуеть теперь. То есть вывалили библиотеку без доксы, без нихуя, с полутора рекламными высерами в бложике и все, пользуйтесь, ребята? Заебок, чо. Надо ораклу предложить тоже на такую систему перейти. А то чо в каменном веке-то жить, документация какая-то, обратная совместимость, program against interface, какая чепуха, господи. То ли дело написал drinkSmuzzi() и потом переебываешься с ней по гуглу, пока не найдешь восемнадцатым коментом в бложике васяна, что же эта блядская функция все-таки делает.
205 1174094
>>74073
Макаки осиливаю, а ты сломался. Не стыдно?
206 1174095
>>74094

>осиливаюТ


fix
207 1174110
>>74049
раздел апизреференс тебе на что
208 1174135
>>74110
The second parameter to setState() is an optional callback function that will be executed once setState is completed and the component is re-rendered. Generally we recommend using componentDidUpdate() for such logic instead.

Вот все, что написано в твоем хваленом апи референс про колбэк в setState. Что из этого мне должно стать понятно про его использование?
209 1174153
>>74135
То, что это обычный жс колбэк, который заупскается после основного тела функции. Колбэки гуглить в тч в канторе.
210 1174171
>>74135
Одно слово - асинхронность.

Смысл в том, чтобы дать тебе знать, когда эта операция закончится.
Иногда в таких случаях в колбек передаётся ещё некий параметр - состояние, ошибка и т.п.
211 1174175
>>74153
Нииит. Это не правильна. Ни па уму. Надо, чтобы в описании каждого метода\функции, любой, даже самой простейшей библиотеки были пояснения, что такое функция, что такое коллбэк, что такое строка, что такое число, как числа представлены в языке, как представлены объекты, что такое объекты, что такое методы, что такое переменные. Иначе это не па инжинерному и жс гавно
212 1174200
>>74175
Ну, честно говоря, документация для большинства js либ и фреймворков оставляет желать.

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

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

Ну и чем меньше доков - тем больше поисковых запросов, больше постов на SO, больше хайпа.

Поэтому, вместо документации пишут сказки о том, как всё будет охуенно, если начать использовать фреймворк Pink Reactive Zalupa 3.0.

мимо другой анон
213 1174254
>>74153
>>74171
Ребята, я знаю, что такое колбэк и что setState выполняется асинхронно. Но какие аргументы передаются в этот колбэк? Можно ли внутри него вызывать setState? Вопросов такого рода можно назадавать кучу, а ответы на них искать негде, разве что в сырцы лезть.
>>74175
Че ты кривляешься, не маленький уже.
214 1174264
Нужно, чтобы при нажатии на буквенные клавиши исчезал текст.

ЧЯДНТ? Почему не работает?

https://codepen.io/anon/pen/yKdRxR
215 1174303
>>74264
Рискну предположить, что твой div не сфокусирован. Более того, из коробки он и не будет фокусируемым, тебе нужно руками добавить ему это свойство. tabIndex вроде называлось, погугли кароч.
216 1174308
>>74303

>твой div не сфокусирован


Что это? Впервые слышу.

Тут проблема в условии. Если его убрать вообще, то при нажатии любой клавиши див исчезает.
217 1174313
>>74303
Это же не форма и не ссылка.
Ты либо слишком жирно траллишь либо вообще далёк от жс.
218 1174324
>>74308
без условия выведи в консоль кейкод на любую нажатую клавишу, и увидишь что твоё условие построено совершенно неверно, код совершенно другой на буквенные клавиши
219 1174327
>>74324
fix: забыл добавить, используй keyup или keydown и все будет работать
220 1174328
>>74324
Спасибо, выяснил, что a-97, а z-122

Почему тогда во всех справочниках пишут, что это 65 и 90 соответственно?
У меня разрыв шаблона.
221 1174333
>>74264

>2018


>без ж-квери


Лал.
Добавь класс, который делает текст альфой.
222 1174344
Анон, зающий реакт и сокеты, и использовавший эти две технологии в построении спа, есть к тебе вопрос (круто было бы в личку, @ke3evra)
Нужна интеграция сокетов с редаксом, и есть наработки в ту или иную сторону, хочется услышать критику этих решений или твой совет, как не соснуть с расширением приложения.
223 1174369
>>67958 (OP)
Анон, подскажи, как сделать такой файл, чтобы из него можно было тянуть примера json-запроса?

Я тут пытаюсь написать обработку json-ответа от сервака, но сами ответы нерегулярны и вот хочу записать пример в файл, чтобы дергать, когда понадобится, но просто запихнуть массив в квадратные скобки - недостаточно!
224 1174407
>>74254
Почему нет?
Но, только тоже асинхронно - через setTimeout(setState, 0).

Если туда параметры нужны - сделай функцию-обёркту.
225 1174425
>>74344
Пиши тут.
226 1174428
>>74369
Дергай апи двача.
227 1174448
>>74369
А не проще Node поднять или какой-нибудь детский веб-сервер?
228 1174455
$.getJSON( "ajax/test.json", function( data ) {
var items = [];
$.each( data, function( key, val ) {
items.push( "<li id='" + key + "'>" + val + "</li>" );
});

Чёт я не понимаю откуда берутся тут ключи и значения, если их нигде не указывают и не объявляют.
229 1174458
>>74455
А в json'е у тебя что - хуй собачий?
Ты попробуй уже понять, что у тебя там написано, и зачем.
230 1174460
>>74458
Ало, это пример из документации.
231 1174470
>>74460
JSON - это и есть набор пар ключ-значение (т.е. просто объект).

JQuery получает файл с сервера, парсит и превращает в объект (data).
Потом each проходит по этим парам.

Т.е., если на вход each подать не массив, а map (объект), то он будет передавать в callback пару аргументов, а не один.
232 1174579
>>74425
Хм, постараюсь донести мысль.
В спа есть два варианта общения с сервером -- обычные запросы через axios и через socket.io.
При инициализации приложения создается инстанс апи-клиента аксиоса. _Все_ запросы этого инстанса вызываются исключительно через асинхронные редакс экшоны, доступ к апи-инстансу изнустри любым компонентов невозможен.
Вопрос -- как реализовать общение через сокеты?
Как я вижу.
Все сокет.эмиты идут точно так же, как и запросы аксиоса -- через асинхронные редакс экшоны.
Нужно что-то заэмитить -- вызывается экшон, после прохождения него диспатчится успешный (или не очень) экшон.
А вот куда пихать все листенеры сокета?
В моем представлении -- в роутах аи рядом с объявлением инстанса сокета. Причем при объявлении инстанса сокета передавать ему заинициализированный стор, уже диспатчить нужное действие при получении данных с сервера.
Жду критику решения.
233 1174580
>>74579
Олсо, даже опишу так.

Проблема: при разрастании количества роутов будет затруднительно работать с сокетами.

Задача: все листенеры и все эмиттеры сокетов держать в одном месте.

Решение: все эмиттеры лежат в экшонах, все листенеры -- в роутах рядом с инстансом с подключенным стором.
234 1174789
Да блять, откуда ЖС берёт переменные, которые не объявлены? Что это вообще?
235 1174792
>>74789
Они объявлены.
236 1174793
>>74792
В функцию передают переменную и вызывают её метод. Но она не объявлена нахуй!
237 1174794
>>74793
Объявлена.
238 1174899
>>74793
Ты о чём?
Об этом: >>74455 ?
Или о чём-то другом?
239 1174913
Что скажите? Стоит вкатываться?
https://yopta.space

гыы gop внатуре пиздишь, lt нах

куку йопта law() жЫ
вилкойвглаз(gop типа нечотко) жЫ
ксива.малява("Я и правда язык") нах
gop сука чотко нах
есть иливжопураз жЫ
gop сука чотко нах
потрещим(semki чоблясука трулио) жЫ
lt сука ксива.вычислитьЛохаПоНомеру("list") нах
ебало.шухер("Привет, йопта") нах
есть
есть
есть
240 1174938
>>74913
Ты знаешь, что то, что ты притащил - старше, чем ты. Что ты хотел этим показать? Что ты не слишком умный?
241 1174941
>>74938

>Ти не слишкам умныи, азязя

242 1174960
Посоны, есть привязанный к html .js, в нем набор функций и ивент листенеры.
Проблема в том, что эти функции выполняются в любом случае, как только на строчки с ними попадает парсер. А мне нужно, чтобы только при кондишене. При этом запихать её сразу после этого кондишена не могу, потому что вызывать надо при разных событиях. Что делать?
243 1174981
>>74254
В смысле какие аргументы. Я туда полностью свои функции (экшоны) с любыми аргументами из саг хуячу уровня fetchSomeData(this.state)
244 1174991
Аноны дайте совет как лучше реализовать, предположительно юзеру нужно выдавать логины-пароли через сайтик вида "user1488;12345" по нажатию на кнопку после авторизации. Мне нужно эти логины периодически куда то добавлять в более удобном виде, что бы потом они после выдачи юзеру заносились в какую нибудь другую БД как использованные с меткой времени, когда именно было выдано.
Как самое простое думал заносить их просто в txt файл, парсить первый. После выдачи юзеру удалять позицию и заносить ее в другой txt файл отработанных логинов с припиской времени когда именно было выдано.
Может подскажите более элегантный вариант, желательно подсказать в какую сторону копать. Я еще не макака, я только учусь.
245 1175166
Есть ли какие-то библиотеки для попиксельной обработки изображений в js? Это вообще на нём возможно? Там же нужно файл декодировать. Или в ином случае мне на стороне сервера лучше преобразовать в json и на клиенте уже работать с массивом? Как тогда сократить по памяти огромный несжатый список?
246 1175169
>>74991
Майэскуэль подними и не еби мозги. В три строчки всё сделается.
247 1175173
>>74455
Есть токая хуйня, как callback. Эта просто функция, которая вызовется в будущем, и ей будут передана нужная информация в виде аргументов.

$.each возьмёт твою data, попидарасит там чутка, а после этого для каждого объекта в коллекции data вызовет ту самую функцию. И вот в будущем при вызове он передаст туда те самые key и value. Их объявление, как и вызов самого коллбэка, зашиты внутри реализации $.each.

А вообще хорош лезть сходу в бутылку с jQuery.
а) В 2к18 она нахуй не нужна
б) Разберись с паттерном callback в принципе как он работает. Это абсолютно необходимо для любого асинхронного программирования. Этот паттерн не JS-specific, кстати.
248 1175178
>>74579
Советы мудрые:
1) Вынеси всю работу с асинхронным говном (будь то аяксы или сокеты) в моддлвары. Можешь юзать redux-saga или redux-observable, рекомендую последнее. Оно поначалу посложнее, но rxjs дальше круче.
2) Сдизайнь так компоненты системы, чтобы у тебя была одна хуйня, которая принимает информацию из внешних источников, и остальная система, которая на неё реагирует, не зная, откуда она пришла. Типа ты можешь сделать аякс /users, или сокет может ебануть эвент типа 'updateUser', и у тебя есть отдельный адаптер к сокетам, и отдельный к аяксам, но у них одинаковый внешний АПИ, и остальная система в обоих случаях обновит юзера

В принципе, п. 2 норм реализуется через редьюсер и миддлвару. Экшны только синхронные, редьюсер чисто обновляет стор, реагируя на экшны, а задача миддлвар — ебаться с аяксами/сокетами, и в нужные моменты просто хуярить экшны UPDATE и т д.
249 1175192
>>75166

>Это вообще на нём возможно?



Да, возможно.
Используй canvas.
Декодируется оно само.
Гугол в помощь.
250 1175198
>>75178
Спасибо за отклик.
1) общение с сокетами идет через мидлвары по аналогии с апи, компоненты не знают, какой способ связи будет задействован при передаче экшона в диспатчер.
Юзается стандартная хуйня вида
{
types: [request, callback],
socket: async (socketClient) => {
return await socketClient.doSomething()
}
}

2) Ты предлагаешь сделать обертку над сокетами и апиКлиентом? Или что?

В принципе, писал сейчас простыню и понял, что в уме раскидал, как должны лежать слушатели, эмиттеры и прочее говно, и потому стер все вопросы.
Спасибо за ответ.
251 1175199
>>75198
ну я на самом деле хотел вообще рекомендовать избавиться полностью от такой хуйни как «асинхронные экшны». Thunks — нахуй короче.

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

А на сокеты и на АПИ можно просто написать 2 разные миддлвары, которые в нужные моменты будут вызывать нужные экшны
252 1175206
>>75173
После промисы, после асинк эвейты, лол.
253 1175209
>>75199
Ну да, мидлвары для сокетов и для апи разнесены.
И type: success (или fail) диспатчится в стор только после прохождения запроса, на промисах.
254 1175219
>>75206
Но лучше конечно вовремя обойти эту ересь и погрузиться в алгебраические типы.

Только Task, только хардкор. Промисы для пидоров, монады для бояр.
255 1175747
Боги ЖСа, прошу вашего взора на простого смертного желающего прикоснуться к прекрасному:
Хотел сделать по-простому, чтобы удалялась кнопка при клике на неё, но даже если кликать справа налево, он идёт строго по порядку.
https://codepen.io/JavaHutt/pen/ELYrVo
Пробовал назначать по классам и выбирать их, не реагирует
256 1175753
>>75747
Тут помогло бы:
document.getElementById('dummy')[0];
document.getElementById('dummy')[1];
document.getElementById('dummy')[2];
257 1175759
>>75747
Во-первых, согласно html спецификации, id должен быть уникален для каждого элемента. Если ты хочешь выделить группу похожих друг на друга элементов, используй class.

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

В-третьих, в современных браузерах поддерживается классный метод elem.remove() вместо ебучего elem.parentNode.removeChild(elem).

Короче я бы сделал может как-то так.
https://codepen.io/anon/pen/VxZgQO
258 1175765
>>75747
Я вообще нуб, нихуя жс не знаю. Но предложу такой вариант https://codepen.io/anon/pen/BxBMMQ?editors=1111
работает, но 300к-аноны могут найти какие-нибудь изъяны с высоты своего опыта
259 1175769
>>75759
Ты крут
polinameyer1.jpg63 Кб, 604x453
260 1175772
>>75753
>>75747
>>75765
Спасибо, чуваки! Ожидал закидывания говном, а мне прилетело 3 бодрых ответа
Хочу ещё кнопку одну добавить туда же типа "Добавить интерес", которая добавляет такие же баттоны, подскажите, в каком направлении гуглить?
polina3.jpg20 Кб, 400x300
261 1175778
>>75759
fix
Тебе отдельное спасибо за комментарии в коде
262 1175779
>>75769
ага, и больше не пишу на JS :)

Но это я не отговариваю учиться. Очень крутая, мощнейшая экосистема вокруг JS. Язык, который стоит учить. Дохуя денег платят, хорошие карьерные возможности, а потом сам поймёшь, куда дальше двигаться.
263 1175782
>>75772
А давай я тебе усложню задачку.
https://codepen.io/anon/pen/vjBPZX

Кнопка «Добавить интерес» добавляет интерес в список интересов. Для каждого пункта есть рядом псевдо-ссылка, удаляющая его из списка.

Если инпут пустой, ничего не добавляй.

Задание «со звёздочкой» (основы вылидации):
1) Если чувак попытался нажать кнопку при пустом инпуте, сделай alert('Ты пидор')
2
*) Если чувак попытался добавить интерес, который уже был добавлен ранее, сделай alert('Лечи склероз')
264 1175783
>>75782
Вдобавок: разрешается менять html-разметку по удобству, добавлять классы, тэги, и т. д.

Для пункта 2 точно надо будет тэг добавить. Для остальных мб классы и так далее по вкусу.
polinagif.gif3 Мб, 400x300
265 1175785
>>75782
>>75779
Я так понимаю ты тот анон с комментариями в коде. Задачку взял в разработку
Оставишь телегу/скайп/любое фейкомыло?
266 1175787
>>75785
revengefoTm|rjaneANUSgmai@ntlPUNCTUMcIBnom
267 1175795
>>67958 (OP)
Что можно сделать нв реакте чтобы взяли на работу? Вышке нет, вкатывась в реакт
268 1175802
>>75795
бочку
269 1175806
>>75782
Такие вещи надо уже делать на vue или на реакте.
Иначе бессмысленное пердоленье с dom получится.

Или пилить свой MVC, лол.
270 1175808
>>75802
Хуйцы же.
А бочку - соснуть.
271 1175811
>>75765
Чего только люди не придумывают, чтобы не пользоваться jQuery.
272 1175812
>>75811
Блядь, не туда.
Это вот сюда: >>75759
273 1175824
>>75806

>Такие вещи надо уже делать на vue или на реакте.


>Иначе бессмысленное пердоленье с dom получится.



Ты скучный, зелёный, и вообще пошёл нахуй.

Ещё (надеюсь) остались люди, которые хотят стать толковыми разработчиками.
274 1175827
>>75824
Я прагматик.
А толковым разработчиком я давно уже стал.

Но, конечно, лучше, если человек сам дойдёт до понимания, что просто так, ad-hoc, ковыряться в dom - это не кошерно, и надо как-то это систематизировать.
275 1175887
>>75747
Пиздец тут насоветовали.
https://codepen.io/anon/pen/qYBEmm
276 1175948
>>75827
Я не тот чел которому ты пишешь, но отвечу. Там задание то ведь обычное и изичное. Даже туду не назову. Там 50 строк кода будет, из которых 30 просто работа с ДОМ: создать элемент, добавить класс\айди, засунуть элемент. А остальные строки это проверки. Вот и все. Ради такого не надо подключать реакт, вью или ЖК.
277 1175966
>>75948

>Там 50 строк кода будет


Да, и все их придётся переписать при небольших изменениях в ТЗ.
А потом ещё раз.
И ещё.

>Но, конечно, лучше, если человек сам дойдёт до понимания, что просто так, ad-hoc, ковыряться в dom - это не кошерно, и надо как-то это систематизировать.

278 1175984
>>75795
что-нибудь с асинхронными запросами или ТЕСТОВОЕ.
superpolina.jpg66 Кб, 400x533
279 1176048
>>75772 -изучающий ЖС анон репортинг ин
https://codepen.io/JavaHutt/pen/zjYNvy
Вобщем копаясь в стаковерфлоу, пытаюсь что-то делать по своей задачке, но всё не гладко
Вроде бы новым баттонам присваиваю класс removable, но удаление по клику не срабатывает как с предыдущими кнопками. Обработчика событий в инспекторе на новые кнопки вообще нет..
Алсо есть какой-то способ новые элементы помещать вначале блока, а не в конце?
280 1176083
>>76048

>есть какой-то способ новые элементы помещать вначале блока


insertBefore(вставляемый элемент, родитель.firstChild)
281 1176115
>>76048
топ тян
282 1176123
>>76083
https://codepen.io/JavaHutt/pen/rvNJem
Переделал вообще всю систему.. кнопки ремувит, но как insertBefore внедрить понять не могу
283 1176156
>>73135
Кнпочка TAB.
А так загугли beautify javascript, миллионы их, как онлайн так и оффлайн.
https://github.com/mishoo/UglifyJS например или http://jsbeautifier.org/
284 1176171
>>76123
Тебе же выше писали, что инлайново вешать функции — не круто. Сделай как было раньше, а при создании новой кнопки вешай на нее eventListener отдельно.
между кнопками которые добавлялись скриптом не было отступа потому что они расположены инлайново и между ними нет текста, а в первых трёх он есть, это переход на новую строку, вот, если хочешь, чтобы был отступ – сразу добавляй текст ноду
285 1176182
Блять, что за говно ваш карриинг, почему сука функции создают функции, которые создают функции, которые создают функции. Идите нахуй, говно ебаное. Нахуй это надо, когда можно просто взять 3 ебаеных аргумента в скобочки и не ебать мозги с этим говном ебучим.
286 1176190
>>76182
Самому-то не стремно от собственного неосиляторства?
287 1176194
>>76190
твоя мать шлюха, а это говно придумали пидодрасы из фейсбука чтобы россию развалить
288 1176197
>>76194
Держи нас в курсе.
289 1176198
>>76197
Передавать сука! функцию, как аргумент, ебаные мудоебы, твари недотраханные, рендер сука, ахаххах, просто блять жирная мать шлюха не влезла в пропсы, вот они и высрали это говно
290 1176203
>>76198
Продолжайте наблюдение, мы с вами свяжемся.
291 1176206
>>76203
Да я заебался, я каждый раз пишу
ебучее говно = говно=>моча=>тупое говно тупого говна
И нихуя не понимаю как это работает. Ебучий контринтуитивный паттерн, нахуй он вообще нужен. Сколько блять месяцев еще надо писать это хуеговно, чтобы привыкнуть
292 1176207
>>76182
у меня там при добавлении новых кнопок им приписывался класс removable, но почему-то это не считалось элементом массива removableButtons
Я не понимаю как это работает, поэтому "крутизной" пришлось пожертвовать и добавить инлайн
А вот вопрос про инсерт всё ещё в силе
293 1176209
>>76207
вот это было сюда >>76171
294 1176303
>>76207
Сделай это на jQuery. Гораздо проще будет.
А потом - попробуй сделать без, если захочется.

Сейчас набегут мамкины прогрессисты и расскажут, что jQuery не нужно в 2018-м.
Не обращай на них внимания.

Алсо, я не спроста тут несколько раз упомянул MVC.
DOM должен быть вторичен - это всего лишь отображение.

Т.е. лучше добавлять объект "интерес" в массив интересов (или удалять из него), а потом рендерить это в DOM. Руками или с помощью шаблонизатора (JsRender).
Тебе же не сами по себе эти кнопки нужны, правда?
295 1176311
>>76303
пусть лучше на реакте напишет, там как раз можно онклики навешивать в дом)
296 1176351
>>76303
>>76311
Спасибо вам, но я реально новый в js и программирование вцелом, хотелось бы разобраться в нативе для начала.
Кому интересно, переписал в очередной раз всё заново, даже вперёд смог поместить
https://codepen.io/JavaHutt/pen/ZoEVLz
Единственная проблема что он не отрабатывает условие, при котором я ввожу пустое значение в промпт
297 1176361
>>75966
Прежде чем учить матан, надо выучить таблицу умножения. Базовые операции с DOM — это таблица умножения.

И да, иногда даже в реакте приходится спускаться на уровень ниже и работать с DOM. Уровни абстракции надо поднимать постепенно, начиная с основ.

Мартышка, которая и может, что использовать реакт — не разработчик. Норм разработчик, если надо, сам тебе напишет свой реакт.
298 1176365
>>76206
Это просто нужно liftN сразу в мозг.
299 1176370
>>76351
Давай по порядку

1) addInterestButton — вот так к DOM элементам не надо обращаться. Используй document.getElementById или document.querySelector

2) onclick='this.remove()'
Давай теперь перепишем всё без инлайновых onclick. Только addEventListener.

3) var newDiv = document.createElement("button")
это же не <div>, это <button> :3. Почему не var newButton = ...?

3) Когда справишься с этим, я бы всё же рекомендовал вернуться к оригинальной вёрстке задания. Там и html инпут был, и псевдоссылка для удаления. В общем, поинтереснее
300 1176371
>>76361
Да ну, что плохого быть мартышкой с трехзначной зп. А вообще в реакт доках есть инфа как его написать самому) если серьезно, то я считаю, что нет разницы учить ли сверху вниз или снизу вверх,по эффективности по крайней мере. Но мне было интереснее начать с реакта. Тк он проще
301 1176374
>>76351

>не отрабатывает условие


Сделай if (newContent.length) {...}
302 1176375
>>76303
Ты говоришь про state management. Это пока вторично, следующий этап. Надо для начала разобраться, какие бывают элементы, какие события и узнать несколько базовых DOM-методов.

Для простых сайтов/страниц стейт менеджмент вообще не нужен, как и сложные фреймворки с сотнями зависимостей. Можно очень элегантно на нативном JS делать простые вещи.

Когда будет уже какое-то сложное приложение с логикой, тогда можно будет и о state management, и о фреймворках задуматься.
303 1176379
>>76371
Есть разница. Мартышка, которая привыкла учиться, пробегаясь по вершкам, не докапываясь до сути, может и достигнет трёхзначной зп, но с большой вероятностью так и остановится на средненьком уровне. В начале первой сотни, если тебе так нравится всё мерить зп.

Люди, предпочитающие фундаментальный подход к обучению, постараются разбираться в сути того, что происходит, и делать вещи, понимая, как они работают. Таким людям будут доверять строить реально сложные системы, принимать решения. Это уже путь ко второй-третей сотне.
304 1176391
>>76351
>>76374

>не отрабатывает условие



Бля, я таки дал себе труд прочесть то, что ты там написал.
Тебе сначала надо получить строку из prompt, проверить её - if (newString) {...} и, если она есть, то создавать text node.

А всё потому, что переменные надо нормально назвать, лол.
Новый text node - значит newNode или newTextNode, а newContent я принял за строку чисто на автомате.
И эта блядская хипстерская тёмная тема ещё.
polinablack.jpg13 Кб, 400x400
305 1176392

>Давай теперь перепишем всё без инлайновых onclick. Только addEventListener.


Сорри, не укладывается в голове как это сделать. Не первые сутки уже с этой фигнёй работаю, как только не подлазил, мозги кипят реально уже :\
И ты тот самый квестгивер, я тебе писал на фейкопочту, а ты не ответил
306 1176405
>>76392

>не укладывается в голове как это сделать.


Почитай про то, как работают события в браузере.

Если коротко - надо назначить всего 1 обработчик на контейнер, в котором у тебя будут создаваться твои кнопки. Или вообще на документ. А в обработчике проверять, откуда событие.

https://stackoverflow.com/questions/34896106/attach-event-to-dynamic-elements-in-javascript
307 1176417
>>76405
https://codepen.io/JavaHutt/pen/ZoEVLz
обновил, с горем поплам
Так долго в монитор с тупым лицом я давно не пялился
308 1176427
>>76417

>var newString = document.createTextNode(prompt('Новый интерес',''));



Что ж ты делаешь, лол.

var newString = prompt('Новый интерес','');
if (newString) {
var newTextNode = document.createTextNode(newString);
var newButton = ...;
...
...
}
309 1176428
>>76417

>newButton.addEventListener(...)



Так можно, в принципе. Всё работает.
Но, зачем каждой кнопке свой новый обработчик, если можно обойтись одним общим?
Когда выспешся - вот это прочти ещё раз: >>76405
310 1176430
>>76417
Хм, а и сойдёт ведь :3
С горем пополам, молодец.

>>76370
Давай теперь сначала к п. 3) из этого поста, пободрее будет.

>> 1175782


А потом добавь валидацию из изначального задания, и будет вообще хорошо

1175782-анон
311 1176431
>>76428

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



Ну это честно уже вкусовщина. В конкретной ситуации правда похуй. В реальном проекте можно так, можно эдак, по ситуации смотришь на структуру компонентов. Ящитаю на данном этапе решение анона вполне принимается.
Screen Shot 2018-04-19 at 1.20.35 AM.png37 Кб, 2208x216
312 1176434
>>76392
Хе, и правда, писал. Ты не подружился с гугловским спам-фильтром, лол. Буду проверять спам тоже.
313 1176443
>>76392
>>76434

Ответил. Я нихуя не пойму, доставлено, нет, там загружается бесконечно. Ебучий РКН, не проссышь, то ли просто тормозит, то ли очередной гугловский сервак заблочили.
314 1176461
>>76443
Пользовался бы божественным mail.ru, то не было таких проблем
315 1176463
Сап, проверьте, пжлста, у вас behance открывается?
У меня грузит главную, но не прогружает скрипт с cdn a5.behance.net со вчерашнего вечера. Провайдер МТС. Айпишника cdm в реестре нет.
Отпишитесь плиз.
316 1176466
>>76379
Не думаю, что будет, что-то плохое, если отучиться фундаментально на другом уровне абстракции и потом перейти на более низкий. С реакта и легкого ес6 сахара на жс и работу браузера. Или с си на асемблер. Или с арифметики к матанализу.

Почему бы не учить первее, то что учится проще и быстрее, а потом наиболее сложные не самые практичные вещи.
317 1176472
>>76379
Никто не изучает ничего начиная с фундаментальных вещей.
Ты не изучаешь сначала фонетику, чтобы начать говорить.
Физики не начинали изучать физику с изучения ее законов. Они начинали с наблюдения естественных процессов в быту. Ты не начинаешь изучать электронику с проектирования микросхем, ты сначала знакомишься с электроприборами.
sage 318 1176544
ИТТ школозавры пытаются запилить свой первый тудулист, рассказывая, что каждый из них техлид "с трехзначной зарплатой"
319 1176639
>>76544
А вот и нет, у меня уже первый проект намечается! Буду верстатьтть
320 1176832
>>76544
Именно что с трёхзначной, лол.
321 1176935
>>75984
>>75795
Вообще похуй что. Хоть даже тудулист ебашь, если ты ньюфаг и не работал над серьезными проектами.
Тебе важно показать что ты а) знаешь современный стэк реакта б) готов и любишь разбираться со всякими костылями, потому что в реакте их навалом.
Вот тебе списочек:
- react-router
- react-redux / mobx
- react-redux-router
- redux-thunk/redux-saga/redux-observable
- redux-actions/redux-batched-actions
- reselect
- normalizr
- lodash/lodash-fp/ramda/ImmutableJS,
- fetch/isomorphic-fetch/axios
- flow/typescript

мимо-работал-со-всем-этим-дерьмом
322 1176936
>>76935
это я еще про серверный рендеринг забыл, да..
323 1176939
>>76935
Это тудулист надо делать со всеми этими перечисленными вещами? Или для начала react-redux достаточно?
sage 324 1176940
>>76939
Это всё нужно для того, чтобы запилить хотя бы бойлерплейт.
325 1176942
>>76939
нет
там где я поставил слэш - значит можно выбрать одно из, т.е. это либы для одного и того же
что тебе брать - дело твое, но ты должен хотя бы поверхностно представлять концепты и зачем кто то вообще всю эту йобу написал
326 1176946
>>76935

>длинный список всякой неведомой хуйни


>>76942

>и зачем кто то вообще всю эту йобу написал



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

И это говно потом просто дропается, и пишется следующее инновационное говно.
Это какая-то разновидность распила, мне кажется.

Как можно всё это использовать в продакшн вообще, если только ты не тсукерберг с охулиардом долларов на тысячи жс-обезьян?
327 1176947
>>76942
Спасибо большое
328 1176973
>>76935
В каком порядке это усваивать?

Это типа основы?
- axios
- redux-saga
- react-router

Вот эти 3 штуки чисто, чтобы редаксокод был красивым и оптимизированным?
- reselect
- normalizr
- ImmutableJS
- redux-actions вкусовщина или рили удобная штука?

остальное я погуглил и так понял, что очень опционально?
- react-redux-router насколько эта хуйня важна, если уже есть обычный роутер?
- lodash/ramda отсюда обычные не фпзадроты юзают функций 5-10 же?

Остальное какое-то нестандартное уже кажется.
329 1176981
Начинающим и продолжающим реактоёбам - охуенная книжка:
http://www.allitebooks.com/react-quickly/
330 1176990
>>76981
ЗАПРАШИВАЕМЫЙ IP ЗАБЛОКИРОВАН
331 1176993
>>76990
???
У меня норм открывается.
Там реклама только, но uBlock и блокировка попапов убирают всё без проблем.

Можешь ещё отсюда скачать:
http://scanlibs.com/react-quickly-painless-redux-graphql/
Прямая ссылка:
http://turbobit.net/9gqv819yi71s.html
332 1176994
>>76981
Спасибо большое, дорогой анон
333 1176995
>>76973

>Это типа основы?


Типа да

>Вот эти 3 штуки чисто, чтобы редаксокод был красивым и оптимизированным?


Красивым врядли, но оптимизированным.

>redux-actions вкусовщина или рили удобная штука?


Оба варианта верны. Я бы рекомендовал сперва с обычными экшнами разобраться.

>react-redux-router насколько эта хуйня важна, если уже есть обычный роутер?


Важна если ты хочешь что бы переходы тоже отображались в твоем сторе. Что бы можно было просто написать store.dispatch(push('/foo'))

>lodash/ramda отсюда обычные не фпзадроты юзают функций 5-10 же


Зависит от скила
334 1177002
>>76973
Я конечно ФП-задрот, но бери рамду, она реально лучше. Изначальный порог вхождения низкий, постепенно начнёшь юзать больше.

>react-router


Ну это очевидно для SPA. Дам подсказку: SPA — это перехайповавшее дерьмо. В 99% случаев оно нахуй не надо, а требует значимо больше времени и сил.

Но если действительно реалии бизнеса требуют SPA (почти точно нет), то тогда надо разбираться, хуле. Но это далеко не единственная проблема у спа-неудачников.

>redux-thunk/redux-saga/redux-observable


вот из этих трёх я бы рекомендовал миновать нахуй redux-saga. Thunk простой и минималистичный, если его не хватает — тогда пора заботать Observable и начать юзать их. Не пожалеешь, RxJS — мощь.

Ботать можно в таком порядке:
React
React чо-нибудь посложнее
React ещё чо-нибудь посложнее
redux халяву
redux посложнее
redux-thunk

Этого хватит для большинства несложных веб-приложений. На остальное пока забей, напиши чо-нибудь реальное на этом стеке.
335 1177064
>>77002

>ФП


>рамду


>это перехайповавшее дерьмо. В 99% случаев оно нахуй не надо


Пофиксил.
336 1177075
>>77002

>thunk


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

async function set_list() {
const list = await get_data()
store.dispatch({ type: types.SET_LIST, list })
}
337 1177152
Как портировать готовую браузерку под мобилки?
338 1177208
>>76993
спасибо, я просто на тему блокировок решил пожаловаться, так-то я нашел, хотя хз как эти книги юзать, доки + практика обычно лучше заходили, а щее лучше видосы

>>76995
можешь объяснить >переходы тоже отображались в твоем сторе
Это ты типа адресную строку в сторе можно хранить дублируя? и вместо хистори.пуш писать диспатч.пуш? в чем смысл?

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

>>77075
а оно правда работает? Такое норм переиспользовать? а то я не шарю в ес1488
sage 339 1177228
>>77152
Никак, лол.
Надо было сразу под мобилки писать, mobile-first, слышал о таком?
340 1177262
>>77208
Это хорошая книга.
Понятно объясняется куча неочевидных вещей.
Но, надо именно читать, а не просто смотреть примеры кода.

И там есть видео для каждой главы.
Даже с QR кодом, чтобы можно было и из бумажной книги открыть.
Плюс, есть код на гитхабе, естественно.
341 1177297
>>77262
Спасибо.
Ты уже докуда дочитал? Интересно, что в этой книге есть поверх доков реакта, посмотрю мб главу про скейлинг сегодня.

Ребят, подскажите как верстать на реакте, какую структуру файлов выбирать, подскажите кто-нибудь ваш набор либ под сss. Я пока только класснэймс знаю и стайлд-компонентс, но второе лид не разрешил юзать на проекте))

нужны ли либы типа реакт-моушн? почему их вообще юзают люди вместо обычных сss анимаций?
342 1177306
>>77297
пример бы проекта какого-нибудь мидла
343 1177336
>>77297
Ну, учитывая, что её выложили 2 дня назад, а скачал я её вчера вечером, то пока только пролистал и прочёл некоторые понравившиеся места.
Написано хорошим языком, читается легко.
Много объяснений типа "зачем" и "почему", а не просто "как".

Кстати, в своё время я её хотел купить (пока она в MEAP была). У Маннинга бывают регулярно 50% скидки.
Но, прередумал, почему-то.
Я тогда увлёкся Vue, т.к. не был готов погрузиться в глубину современного js тулинга - бабели, вебпаки и прочие радости (у меня java ee backend).
344 1177337
>>77297

>какую структуру файлов выбирать


При наличии библиотек импорта-экспорта — любую выбирай.
А без них — создаётся файл «items.jsx» и сразу же рядом с ним каталог «./items».
345 1177339
>>77336

>не был готов погрузиться в глубину современного js тулинга


А я так и не погрузился, хотя работаю с последним Реактом 16.3.2.
346 1177342
>>77339
В смысле?
JSX не используешь?
ES2015+ тоже?
Flow?

Меня даже не столько сам по себе тулинг смущал, сколько то, что вместо привычной одной jsp страницы + includes из общего каталога, надо городить для каждой страницы целый огород. Я не был морально к этому готов тогда. Ну и jsp само перекомпилируется при изменениях, а тут - надо что-то мутить, и т.д. Но, на самом деле - всё это решаемо.
347 1177346
>>77342
Я уже кидал ссылку, просто не хочу хвастаться...
Взял за основу TodoMVC и запилил из него http://www.r-5.org/books/computers/all-js/

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


Использую обыкновенный JSX Transformer,

>ES2015+ тоже?


Остановился на функции «createReactClass()» чтобы создавать классы с миксинами,

>Flow?


Может и использую, но не догадываюсь что это такое...

>одной jsp страницы + includes из общего каталога, надо городить для каждой страницы целый огород


Как раз библиотеки для импорта-экспорта позволяют всё сложить в один каталог. Но мне лично — не нужно. Я не на том уровне.
348 1177350
>>77346

>Flow?


>Может и использую, но не догадываюсь что это такое...



https://flow.org/
Это приблуда, делающая статическую типизацию в JS.
Что-то вроде Typescript, но для JS.
При транспиляции типы проверяются (и в IDE тоже видно подсказки), а потом выбрасываются из кода, и остаётся чистый JS.

Я им тоже пока не пользуюсь, но планирую начать.
Сейчас использую JS Doc (с обычным ES5) - в IDEA видны подсказки о типах.
Удобно, но, это очень минималистичный вариант.
Например, нельзя нормально задать тип свойства-функции, только просто function. И неудобно всё это писать в куче мелких комментов на каждую переменную, код засирается.

Статическая типизация - must have для большого проекта.
Особенно - делаемого малыми силами.
И не только из-за контроля ошибок.
IDE показывает использование, облегчает рефакторинг и т.д.
Короче - заменяет пару дополнительных макак.

> www.r-5.org/books/computers/all-js/


Да, видел, но не вникал. Надо посмотреть.
349 1177351
Котаны, подскажите пожалуйста, я дерево.
Я изучаю джава скрипт, осилил учебник Кантора.
Задрачиваю react. Собрал свою страничку.

Но я нихуя не могу написать сам, бладж.
Как только нужно написать какую нибудь вещь самостоятельно, какой нибудь сложный компонент с логикой, какое нибудь не обычное меню, допустим все - пиздос, я затупливаю насмерть.
Что почитать мне? JS шаблоны ?
350 1177353
>>77351

>Что почитать мне?


Чужой код.

И чаще писать свой.
Постепенно начнёт получаться.
image.png4 Кб, 436x68
351 1177355
есть вариант как посмотреть трек, не ждав 5 дней?
352 1177360
>>77351
Так и не понятно где именно у тебя тупняк начинается
353 1177398
>>77360
Да что тут непонятного.
Это нормальная ситуация для начинающего, в любом деле.
Умом человек понимает, а на уровне рефлексов - ещё не усвоил.

Поэтому и нужно сначала просто копировать других.
Т.е. переписывать чужой код, потом менять его, потом писать свой. И это требует времени.
Потом будет проще, по мере накопления опыта.
354 1177404
>>77208

>Это ты типа адресную строку в сторе можно хранить дублируя? и вместо хистори.пуш писать диспатч.пуш? в чем смысл?


Смотри. Идеалогия редукса- единое, детерменированное хранилище состояния твоего объекта. В любой момент времени работы приложения ты можешь заглянуть в в стор и понять, что делалось, как получилось это состояние и т.д. Благодаря иммутабельности ты можешь "путешевствовать во времени", ведь тебе надо просто откатить свой стор на n экшнов назад.
И вот вдруг у тебя есть роутер. Он живет своей жизнью, навигация по аппу никак не отражается в хранилище. Ты больше не можешь открыть свой стор и получить 100% инфу о приложении. Ты не можешь точно понять, что пошло не так если оно вдруг пошло. В этом и суть.
Ну а если на практике:
во-первых ты не дублируешь хистори. Это хистори теперь получает инфу из редакса.
во-вторых тестирование. Ты можешь легко написать тест на переход, просто сделав диспатч в фейковый стор и сравнив состояние. Т.е. твоя бизнес логика подчиняется общим правилам, а не живет где то сама

>я наоборот не понял ничего в танках, в сагах конечно тоже генераторы какие-то


Все просто на самом деле. Thunk - мидлваря которая чекает тип экшна. Если видит что пришла функция - вызовет эту функцию и передаст ниже результат работы функции. Пихаем туда промис и получаем свои асинхронные действия.
Saga - в корне иной концепт. Это такой большой брат, который слушает экшны. Каждая сага - это генератор, тоесть она висит в подвешенном состоянии и ждет. Как только поступает экшн, который ждет эта сага - она запускается и отрабатывает. Что она будет делать - вообще что угодно. Это один из минусов саги - она слишком мощная, она может пустить что угодно куда угодно, например записать данные в стор взяв их из того же стора (считается антипаттерном), может запустить в бэкграунде любую операцию, или кучу операци. Может задиспатчить любые экшны с любыми данными. Считай это отдельный слой с бизнес-логикой.
thats all.jpg170 Кб, 960x640
355 1177429
Анон, я вкатываюсь в JS с C++, потому что в моей мухосрани 10 вакансий для крестухов против 66 вакансий для веб-макаки. Посоветуй ресуры и задачи для:

1) Изучения JS
2) Лучший фреймворк для тестирования
3) Фреймворки типа JQuery, которые точно пригодятся в работе
4) Тулзы для разработки
356 1177438
Пытаюсь понять как работает метод reduce.

На http://learn.javascript.ru/array-iteration написано одно, а на mdn совсем другое - https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/Reduce

Почему так?
357 1177442
>>77438
Лень вчитываться в эту хуйню, в чём ты увидел разницу, вроде одинаково всё?
358 1177444
>>77438
все там правильно написано
метод идет по массиву и для каждого элемента вызывает колбек. В колбек поступает результат вызова этой же функции для предыдущего элемента, а по заврешению то что сделала функция становится предыдущим результатом для следующего и так до конца.
Например можно трансформировать массив в объект
arr.reduce((prev, key) => (
...prev,
[key]: 'some value'
), {});
или сложить все числа в массиве
arr.reduce((sum, next) => sum + next, 0)

>>77429
1) learn.javascript.ru, Eloquent Javascript, JavaScript-Garden
2) Mocha + Chai
3) React, Lodash, Nodejs
4) VSCode/Webstorm
359 1177445
>>77444
arr.reduce((prev, key) => ({
...prev,
[key]: 'some value'
}), {});

скобочки забыл
самопочин
360 1177449
>>77398
Спасибо бро. Вообщем не стесняться ковырять чужой код. А то я упорот сам перерешал большинство задач с учебника кантора. Мой первый слайдер картинок - это было что то монструозное, с кучей обработчиков событий и отменой обработчиков событий пока идёт анимация
361 1177465
>>77444
Спасибо за разъяснение, анон.
362 1177467
>>77449
на codewars себя не пробовал?
решаешь задачу, когда решишь - смотришь топ лучших решений этой задачи
правда иногда унизительно смотреть на чужое решение в пару строк кода, а потом на свой абзац говноперфоманса. Зато многие трюки для себя открываешь.
363 1177492
>>77467
Попробую. Знания какие то есть по js , а практики не хватает соаювершенно. Вот разобрался я как допустим итераторы работают. А хули с этого толку? ) Или вот - понятны мне промисы, а я на колбеках ниче путного не напишу. Короче попиздую на кодеварс
 .webm5,1 Мб, webm,
420x315, 1:32
364 1177501
Вечер в хату, шебмы, заясните за тжри вопроса.

1) Поясните, то, как открываются шебмы это и есть HTML5-стриминг видео?
Ну или как здесь - http://easyhtml5video.com/assets/video/new/Penguins_of_Madagascar.webm
вместо того, чтобы скачать файл, браузер открывает приблуду для воспроизведения видео.

При этом сервер отвечает не просто http 200, а 206 partial content и заполняет хедеры типа Content-Range, заясняя за количество байт. При этом если двинуть ползунок воспроизведения, то браузер отправляет гет, заполняя реквест хедер Range:bytes=4653056- поясняя с какого байта давать контент.

2) Как это реализовано на стороне сервера? Просто метод в контроллере, который хавает передаваемый Request и отдает реактивный стрим байтов под знаменем http 206, а браузер уже сам разбирается куда эти байты пихать?

3) Откуда сервер узнает размер буфера после заполнения которого надо остановить передачу байтов? Я открываю видео, передается request bytes 0- и все. При этом весь файл не скачивается.
365 1177503
>>77208
все работает, на проде. но есть сомнения, может я что то не так делаю? сомнения появились почитав про эти саги и танки - ну не зря же их люди запилили!?
15211290360310.jpg25 Кб, 480x385
366 1177507
>>77503
upd. но почитав про саги и танки не уловил какого то сакрального смысла в их использовании, это же ведь просто сахар? или я не прав?
короче сомнения
367 1177548
>>77507
>>77503
Данилка для вас все расписал
stackoverflow.com/questions/35411423/how-to-dispatch-a-redux-action-with-a-timeout/35415559#35415559
368 1177581
>>77404
Спасибо теле большое, анон, вот я никогда не заглядывал в стор, чтобы понять, что делалось, как путешествовать во времени в редаксе то вообще, я ни в каком гайде не видел кнопку реду анду? И как иммутабельность этому помогает, редакс что сохраняет ссылки на все старые объекты в памяти? Это же дохуя ресурсов тратится.
369 1177582
>>77581
Поставь redux-devtools, там есть слайдери много чего еще

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


В этом суть иммутабильности. Дохуя ресурсов не тратится потому что эти сторы тащем то довольно маленькие объекты. Ты же не милион записей копируешь.
370 1177616
Пиздец я сегодня напердолился. Вкратце, суть: в зависимости от того, как назначаешь свойство объекту, свойство может измениться У ВСЕХ объектов в массиве на заданное.

Пытался повторить, но че-то не получилось, в консоли браузера все работает как надо. Хотя я не копировал данные идентично тем, с которыми работал, потому что заебался это дебажить. Код упростил по-максимуму. Собственно, вот он:
[code]
const position = { x: 0.123, y: -0.123, z: 0.321 }

const updatedImage = {
id: image.id,
url: image.url,
title: image.title,
cameraPosition: {
x: pos.x,
y: pos.y,
z: pos.z
}, // - this works
wtf: pos, // - this will be updated for ALL images that has this property, HOW IS THAT POSSIBLE?
wtfspread: { ...pos }, // - this works
};

images[index] = updatedImage
[/code]

Че за хуйня, двач? Это бабелепроблемы или я неправильно пользуюсь жабаскриптом? Ладно бы там ошибку какую кидал, но это же просто какое-то безумие, я меняю только один объект (пробовал и object.assign'ом, чтобы не мутировать - та же хуйня), какого хуя он трогает остальные?
371 1177617
>>77616
pos = position
372 1177618
Можно ли как-то на маке дать возможность ноде запускать сервер на <1000 портах (в частности, конечно, 80 и 443 интересуют) без рута/sudo каждый раз? Аналога линуксового libcap2 для posix 1003.13, с которым, вроде как, можно настроить такие отдельные привилегии, я что-то не нашёл.
373 1177636
374 1177670
>>77582
Ну а если в сторе ссылка уже пропала, объект не нужен, его же сборщик мусора собрать должен? Неужели редакс внутри как-то ПРЯМ ВСЁ это оставляет?

Почему в обычном апи редакса нет реду-анду, те иммутабельность в редаксе дает возможность делать свои анду-реду, но не дает какого-то бойлерплейта?
375 1177671
>>77670
Редакс даёт тебе минимальный скелет.
376 1177682
Накатал тут скрипт для вытягивания данных со страниц. С помощью какой либы это тестировать? Буду добавлять другие страницы - не хочу сломать что-то в старых. На входе у меня мой скрипт и сохраненные html-ки. В инфраструктуре js не разбираюсь - потому спрашиваю.
377 1177686
>>77670

>те иммутабельность в редаксе дает возможность делать свои анду-реду, но не дает какого-то бойлерплейта?


Это делается через композицию редьюсеров.
Что вполне нормально - юникс вей, вот это вот всё.
Зачем раздувать?
https://github.com/omnidan/redux-undo
378 1177762
>>77429
JQuery это не фреймворк, а библиотека.
379 1177888
>>77762
реакт тоже 0)0))
380 1177899
>>77888
А если с редаксом то уже фреймворк!
381 1177907
Как поместить в хтмл5 холсте повторяющееся изображение, чтобы можно было менять его координаты?
382 1177910
>>77907
Олсо нужно для игры. Не знаю вообще правильный ли это подход, если нужно чтобы была текстура пола, и по ней ходить.
383 1177955
>>77682
Ну где же вы сениоры, сениоры, сениоры?
phantomjs + karma (как тест-раннер, как я понял) подойдут?
384 1177982
>>77955
Nightwatch.js
385 1177991
>>77982
version 0.9.20
ну ёб твою
386 1178009
>>77910
Попробуй вот это читни, там 52 страницы всего:
http://www.allitebooks.com/instant-html5-2d-platformer/

И вот это:
http://www.allitebooks.com/pro-html5-games-2nd-edition/

Ну и в гугле полно туториалов по играм на канвасе можно найти.
387 1178039
блин я так и не понял зачем нужны saga и thunk для редакса. можете пояснить по хардкору?
388 1178046
кстати недавно сделал такую хуйню и никто не умер: унаследовал компонент переопределив его методы с вызовом super(); незнаю как для вас, а для меня это открыло js как язык на котором оказывается можно писать больше чем туду)
389 1178060
>>78009
Не, это слишком. Как сделать повторяющуюся картинку?
390 1178064
>>78060
это, погоди, а вчем трабла? берешь картинку какбэ и повторяешь с таймаутом
391 1178071
>>78064
Это медленно будет и непонятно как двигать по координатам. Если координаты отрицательные, то вообще будет ошибка?
392 1178073
>>78046
иди гугли composition over inheritance
если коротко - в этом просто нет смысла, если мы говорим про реакт
393 1178179
>>78071
Зачем ты это вообще спрашиваешь? Возми и захуячь картинку с отрицательными координатами, и увидишь что будет. Это делается за минуты. Зачем ждать часами или днями пока тебе тут кто-то ответит?
394 1178217
>>77501
Разобрался со всем сам. Хуй на вас ложить.
395 1178303
Не заходил в интернеты дохуя месяцев. И вот решил дай думаю че хорошего есть. Наткнулся на ангуляр2, установил. Аноны я влюбился, реально сердечко заколотилось. Ахуел как майкрософты из говна(js) слепили конфетку(ts) и гугловцы из этой конфетки захуярили пряночный домик(angular). Прямо сразу как увидел, хуец привстал. Такой стояк только на джабку до этого был.
Короче дальше рассказываю, покапался немного в ангуляре, наткнулся на проблему что так как все динамическое, это счастье нихуя не индексируется. Ну ок, загуглил юниверсал, что сервер скармливал статику. Таким образом на node.js вышел. Ну думаю хули нет, стоит того, тоже посмотрю что да как. Вещь перспективная, к тому же дохуя плюсов что один язык, кроссплотформенность. Короче и правда, вдруг js - язык будущего, а я как даун с пыхом работаю. Ну ок значит, захожу на ноджс первым делов вижу var module = require("module"); Немножко подташнило, но сдержался, дальше вроде как полегче и привык получше. И не такое на пыхе видал в свое время.
Ну вот балуюсь с нодом и тут вспоминаю что я ебанное нубло с чистым жсом и что дальше жквери мои руки не доходили. Ок думаю, недело быть фулл js девелопером и не знать что там под копотом происходит.
Решил отложить мою красавицу ангуляр и как говориться опуститься на дно. Скачал книжку https://www.amazon.com/Secrets-JavaScript-Ninja-John-Resig/dp/1617292850 и читаю.

Как же мне хуево аноны, я прямо сразу вспомнил почему я это говно дальше пятиметровой палкой в виде jquerry не трогал. Вот почему как читаешь книжку про жаву это как изучать тело молодой красавицы, порой сложно но сука приятно и когда изучил на душе хорошо и красиво. А когда блять изучаешь ебанный джаваскрипт это как изучать тело франкинштейна, никакой элегантности блять, зато куча АХУЕННЫЙ ФИШЕК СВОЙСТВЕННЫХ ЯЗЫКУ(ебанутой хуйни). На 1 блять фичу 10 кастылей которые блять есть потому что а хули бы нет.

Короче 1/4 книги прошел, вроде как и понятно что к чему, но никакого чувства прекрасного на душе как при изучении жабочки и близко нет. До этого я в этом болоте на мели плавал, а щас погружаюсь на дно. Может конечно со временем привыкну, но хз. Но пока запашек то вокруг меня стоит злавотненький и дышать тяжеловато...
395 1178303
Не заходил в интернеты дохуя месяцев. И вот решил дай думаю че хорошего есть. Наткнулся на ангуляр2, установил. Аноны я влюбился, реально сердечко заколотилось. Ахуел как майкрософты из говна(js) слепили конфетку(ts) и гугловцы из этой конфетки захуярили пряночный домик(angular). Прямо сразу как увидел, хуец привстал. Такой стояк только на джабку до этого был.
Короче дальше рассказываю, покапался немного в ангуляре, наткнулся на проблему что так как все динамическое, это счастье нихуя не индексируется. Ну ок, загуглил юниверсал, что сервер скармливал статику. Таким образом на node.js вышел. Ну думаю хули нет, стоит того, тоже посмотрю что да как. Вещь перспективная, к тому же дохуя плюсов что один язык, кроссплотформенность. Короче и правда, вдруг js - язык будущего, а я как даун с пыхом работаю. Ну ок значит, захожу на ноджс первым делов вижу var module = require("module"); Немножко подташнило, но сдержался, дальше вроде как полегче и привык получше. И не такое на пыхе видал в свое время.
Ну вот балуюсь с нодом и тут вспоминаю что я ебанное нубло с чистым жсом и что дальше жквери мои руки не доходили. Ок думаю, недело быть фулл js девелопером и не знать что там под копотом происходит.
Решил отложить мою красавицу ангуляр и как говориться опуститься на дно. Скачал книжку https://www.amazon.com/Secrets-JavaScript-Ninja-John-Resig/dp/1617292850 и читаю.

Как же мне хуево аноны, я прямо сразу вспомнил почему я это говно дальше пятиметровой палкой в виде jquerry не трогал. Вот почему как читаешь книжку про жаву это как изучать тело молодой красавицы, порой сложно но сука приятно и когда изучил на душе хорошо и красиво. А когда блять изучаешь ебанный джаваскрипт это как изучать тело франкинштейна, никакой элегантности блять, зато куча АХУЕННЫЙ ФИШЕК СВОЙСТВЕННЫХ ЯЗЫКУ(ебанутой хуйни). На 1 блять фичу 10 кастылей которые блять есть потому что а хули бы нет.

Короче 1/4 книги прошел, вроде как и понятно что к чему, но никакого чувства прекрасного на душе как при изучении жабочки и близко нет. До этого я в этом болоте на мели плавал, а щас погружаюсь на дно. Может конечно со временем привыкну, но хз. Но пока запашек то вокруг меня стоит злавотненький и дышать тяжеловато...
396 1178316
Ркн заблочил jsfiddle это пиздец, товарищи эту страну уже ничего не спасет.
397 1178317
>>78316
расстрелы спасут
398 1178320
>>67958 (OP)
Посоветуйте, как правильно вкатываться в веб после C++. Что учить сначала, что потом? Какие проекты писать? Где учиться бест практисам?

Сейчас я изучаю голый JS. Сам язык довольно простой после C++. Как выучить фреймворки и потратить несколько месяцев до поиска работы наиболее эффективно?
399 1178321
>>78320
Алсо, пишу todo-list на голом JS+HTML/CSS. Как улучшить свой проект до уровня продакшн?
400 1178322
>>78321
а с бекендом что у тебя? Nodejs?
401 1178328
Что считаете насчёт Академии Яндекса?
У них там 4 интенсива: вёрстка, тестирование, жс и аппликашки.
402 1178331
>>78322

>Nodejs?


Да.
403 1178345
>>78331
ну если с чистым джесом разобрался можешь фреймворк себе подбирать. https://medium.com/unicorn-supplies/angular-vs-react-vs-vue-a-2017-comparison-c5c52d620176
Олсо, у тебя твой пробный проект без перезагрузки страницы или с? Если с перезагрузкой, то смотри Ajax сначала.
А так хз что еще, просто идешь в гугл и смотришь как надо и как у тебя получилось. Тут велосипед изобретать не надо, это все довольно поточно.
404 1178412
Подскажите иду ли я по правильному пути, курю хтмлакадеми базовый интенсив и параллельно учу инфу с learn.javascript.ru, но мне кажется, что я где-то проебываюсь, че еще читать/смотреть, чтобы стать ахуенным
405 1178413
>>78412
Правильно. Как докуришь эти вводные курсы, уже смотри в сторону.
406 1178417
>>78303
У меня примерно такие же чувства были, когда я изучал JS. Язык грязный и не элегантный, но потом привык, хотя все равно не долюбливаю его. Ну это как с запохом говна, сперва сильно воняет, потом через какое-то время привыкаешь, но говно остается говном.
407 1178489
>>78417

>Ну это как с запохом говна, сперва сильно воняет, потом через какое-то время привыкаешь, но говно остается говном.


Нупомнило C++.
408 1178519
Здраститя.

Допустим есть вебсайт, который отдает инфу по ссылке вида https://site.com/name=pisya1. Как мне считать раз в день допустим три имени сразу pisya1, pisya2, pisya3 и получить хтмл этих сраничек? Как вообще приступить к тако проблеме? Жс тут поможет?
409 1178526
>>78519
Лол ну ты явно ньюфаг, такая банальная проблема. Если ты хочешь за кем-то вконтакте следить, то для этого уже есть готовые программы.
410 1178535
>>78526
Нет, ничего такого, это по игре проверять несколько профилей. На самом деле я когда-то доходил до абстрактных классов и прочего, даже сам писал что-то, но это было давно.
411 1178565
>>78535
Для начала почитай и разберись как работают паттерны, прототипы, замыкания, асинхронный код.
412 1178571
>>78519
Для любого современного ЯП есть парсер html.
413 1178574
>>78565
Мне нет необходимости учить язык или его нюансы для решения одной конкретной практической задачи. Достаточно сказать название функций или как гуглить подобное.

>>78571
Мне не нужно парсить хтмл, мне нужно его получить.
414 1178578
>>78574

>получить


curl.exe
415 1178587
>>78574
В любом современном ЯП есть http клиент.
416 1178589
>>78519
тут скорее питон поможет
и cron
417 1178640
>>78519
Python + Scrapy
418 1178695
Язык будущего как он есть:

0.1 + 0.2 → 0.30000000000000004
0.1 + 0.2 === 0.3 → false // ???

x = 1.0000000000000001
x === 1 → true // ???

typeof NaN → "number" // NaN is a number??? But...
NaN != NaN → true
NaN !== NaN → true

isNaN('hello world'); // returns 'true'.
Number.isNaN('hello world'); // returns 'false'.

[] + [] → "" // Empty string? These are arrays!
[] + {} → [object object]
{} + [] → 0 // Why isn't the operation commutative???
{} + {} → NaN // ???

16 == [16] → true // Array converted into string, then into number
16 == [1,6] → false // But what is array converted into?
"1,6" == [1,6] → true

var arr = [];
arr.length → "0"
arr[3] → "undefined" // No array bounds exception???
arr[3] = "hi";
arr.length → "4" // 4??? Only one element has been added!
arr["3"] → "hi" // Apparently "3" is coerced into a number

delete(arr[3]);
arr.length → "4" // 4??? There are no elements in the array!
arr[3] → "undefined" // 7 lines above, length was "0"!

var i = 1;
i = i + ""; // Oops!
i + 1 → "11"
i - 1 → 0

var j = "1";
j++ → 2 // Okay, but...

var k = "1";
k += 1 → "11" // What???

[1,5,20,10].sort() → [1, 10, 20, 5] // Why is it sorting strings???
xs = ["10", "10", "10"];
xs.map(parseInt) → [10, NaN, 2] // ???
y = {};
y[[]] = 1;
Object.keys(y) → [""]
418 1178695
Язык будущего как он есть:

0.1 + 0.2 → 0.30000000000000004
0.1 + 0.2 === 0.3 → false // ???

x = 1.0000000000000001
x === 1 → true // ???

typeof NaN → "number" // NaN is a number??? But...
NaN != NaN → true
NaN !== NaN → true

isNaN('hello world'); // returns 'true'.
Number.isNaN('hello world'); // returns 'false'.

[] + [] → "" // Empty string? These are arrays!
[] + {} → [object object]
{} + [] → 0 // Why isn't the operation commutative???
{} + {} → NaN // ???

16 == [16] → true // Array converted into string, then into number
16 == [1,6] → false // But what is array converted into?
"1,6" == [1,6] → true

var arr = [];
arr.length → "0"
arr[3] → "undefined" // No array bounds exception???
arr[3] = "hi";
arr.length → "4" // 4??? Only one element has been added!
arr["3"] → "hi" // Apparently "3" is coerced into a number

delete(arr[3]);
arr.length → "4" // 4??? There are no elements in the array!
arr[3] → "undefined" // 7 lines above, length was "0"!

var i = 1;
i = i + ""; // Oops!
i + 1 → "11"
i - 1 → 0

var j = "1";
j++ → 2 // Okay, but...

var k = "1";
k += 1 → "11" // What???

[1,5,20,10].sort() → [1, 10, 20, 5] // Why is it sorting strings???
xs = ["10", "10", "10"];
xs.map(parseInt) → [10, NaN, 2] // ???
y = {};
y[[]] = 1;
Object.keys(y) → [""]
419 1178698
>>78695
Ты забыл что сложение происходит как стринги, но остальные операции как инты.
420 1178725
Вы все черти.
421 1178726
>>78695
Сразу видно, что на других языках ты тоже не писал.
точность.png23 Кб, 673x380
422 1178751
>>78695

>0.1 + 0.2 → 0.30000000000000004


>0.1 + 0.2 === 0.3 → false // ???


>


>x = 1.0000000000000001


>x === 1 → true // ???



Это не проблема языка, а проблема точности чисел с плавающей точкой. Javascript по дефолту использует для всех чисел тип double (8 byte) что в принципе не плохо, так как если бы они решили сделать float (4 byte) дефолтным, то было бы еще хуже. Вот на пике пример с double в C++, там точно так же. А остальные твои примеры, да - это пидерастия языка.
423 1178765
>>78695
Забавно наблюдать, за рассуждениями человека, не знающем о двойной точности, и при этом возмущающимся о проверке выхода за границы массива. В динамическом, мать его, языке.

Откуда столько даунов. Откуда они просто лезут вот.
424 1178766
>>78695
Используешь компилятор
@
Забываешь об этом кошмаре
VS.mp4136 Кб, mp4,
480x360, 0:14
425 1178777
>>78695
Кстати вот еще, Visual Studio дает подсказку, какое значение имеет числовой литерал на самом.
426 1178878
кто поможет устроиться на работу?
427 1178884
>>78878
Бог поможет.
428 1178886
>>78884
а он тоже программист?
429 1178888
>>78886
да, а вселенная - одна большая симуляция и галаграма. Ты из пещеры что ли ток вылез?
430 1178893
>>78888
уга уга уга

так что там с работой? есть чего? нет? так зачем это программирование?
431 1178898
>>78893
зачем это программирование?
Для саморазвития и удовольствия
432 1178901
и еще надо спросить...
есть вот понятие синхронизирование данных. это со стороны бэкэнда решается (вебсокеты)? или со стороны фронтэнда тоже можно решить?
взять двачи. тут автообновление есть. это интервал между реквестами? и реквест при нажатии "обновить тред"?
я пользуюсь ангуляром, как с этим дела обстоят в реакте?
>>78898
то есть вы тут как хобби это воспринимаете? но работающие тоже есть наверное?
433 1178903
>>78901
есть 3 способа
1) long poling
2) server sent events
3) websocket

гугли @ выбирай
434 1178906
>>67958 (OP)
Пишу Todo List. Какой модный фреймворк и паттерн можно использовать для такого веб-приложения? И как это запилить? Написал проект на чистом JS, теперь хочу сделать что-то продакшн уровня.
435 1178907
>>78901

> работающие тоже есть наверное


Мы тоже как хобби это воспринимаем.
Иначе программировать не выйдет.
Это тебе не мешки ворочать. Тут надо быть увлеченным.
436 1178908
Как в ебучем Visual Studio Code поменять цвет текста на белый? Меня устраивает профиль Dark+, функции желтые, классы зеленые и тд., но все остальное голубого цвета, галаза режет. Я хочу именно этот текст сделать белым.
437 1178909
>>78907
деньги давай говорю!!! деньги! жрать хочу!
438 1178910
>>78886
Чем ты отличаешься от программы?
439 1178912
>>78910
был бы я программой, меня бы не пустили в продакшн
440 1178913
>>78912
Ты ахуеешь от того, сколько программ пишется в продакшн сразу. именно так написана бОльшая часть всего.
441 1178915
>>78913
ну тогда какого хера нет работы???
442 1178917
>>78915
Она есть.
Видимо просто ты работник херовый.
443 1178918
>>78903
это всё для бэкэнда?
>>78917

>ты


нет ты! только что у тебя был девиз "хуяк-хуяк и в продакшн" а тут вдруг скрючил ебальник "ты херовый".
444 1178920

>давай работу


>бог подаст


>ну вот... работы значит нет


>она есть, ты херовый


>давай тогда раз есть


>бог подаст


...
445 1178921
>>78918

>хуяк-хуяк и в продакшн


Это было не о работе.
Тебе рассказать как были написаны первые версии всего самого популярного? И как они писались до тех пор, пока не стали популярными?
446 1178923
>>78921

>Тебе рассказать


работу (а лучше сразу деньги) давай, сказочник!
РАБОТЫНЕТ.png87 Кб, 1145x1001
447 1178924
>>78915

>какого хера нет работы???

448 1178925
>>78923

>работу (а лучше сразу деньги) давай, сказочник!


Хуи сосешь?
449 1178926
>>78924
3 вакансии на весь мир?
450 1178929
>>78921

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


Одноклассники.ру?
451 1178930
>>78924
и че?
введи конкретную роль + фреймворк + регион + стаж
сколько останется? 10? 3?
тысячи просмотров резюме... бесполезных.
работу давай а не скриншот.
452 1178931
>>78925
ты? ты сосешь...
453 1178932
>>78930
Мы вам перезвоним.
454 1178933
раз уж анон поднял тему работы, у меня 2 вопроса
1) какой js стак самый популярный(=больше всего вакансий, проще найти работу)? Я так понимаю это MEAN?
2) какой самый перспективный. А то я собрался express/angular2 учить, а тут говорят что он неоч.
455 1178934
>>78929
линукс, дос, фейсбук, гугл, яндекс, вк, ffmpeg, etc
456 1178935
>>78924

>ведущий


>senior


>middle/senior


или еще лучше: в новосибирске за 15 тысяч рублей программистом xD
457 1178937
насколько перспективны поиски работы за границей? ну чтоб не сталкиваться с русскими пидорасами, у которых работа есть, но они её тебе не дадут, потому что не для тебя их роза цвела...
458 1178938
>>78908
Ну помогите мне.
image.png754 Кб, 1557x971
459 1178939
>>78935

>новосибирске

461 1178942
>>78940

>google.ru


Запрещена на территории Российской Федерации.
462 1178944
>>78942
хуево че, переезжай вна украину
463 1178946
>>78939
ты ебанутая сельдь, работающая в hh?
никто не платит 90 тысяч. это замануха. в москве 60, не в москве 30. вот так дела и обстоят. я работал, я знаю. меня бесят такие вот энтузиасты-активисты-пионеры-поцреоты которые говорят что все заебись, хотя сами нихуя не пробовали даже делать и сидят на какой-нибудь халяве!
464 1178947
>>78944
Украина это один из областных центров Российской Федерации.
465 1178948
>>78940
https://code.visualstudio.com/docs/getstarted/theme-color-reference
Да там сотни параметров, я не могу найти тот который мне нужен.
466 1178950
>>78946
Нет. Я фрилансер с 12ти летним опытом и доходом от сотки в месяц. Мне твоих проблем не понять. Ной дальше.
467 1178951
>>78950
ты хуисос и пиздобол. мне тебя не понять. ной дальше.
468 1179008
>>67958 (OP)
использую js для написания игр на phaser, задумываюсь об изучении backend разработке на js и о поиске работы проггером. но смотрю вакансии в своем городе - на чистого бэкенд js проггера их почти нет, только php. в основном frontend и fullstack. при этом frontend как область меня совсем не притягивает. что посоветуете? стоит ли обращать на этот факт внимание или забить и в ус не дуть и изучать nodejs? насколько я понимаю, популярность php сильно падает и серверную часть переписывают на node.
b3QA1RscesA.jpg168 Кб, 1280x855
469 1179030
>>79008
У меня аналогичный вопрос Бро. Стою на перепутье. Вообще знания у меня уровня html, css, js, jquery, bootstrap, google vizualisation и т.п. планировал изучить питон с Джанго, т.к. веб привлекает, но все вакансии в моем мухосранске - Красноярске сводятся к знаниям 1с битрикс и php. Не хотелось бы к этому прикасаться, но видимо придется. И не думаю, что php умрет. Если умрет, то явно не скоро
470 1179033
>>79008
>>79030
Как опытный веб-программист скажу вам, что пыха сейчас наоборот только набирает популярность, в отличие от жс. Так что вам, господа, стоит осваивать такие технологии как PHP, WIX, Wordpress, Joomla.
471 1179042
>>79033

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


Чем это можно объяснить. Алсо можешь рассказать какого плана работы делаются на пыхе? Я так понимаю крупные объекты на пыхе не делают?
472 1179048
>>79042

>Я так понимаю крупные объекты на пыхе не делают?


Кто тебе такое сказал?
И что ты там собрался, свой локальный фейсбук делать?

Чёт вспомнил ОПа этого треда и проиграл.
473 1179053
>>79048
Оп этого треда пропал тредов 10 назад. Тред уже давно перекатываю я.
474 1179054
>>79033

> WIX


Перетолстил
475 1179055
>>79033

>пыха сейчас наоборот только набирает популярность



Если это действительно так, то единственная причина - то, что сайты (представительские) понадобились тем, кому они раньше не были нужны, т.е. совсем уж мелким конторам.
Ну и, возможно, больше мелких торговых контор стали хотеть торговать через интернет.
Естественно, они могут себе позволить только пыху.
476 1179056
>>79033

>Joomla

477 1179057
>>79056
Wix, ucoz
478 1179058
>>79057
frontpage, narod.ru
479 1179061
>>79033
Кому ты пиздишь?
480 1179064
>>79061
А что, не так?
4IOfRd0YvA.jpg68 Кб, 768x512
481 1179065
Господа, друзья, товарщи! Помогите мне разобраться с дочерными и родительскими элементами в ДОМе, это какое-то проклятие, я нихуя не понимаю, где нормально почитать про это можно? У кантора нихуя не понятно, как будто гугл перевод спеки читаю.
Ну вот взялся я писать валидацию формы.
http://plnkr.co/edit/eqwfZwFGXZBGMljbCaUy?p=preview
Написал, показал корешу фронтендеру, он говорит ты малацца, но это хуита слишком частная, перепиши всё так, чтобы ты свою валидацию мог применить на любой форме, скелет.

"Ща попробую описать.
1. Добавляшь элементам формы атрибуты типа rule-required or rule-email
2. Вызываешь новую версию функции валидэйт и передаешь ей в качестве аргумента идентификатор формы.
3. Функция валидэйт получает по индентификатору форму, затем ищет в ней все дочерние инпуты и пробегается по ним в цикле. Для каждого инпута проверяет имеет ли он атрибут element.hasAttribute(attName);
Если атрибут есть, то валидируем значение инпута в соответствии с атрибутом, если нет, проверяем на наличие еще какого-нибудь атрибута и так пока не проверим все атрибуты для всех инпутов.
Если ты это сделаешь, то сможешь вынести функцию validateForm в отдельный файл и подключать ее к любым формам. В формах просто будешь добавлять атрибуты к полям, которые нужно валидировать. ПРОФИТ
и не надо прописывать логику каждый раз"

А я блять нихуя не понимаю. Я понимаю что моя валидация тупой дроч достукиваться к каждому инпуту и т.д. Но как сделать это нормально я хз. Помогите ссылкой хоть, где про это почитать можно еще, желательно с примерами и разъяснениями. Может я что-то где-то недочитал по теории раньше? Что мне блять делать?
482 1179067
>>79064
Не так. И впредь, намотай себе на ус, что вводить в заблуждение это не достойно и если твоя мать шлюха, а отец педофил, то в этом никто кроме тебя не виноват.
483 1179068
>>79057зарабатываю на ucoz 100000к овер секонд, от денег уже тошнит. Можете задавать свои вопросы.
484 1179069
https://pastebin.com/TA70reWT
Объясните почему этот код всегда будет выдавать 10, не могу разобраться че-то
485 1179070
>>79068

>Можете задавать свои вопросы


Чему равна скорость Светы в вакууме?
486 1179072
>>79069
по идее ведь функция вызывается во время работы цикла, и пока она не исполнится i не должно увеличиваться
487 1179073
>>79069

>https://pastebin.com/TA70reWT


потому что переменная i объявлена как var то есть не имеет блочной области видимости. А следовательно, на момент вызова функции отложенной в эвентлупе, она будет равна 10.
488 1179074
>>79067
Да я просто левый чел. Решил спросить. Просто самому интересно что учить, чтобы деньги всегда были
489 1179075
>>79072
Замени var на let и удивись.
Потом слходи прочитай про области видимости переменных и что такое event-loop.
490 1179077
>>79073

> >https://pastebin.com/TA70reWT


> потому что переменная i объявлена как var то есть не имеет блочной области видимости. А следовательно, на момент вызова функции отложенной в эвентлупе, она будет равна 10.


А если вместо var выставить let, то что выведет?
мимо
491 1179078
>>79077
Переписать 3 буквы и запустить в бровзере пиздец сложно.
492 1179079
>>79065
Ну так у тебя эе описан алгоритм, вот его и реализуй. В твоем коде ты каждый инпут берешь по его id отдельно и потом каждый по отдельности чекаешь. А тебе надо переписать так, чтобы ты брал инпуты вообще все, не по идентификатору, а например по тегу,а еще лучше по классу там своему в завиимости от типа проверки. Проходил по всем элементам в цикле и проводил свою валидацию. Что тебе не ясно. Как работают css-селекторы? Или как циклы?
493 1179083
>>79065
нахуй тебе вообще на фронтэнде валидация? 2 раза писать один и тот же код, посылай это на бекенд, и чтобы через джесон возвращал прошла ли валидация. Может ты в курсе, но на всякий случай скажу, что ты НЕ можешь делать валидацию только на фронтэнде, тебе все тоже самое обязательно надо делать на бекенде.
Если по твоему коду, то
- убери нахуй это спагетти из ифов и элсов
- для кажого поля сделай свою функцию с параметром(string) который хочешь валидировать, а не из глобального пространства брать.
function checkField(value){
//
}
494 1179084
495 1179085
>>79083

>нахуй тебе вообще на фронтэнде валидация? 2 раза писать один и тот же код, посылай это на бекенд


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

Валидация на клиенте еще как нужна.
А на бэке валидируют всю форму целиком сразу и лишь один раз.
496 1179086
>>79078
А я может с телефона, а скачивать js run с play market не умею. Что тогда?
497 1179087
>>79053
Ну я имел в виду тюпина, думаю все это поняли.
498 1179088
>>79086
На телефоне сайты не открываются уже? Ты умственно-отсталый?
89bf726c32d3aa6a9336f640bbbc33952014-12-2006-07-45.jpg57 Кб, 504x334
499 1179090
>>79079
да вроде ясно как работают цсс селекторы, не ясно как это всё завернуть в циклы со всеми этими апенд чайлдами и прочим. Мне бы на примере посмотреть или чтобы добрый анон показал
500 1179091
>>79090
Ну жди, может дождешься кому не лень, запилить тебе экземпл.
501 1179093
>>79085

>Ахуенно наверное


Мне ахуенно, часто у тебя юзеры будут логин/пароль вводить? Ты наверно еще за голову хватаешься когда о какой-нибудь хуйне типо динамического поиске слышишь где запрос на каждую букву происходит.
502 1179094
>>79090
чёт говнокод какой-то, даже лень править такое говно
ты в седьмом классе?
8697333.gif81 Кб, 360x288
503 1179095
504 1179096
>>79088
Знаешь, копировать код и затем еще jsfiddle искать и потом что то менять очень муторно. Легче спросить
505 1179097
>>79094
В седьмом классе в доту играют и вебом не занимаются
506 1179102
>>79097
т.е. ты уже в восьмом?
14938113972950.png114 Кб, 1307x1484
507 1179104
>>79097

>вебом


>этот говнокод уровня семиклашки из деревни

508 1179107
>>79074

>что учить, чтобы деньги всегда были


В преферанс научись играть.
Или в бильярд.
509 1179109
>>79107

> В преферанс научись играть.


> Или в бильярд.


Такое себе
510 1179141
>>79093
>>79083
Не слушайте дауна. Очевидно ты ничего более лендосика под ключ на вордпресе в своей жизни не делал.
Валидация должна быть на фронтенде и на бекенде. На бекенде даже ты понял зачем.
На проектах с посещаемостью больше 100 человек дергать сервер на каждый запрос это очень хуево. Нагрузка на сервер растет в геометрической прогрессии. Любой васян сможет заддосить твой сервер через такую форму. И это все лечится просто микроскопическими по своей сути методами, вызовом пары функций на клиенте.
511 1179149
>>79141

>через такую форму


Ну давай поясняй умник чем ддос на /api с проверкой формы отличается от любого ддоса на другой адрес, например отгрузки данных.
sage 512 1179186
>>79141
Ты дебил. Зачем ты говоришь в чем некомпетентен? Единственное, в чём ты прав - это в том, что нужно добавить в поля соответствующие свойства (которые вообще недавно только появились в браузерах). Ну а если в браузере их нет? А? А если юзер ручками пульнёт запрос? А если не ручками, а автоматизировав? И если их будет несколько тысяч?

>>79083
Ты тоже дебил. Предлагаешь возвращать от сервера проверку на валидацию в жсоне.
Завтра на работе покажу, поржём всем офисом, так сказать.
513 1179190
>>79186
одни свчешные выблядки, которые нихуя не могут аргументировать свои высеры. Какие-то свойства в браузерах у него, жсон ему не нравится. Чем тебе ответ от сервера возвращать? Штмлем блять?
514 1179195
>>79190

>Чем тебе ответ от сервера возвращать?


JSON - это всего то форматнутая инфа, ровно также ты можешь вернуть её в чём угодно, хоть голой, хоть в богомерзком XML, хоть в JSON, зависит только от задачи которую ты хочешь решить. В случае JSON - удобно получать табличку или список, или какой-нибудь офис лайк документ который ты быстренько на страничке при помощи JS раскидаешь (хотя в 9000 раз проще это сделать в бэке и не ебаться с JS). Но если смотреть в общем и целом, JSON - это ебаная технология для безмозглых дауничей которые не способны вместить что-то большее, выучили себе JSON и ебашат им всё. Сайты на JSON, передачу инфы, таблички, карты, ссылки, массивы, документы, БАЗЫ ДАННЫХ. Такое ощущение что вы на этот JSON дрочите по ночам.

мимопроходил
515 1179197
>>79195

>JSON - это всего то форматнутая инфа


Спс кеп. Я где-то утвержал обратное? Просто родной формат для js на котором 99% информации передается. Мне то похуй, можешь на xml но как ты и сам сказал он не оч, так что я хз к чему ты это высрал.

>табличку или список, или какой-нибудь офис лайк документ который ты быстренько на страничке при помощи JS раскидаешь (хотя в 9000 раз проще это сделать в бэке и не ебаться с JS)


Хеллоу, а потом чтобы эту табличку оживить как даун ебаться с каким-нибудь jquerry? Знаем, проходили, одна из причин почему я с пыха ухожу на фулл js чтобы как раз такой хуйней не заниматься и все построение страниц делать на фронтэнде тем же ангуляром[тут можно вставить любой фреймворк].

>JSON - это ебаная технология


сам себе блять противоречишь блять, сначала у него все-лишь формат, а потом уже целая ТЕХНОЛОГИЯ блять.

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


Что ты блять несешь дебич, к врачу сходи. У тебя раздвоение личности в пределах одного поста, может к врачу сходить. Как можно блять json выучить, если это всего-лишь формат данных)) Ты хоть свой пост перечитай.

И дальше опять у тебя какой-то высер в сторону json я нихуя не понял что ты этим хотел сказать ну да ладно.
516 1179199
>>79197

> чтобы эту табличку оживить как даун ебаться с каким-нибудь jquerry?


По сути юзеру нужна таблица. А свистелки, перделки, летающие хуи на странице - уже твои маняфантазии. Я как юзер прямо сейчас просматриваю таблицу 300*12 полей и мне твой JSON ну просто нахуй ненужен. Хотя не сомневаюсь есть дауны которым лишь бы покрасивше.

>я с пыха ухожу на фулл js чтобы как раз такой хуйней не заниматься и все построение страниц делать на фронтэнде тем же ангуляром[тут можно вставить любой фреймворк].


Наркоман. Пыха это бэк, Ангуляр - фронт. Тоесть ты в любом случае будешь что-то получать с бэка. Тоесть причём тут ангуляр вообще?

>сам себе блять противоречишь блять, сначала у него все-лишь формат, а потом уже целая ТЕХНОЛОГИЯ блять.


Когда это передача данных - это одно, когда это целый сегмент который уже используется вообще везде, даже в БД - это уже технология.

> Как можно блять json выучить, если это всего-лишь формат данных))


Вот один формат данных узнают, и ебошат им всё. Даже в тех случаях где можно без него обойтись.
517 1179204
>>79197

>а потом уже целая ТЕХНОЛОГИЯ блять.


А обработка JSON - тоже формат? А формирование JSON тоже формат? Наркоман?
518 1179205
>>79199

>Наркоман. Пыха это бэк, Ангуляр - фронт. Тоесть ты в любом случае будешь что-то получать с бэка. Тоесть причём тут ангуляр вообще?


плиз не пиши если ты не шаришь, хз откуда ты выполз и кукарекаешь. Офк я буду получать респонд - только это будет 0% html и 100% инфы в json который высрал сервер и который ты так почему то не любишь. А со своим манямирком можешь в 1999 возвращаться, где формы были не интерактивные, где чтобы менюшку открыть надо всю страницу перезагружать с нуля и прочии нештяки.
519 1179206
>>79204
А обработка .txt - тоже формат? А формирование .txt тоже формат? Наркоман?
520 1179209
Txt формат. Обработка и формирование - технология.
521 1179210
>>79205
Не злись няша. Я же не говорю вообще от js отказаться, просто мне например нужен ограниченный набор функций. А всякие пидоры, такое ощущение, что ос мне в браузер пихают, при этом умудрившись по дороге проебатб функционал.
522 1179211
>>79209
JSON.stringify(myObject);
JSON.parse(myString);

Хули вы до jsona доебались, как анон сказал выше это всего-лишь формат, можно xml, можно хоть в бананах с пальмы. А вот что с этими данными делать - это уже совсем другой вопрос и мало имеет отношения к тому как эти данные отформатированы.
523 1179213
>>79211
Тред хоть читай, я всего то пояснил разницу между технологией и форматом.
524 1179214
>>79210
можешь начинать привыкать, так как потребителю твоё мега-ахуенное приложение на крестах в хуй не вперлось, качать его еще, устанавливать, еще и вуросов небось туда запехал, падлюка? Куда проще зайти на сайт через браузер на ссылку что друган скинул, зарегаться чере какой-нибудь вконтакт и гугл чтобь эта хуйня все отхранизировала и быть в шоколаде, еще и с мобилки можно потом зайти если оптимизировано норм.
525 1179215
>>79214
Причём тут кресты? Какое приложение? Какой друган? Ты уже какой то манямир себе придумал, а теперь пытаешься меня убедить в том, что это Я про это говорил.
526 1179216
>>79215

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


мы видать с тобой на разных языках говорим
527 1179218
>>79216
Ну да, если я читаю двачи, я хочу ограниченный функционал. А теперь зайди на какой нибудь мэйлач, какие то свистелки, перделки, звуковые оповещения, тут же мыло встроенное, тут же СОЦИАЛОЧКИ, тут же знакомства, ПУШБлдядь оповешения которые уже блядь вообще везде и прочее. Кажется что мэйл крайний случай, но нихрена подобного.
528 1179222
>>79218
БЕСКОЧНАЯ ЛЕНТА КОТОРАЯ БЛЯДЬ ЗАЕБАЛО В ПЕРВЫЙ ЖЕ ДЕНЬ. Нахуй её пихают везде и всюду? Нахуй она нужна? Существуют в мире аутисты которым лень пагинацию прожать или что? Больше всего бесит именно она.
529 1179264
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262
ПЕРЕКАТ >>1179262
ПЕРЕКАТ >>1179262
ПЕРЕКАТ >>1179262
529 1179264
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262 (OP)
ПЕРЕКАТ >>1179262
ПЕРЕКАТ >>1179262
ПЕРЕКАТ >>1179262
ПЕРЕКАТ >>1179262
530 1179299
>>79065
Это распространённая задача в любом гуе, не обязательно веб.
В вебе её легче сделать, ибо динамика.

1. Я бы предложил не аттрибуты, а классы-маркеры.
2. jQuery. Если надо - потом переделаешь без.
Но, надо понимать, что jQuery - это гораздо больше, чем просто поиск по селекторам (который сейчас можно и так сделать).
3. Дополнительная таблица (массив) с валидаторами в JS - {имя_класса: функция_валидатор, ...}.

Выбираем по классу, проходим по элементам, для каждого находим в таблице валидатор по классу и вызываем, передавая в него value элемента.

Как обрабатывать результаты?
Можно это делать по-разому.
Можно собирать в массив и что-то с ним делать потом.
Можно сразу же присваивать элементу класс "validation-error", который будет его обводить красным.
Можно возвращать из функции сообщение об ошибке и присваивать его соответствующему элементу на форме для отображения подсказки.
И т.п.

Ничего сложного в этом нет.
Если интересны подробности - спрашивай ответы.
531 1179307
>>77228
Хуй соси.
532 1179311
>>79299
спасибо, анончик.
Я пока тип только чистый джс использую. Да понятное дело, что ничего сложно здесь не должно быть. Но у меня опыта всего месяц, месяц назад я узнал что такое хтмл и цсс. Мне пока всё очень сложно дается, буду думать/вникать. Но мне бы минимальной какой-нибудь пример увидеть с комментариями
533 1179325
>>79311

>минимальной какой-нибудь пример


Сейчас некогда, вечером попробую сделать.
534 1179342
>>79325
спасибо, анончик
535 1179355
Работа есть на JS? Или лучше учить С++ и Си?
gl-qHXHT5AU.jpg47 Кб, 600x450
536 1179359
>>79355
Есть, Анон! Ну, что вкатишься в мою комманду? Готов устроить за трёхразовый дошик и койку-место под компом у себя в гараже :) Мазик бесплатно.
537 1179371
>>79359

>комманду


В комманды не вкатываюсь.
15224783546330.png1,5 Мб, 1280x960
538 1179384
>>79371
Ти же мну писал, что грамматика и знание ангельского не так уж важны.
539 1179394
>>79384
Окей, какой проект? Парсер ПУБГ на ноде?
540 1179476
>>79190

>Чем тебе ответ от сервера возвращать?


Сериализированный бинарный код.
541 1179479
>>79359

>комманду



Ком. манду?
Сам туда вкатывайся, мандюк.
543 1179764
>>79658
Вечер - понятие растяжимое, лол.

>>1179312
Валидация формы:
https://pastebin.com/2iBzGLJi

Использует jQuery.
Написано на старомодном JS, работает везде.
1362438465256.gif587 Кб, 216x209
544 1179860
>>79764
Спасибо анончик, буду разбираться
545 1179915
>>79860
Там много букв, конечно.
Но, на самом деле, пример простой.
И поучительный, лол.

Из хитрых вещей (для ньюфага) - функция, возвращающая функцию. Погугли javascript closure.

Остальное - элементарный код на jQuery. Погугли, там ничего сложного.

Кстати, я забыл там сделать для примера один валидатор просто инлайн-функцией.
Т.е., например, вместо Validators.gte(100) можно написать function(val){...} - то же самое, что находится внутри Validators.gte(), но сравнивать сразу с числом 100.
546 1179923
>>79915
оке, но для начала надо посмотреть что из себя представляет этот jQeury, еще не трогал.
Спасибо.
Обновить тред
Двач.hk не отвечает.
Вы видите копию треда, сохраненную 18 июня 2018 года.

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

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