Сохранен 546
https://2ch.hk/pr/res/1167958.html
24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!

JavaScript thread #1e2+2

 Аноним OP 04/04/18 Срд 16:50:55 #1 №1167958 
15213165999650.png
Ссылка на прошлый тред: >>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/ для серверного кода.
Аноним 04/04/18 Срд 16:53:05 #2 №1167962 
Ты СОВЕРШЕННО не понимаешь в чем суть JS. JS это не раби «о, привет чуваки, зацените я слепил три гема и получился блог, гыгы». JS это не псевдофункциональный код питона. JS это не C#, Джава или ПХП. JS это язык, на котором люди могут побыть программистами-творцами — ужасными, поехавшими, ненормальными чудовищами, которыми они на самом деле и являются.

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

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

У меня есть ещё функция для перемножения чисел, если хотите - дам.
Это - длинная арифметика.
Интересуют алгоритмы быстрого вычитания длинного большего от длинного меньшего,
с целочисленным положительным результатом,
а также алгоритм быстрого деления с остатком - с целыми числами в результате
или же нулём, если остатка нет.
Я знаю, что есть BigInteger, но инклюдить его не очень хочется,
а перелопатить код, чтоб найти функции долгое и нудное занятие. Они могут зависеть от других.
А в ссылке, что я закинул сюда - там лишь две простые функции.
Аноним 05/04/18 Чтв 00:58:47 #4 №1168202 
Аноны, а поясните за node.js есть будующее у ентой хуевины?
Аноним 05/04/18 Чтв 01:21:55 #5 №1168206 
>>1168202
Так спрашиваешь, словно она вчера появилась.
Ей уже 10 лет. И она постоянно развивается.
Аноним 05/04/18 Чтв 01:55:20 #6 №1168215 
>>1168202
ты что, ебан?
Аноним 05/04/18 Чтв 01:57:09 #7 №1168216 
>>1168215
Почему вы спрашиваете?
Аноним 05/04/18 Чтв 02:17:04 #8 №1168219 
>>1167958 (OP)
Насколько сложно найти бекендовую работу за 10$ в час на node.js?
При этом без знания либ.
Аноним 05/04/18 Чтв 09:06:26 #9 №1168272 
>>1168219
Всмысле работу на ноде без знание ноды?
Аноним 05/04/18 Чтв 11:57:27 #10 №1168336 
>>1168272
Без знания всяких ангуляров, докеров, вебпаков и прочей херни.
Аноним 05/04/18 Чтв 14:00:12 #11 №1168390 
>>1168219
Если есть проектик нормальный на ноде с экспрессом на гх и знание ес6, то думаю за месяц легко найти.
Аноним 05/04/18 Чтв 15:01:28 #12 №1168412 
>>1168336
Если ты хочешь выучить что-то одно и сидеть на жопе ровно, ты явно ошибся профессией, или как минимум технологией.
Аноним 05/04/18 Чтв 17:00:19 #13 №1168481 
Где найти код дефолтных событий браузера? Хочу посмотреть дефолтную реализацию onSubmit для разных форм и не могу найти - гугл выдаёт всякие учебники и обработчики событий от васянов.
Аноним 05/04/18 Чтв 17:45:49 #14 №1168508 
>>1168481
v8 гугли
Аноним 05/04/18 Чтв 18:59:39 #15 №1168565 
>>1168508
v8 это не браузер. он не реализует никаких onsubmit, даун.
sageАноним 05/04/18 Чтв 19:02:58 #16 №1168570 
>>1168565
Ты мне это в лицо сказать сможешь, чмо? А то в интернете-то вы все смелые, герои блядь комнатные.
Аноним 05/04/18 Чтв 19:45:55 #17 №1168605 
>>1168565
v8 за всю работу дома отвечает и просто закидывает в очередь эвент лупа онклики и прочее говно, которые потом входят в стэк вызовом колбэков. (я себе всегда это так представлял)
Аноним 05/04/18 Чтв 19:46:33 #18 №1168606 
>>1168565
если найдешь что скинь в тред, тоже интересно
Аноним 05/04/18 Чтв 20:09:13 #19 №1168618 
>>1168606
Да у вас же и всплывало, вроде бы. https://www.youtube.com/watch?v=8aGhZQkoFbQ
Аноним 05/04/18 Чтв 21:32:36 #20 №1168684 
>>1168605
v8 отвечает за эвентлуп, а не за дом.
дома в v8 нет и никогда не было.
алгоритм обработки форм дома описан в сорцах компонентнов браузера отвечающих за дом.
v8 это js-engine, а не дом.
Аноним 05/04/18 Чтв 21:32:53 #21 №1168685 
>>1168570
Могу и ебало тебе разбить, если хочешь.
Аноним 06/04/18 Птн 08:25:33 #22 №1168962 
Антоны, посоветуйте нормальный видео курсы или книги по js, чтобы потом было легче вкатиться в react native. Если вкатываться в react native то нужно ли знать html и css?
Аноним 06/04/18 Птн 12:57:53 #23 №1169029 
>>1168685
Снимите уже номер петушки.
Аноним 06/04/18 Птн 13:33:00 #24 №1169050 
>>1168962
Иди нахуй.
Аноним 06/04/18 Птн 13:40:12 #25 №1169057 
>>1168962
Поднасру макакичам в тред
https://developer.mozilla.org/ru/docs/Learn/Getting_started_with_the_web/JavaScript_basics жмешь далее, далее, далее пока не закончишь. Примеры можешь тестировать на codepen.io.
> нужно ли знать html и css
html не нужен, CSS только подмножество. Вкатишься на примерах, не ссы.
Аноним 06/04/18 Птн 14:42:53 #26 №1169104 
Анон, помоги, как реализовать функцию __extends в примере ниже. Я так понимаю она должна работать как расширение классов в ES6, но как это реализовать отдельной функцией?
https://repl.it/repls/StarryJudiciousLoopfusion
Аноним 06/04/18 Птн 17:03:15 #27 №1169182 
>>1169104
Господи какой пиздец этот пример. Я один охуеваю от этой разметки, именования функций, стиля их объявления?
Аноним 06/04/18 Птн 18:47:04 #28 №1169229 
Captured1.png
>>1169182
Но это же стиль плюсов и джавашарпов... табами надо было отбивать, тогда бы легко читалось.

Что же косаетьса функцiи — здесь имелося в виду вот чо новерн))
Аноним 06/04/18 Птн 20:11:56 #29 №1169262 
>>1169104
https://repl.it/repls/ObedientSelfassuredSearchengine
Аноним 07/04/18 Суб 01:06:44 #30 №1169431 
Недавно вкатился в этот ваш жаваскрипт(после статически типизированных языков) и мне очень непривычно. Я забываю просто какие проперти у какого объекта или класса есть, какого типа аргументы какая-то моя функция принимает(а иногда это должен быть какой-то класс), ну и так далее в том же духе. Про всякие функции и обжекты из других библиотек я вообще молчу, это же пиздец - вот есть какой-нибудь getZalupa(hui, mocha) который принимает хуй знает что и возвращает хуй знает что, и вместо того чтобы за 1 секунду навести курсор на эту функцию и посмотреть типы мне надо лезть в документацию и смотреть что там оно принимает и что возвращает, и какие проперти у того и другого есть и зачем оно вообще нужно. Это не жава, в которой я иногда вместо просмотра документации начинал просто писать примерно первые буквы слова которое связано с тем что мне надо и так наугад находил нужную мне вещь.

Это я что-то не так делаю или надо просто привыкнуть к этому пиздецу? Или даже не привыкать, а использовать что-то статически типизированное, тайп скрипт какой-нибудь?
Аноним 07/04/18 Суб 01:11:56 #31 №1169433 
Нидхелп

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

Пробовал выделять овердохуя памяти в нем, нихуя не происходит. Эффект аналогичен бесконечному циклу, в какой-то момент он просто перестает отвечать на сообщения, но падать не падает.
Аноним 07/04/18 Суб 01:17:54 #32 №1169436 
>>1169431
Ты писал не на языке, а на IDE.
Если довольно долго, то считай, что ты уже профдеформирован. Дальше сам выбирай. Вряд ли динамика для тебя. Программист на форте везде будет писать на форте. Ты везде будешь искать статичность и автокомплит. Соответсвенно и выбирай инструменты аналогичные - типизированые трансляторы, типизированные статичные библиотеки, без мета-магии, и вот это всё.

Аноним 07/04/18 Суб 01:23:27 #33 №1169442 
>>1169431
А, ну и алсо, js это современный ассемблер, просто для более высокго уровня абстракции. Вот и думай. Писал бы ты на асме под аппаратуру, откуда бы брал себе автокомплит. С js-ом тоже самое. Это встраиваемый язык, и его возможности диктуются окружением. Так что на TS ты писать конечно можешь, но вот можешь ли ты писать на TS, например под Автокад?
Аноним 07/04/18 Суб 11:20:19 #34 №1169537 
Помогите пожалуйста! Как заставить эту поеботину работать? Я понимаю что тут с областью видимости проблема, но не понимаю как исправить.

https://repl.it/repls/SparklingStridentUtilities
Аноним 07/04/18 Суб 11:32:19 #35 №1169540 
>>1167958 (OP)
А тут можно по ангуляру вопросы задавать или потребуется пройти в другое место?
Аноним 07/04/18 Суб 12:48:21 #36 №1169564 
Screenshot2018-04-07-18-33-59.png
>>1169537
Проблема не с областью видимости, а с контекстом вызова функций, то есть this.
Когда ты в showItems вызываешь форматтер, ты ему напрямую указываешь, что вот твой контекст, работай в нём. Он такой окей, понял. А когда ты вызываешь его через show, ты уже не говоришь передаваемой функции, в каком контексте работать. В итоге этот контекст проебался.
Последний способ не работает, потому что ты передаёшь в параметре уже вызванную функцию, и в show в итоге пришла строка, которую вернула передаваемая функция, и show такой: "и хуле ты от меня хочешь, строку вызвать? Ты шо ебобо?"

Решение - передавать контекст дальше внутри show. Тогда функция будет указывать, что принятому аргументу нужно выполниться в контексте этого show.
Аноним 07/04/18 Суб 15:18:50 #37 №1169638 
Блед, куда response делся
Аноним 07/04/18 Суб 20:35:01 #38 №1169809 
Анонеймы, молю помогите.
Проебываю понятие callbackов, из-за этого не понимаю суть работы map, reduce, for each и т.д. Гуглил - нихуя не понял. Смотрел видосы на ютабе - нихуя не понял.
Где еще можно почитать/посмотреть чтобы понять?
Аноним 07/04/18 Суб 20:40:35 #39 №1169811 
>>1169809
Я тоже не понимаю это слово, но оно и не нужно совершенно. Map и проч. очень элементарно работают. Тупо функция принимает в кач-ве параметра другую функцию. Возможно это и есть колбэк.
Аноним 07/04/18 Суб 20:45:18 #40 №1169820 
>>1169811
Да, это и есть колбек. Но блять в моей тупой голове не укладывается суть работы функции которая в качестве параметра принимает другую анонимную функцию.
Аноним 07/04/18 Суб 20:49:58 #41 №1169823 
>>1169820
>функция(данные, чтоСделать)
>чтоСделать = функция(данные)
Аноним 07/04/18 Суб 20:56:34 #42 №1169828 
>>1169820
Что сложного блядь.
Представь, что ты землекоп.
Копаешь траншеи. Сколько скажут столько и копаешь. Вот отсюда и до обеда.

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

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

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

Пиздец просто, принцип проще некуда. Весь мир на нем построен. Что не ясного.

Аноним 07/04/18 Суб 21:05:19 #43 №1169831 
>>1169828
АААА СУКА, ПОНЯЛ. Я как бы передаю в параметр уже готовое значение какое-то которое возвращает функция которая собсна в параметр передана.
Аноним 07/04/18 Суб 21:08:23 #44 №1169833 
>>1169831
нет ты сука совсем тупой
Аноним 07/04/18 Суб 21:14:23 #45 №1169837 
>>1169828
функция внутри функции. пиздец. Только вот начал читать про жс, охуеваю с переменных пока что.
интерересно расписал.
Аноним 07/04/18 Суб 21:26:49 #46 №1169841 
>>1169837
Она не внутри функции. Внутри функции это уже не коллбэк, а замыкание.

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

Аноним 07/04/18 Суб 21:47:51 #47 №1169861 
Почему жс не обновлялся уже 8 лет?
Аноним 07/04/18 Суб 21:57:25 #48 №1169864 
image.png
>>1169841
Хорошо, а как тогда вызывать функцию внутри функции?
Аноним 07/04/18 Суб 22:05:09 #49 №1169868 
>>1169864
Так же, как если ты хочешь например питаться не через пищеварительный тракт, а закладывая еду прямо в желудок себе.
Аноним 07/04/18 Суб 22:14:54 #50 №1169870 
>>1169864
Неужели тебе не очевидно, что к моменту когда ты пытаешься вызвать ss в своем fq = ss(..) функция ss уже не существует вообще? Это не говоря о том, что в той области видимости ее и не существовало никогда, но это ладно. Я о том, что вы когда код пишете - вы наугад ебашите, не приходя в сознание? Не пробовали побыть интерпретатором и по шагам выполнять то, что вы написали? Вас как детей надо, чесслово, ставить в круг, и играть в игру аля-крокодил, давая каждому задачу - вот ты переменная, ты функция, ты вот число, ты вот поток выполнения, давайте посмотрим, что тут происходит.

Просто катастрофический дефицит абстрактного мышления у вас, товарищи.
Аноним 07/04/18 Суб 22:24:02 #51 №1169871 
image.png
>>1169864
> как тогда вызывать функцию внутри функции
очевидно, пробросив туда, откуда ты хочешь ее вызвать, как и все остальное, что ты пробрасываешь

как обратиться к f внутри mult ты же додумался. почему дальше твоя думалка думать не смогла?
Аноним 08/04/18 Вск 01:34:15 #52 №1169924 
t
Аноним 08/04/18 Вск 01:45:50 #53 №1169926 
SG.jpg
смущение.gif
>>1167958 (OP)
я знаю, почему у тебя не будет детей.
Аноним 08/04/18 Вск 04:19:15 #54 №1169964 
15204322716150.jpg
>>1169229
>mcedit

Пиздец кокойты.
Аноним 08/04/18 Вск 10:36:53 #55 №1169999 
Есть оиба, который можно рисовать связи? Например есть два дива с текстом, на одном я кликаю и тащу стрелку до второго.
Аноним 08/04/18 Вск 11:37:23 #56 №1170023 
>>1169999
Такое обычно рисуют на канвасе, а не на дом-нодах. Если вместо дивов готов рисовать все на канве, то изи какой-нибудь d3 или что-то было. Гугли по js graph visualization
Аноним 08/04/18 Вск 11:42:40 #57 №1170025 
>>1169999
на хаскеле ебани
Аноним 08/04/18 Вск 12:23:14 #58 №1170042 
Аноны, есть тут кто шарит в промисах? поясните какого фига в results пушится не сразу, а только в конце? Откуда он знает что будет последний then?
И что вообще записывается в chain?
http://plnkr.co/edit/pzWpd9418pnVJxlvK4SV?p=preview
Аноним 08/04/18 Вск 12:35:36 #59 №1170048 
>>1170042
>какого фига в results пушится не сразу
сразу.
Аноним 08/04/18 Вск 13:06:48 #60 №1170065 
>>1170048
Нет
Аноним 08/04/18 Вск 14:57:49 #61 №1170135 
>>1167958 (OP)
Есть ли в node.js профилирование и перфоманс тесты?

Можно ли например сохранить джейсонину и загрузить в гуй хрома?
Аноним 08/04/18 Вск 17:38:32 #62 №1170191 
>>1169182
>30 сьрок кода
>Какие-то проблемы уже тут.
Ясн.
Аноним 08/04/18 Вск 19:42:58 #63 №1170278 
Вы, девочки, хотя бы в курсе, что JS - не язык программирования?
Аноним 08/04/18 Вск 20:22:02 #64 №1170317 
Так я и не могу понять как работают мап, редюс и форич и вообще колбеки сами.
Аноним 08/04/18 Вск 20:37:15 #65 №1170338 
>>1170278
Опа. Дай угадаю, ты обоссаный джавист или обдрыстаный питонист? Вернись в свой курятник.
Аноним 08/04/18 Вск 20:45:03 #66 №1170347 
>>1170317
Ладно, еще раз поясню по хардкору

function НарубитьДрова (дрова, function Рубить(бревно) {Топор = new Топор(); Топор.рубить(бревно);} )
{
for (бревно in дрова)
Рубить(бревно);
}
Аноним 08/04/18 Вск 21:00:40 #67 №1170355 
Т.к я очень тупой, сухой формат Кантора иногда бьет по голове даже после 10ого перечитывания главы.
Может есть книга где более на пальцах разъясняют?
Я, как и все дебилы из фронтенд треда привык к курсам от хтмлакадемии, где объясняют для аутистов полнейших, тяжело вкатиться так резко в сухую литературу (а что будет когда документацию читать буду вообще не понимаю, наверное повешусь или в дворники вкачусь в итоге).
Аноним 08/04/18 Вск 21:08:44 #68 №1170360 
>>1170355
Можешь на тытрубе глянуть видосы по жс, там их много.
Но дело не в том что хтмлакадемия хорошо объясняет, а в том что хтмл и цсс очень простые вещи. Кодинг это сложнее намного.
Привыкай. Решай задачки-говоломки на сообразительность для развития мозгов.
Аноним 08/04/18 Вск 21:37:07 #69 №1170378 
>>1170338
Программировать на DHTML, это так круто...
Аноним 08/04/18 Вск 21:44:59 #70 №1170384 
>>1170355
>сухой формат Кантора
Вот это новости. У кантора формат для детей ясельного сада.
Аноним 08/04/18 Вск 23:32:46 #71 №1170453 
Лучший язык эвер
Аноним 09/04/18 Пнд 00:49:32 #72 №1170490 
Смотрите, решал задачку на кодварс
(Delete occurrences of an element if it occurs more than n times)
https://jsfiddle.net/vsuzmkko/1/
Хочу, чтобы двачик сказал мне, что решение очень элегантное
Аноним 09/04/18 Пнд 00:55:41 #73 №1170494 
>>1170490
написано странно. проще было просто для каждого числа счетчик увеличивать и если больше N то не выводить результат.
типа
for( var i : input)
{
cout++;
if(cout>n)
continue;
result.append(i);
}
Аноним 09/04/18 Пнд 00:56:45 #74 №1170495 
>>1170494
жрет скобки
cout ( i ) ++;
if ( cout ( i ) > n)
и .тд.
Аноним 09/04/18 Пнд 03:10:50 #75 №1170535 
image.png
>>1170490
Аноним 09/04/18 Пнд 04:12:59 #76 №1170541 
image.png
>>1170490
sageАноним 09/04/18 Пнд 04:35:11 #77 №1170544 
>>1170541
За такое я бы уволил.
Аноним 09/04/18 Пнд 05:06:48 #78 №1170546 
>>1170544
Я бы тебя уволил раньше, чем ты меня.
Аноним 09/04/18 Пнд 05:37:51 #79 №1170549 
>>1169431
JSDoc для кого придуман, блять?
Большинство нормальных либ его используют. А нормальные редакторы его хавают и показывают по наведению мышки.
Аноним 09/04/18 Пнд 05:39:39 #80 №1170550 
>>1170541
выпились, плз
Аноним 09/04/18 Пнд 12:45:50 #81 №1170683 
>>1170541
Миниатюра "как сделать так, чтобы код на жс был похож на лисп"
Аноним 09/04/18 Пнд 12:56:18 #82 №1170688 
>>1167958 (OP)
Сап, решил вкатиться сейчас. В каком порядке читать книги из гайда шапки?
Аноним 09/04/18 Пнд 14:17:53 #83 №1170712 
>>1170688
Раз задаешь такой вопрос, то можешь смело сразу и укатываться.
Аноним 09/04/18 Пнд 14:31:13 #84 №1170717 
>>1170712
Тогда начну по порядку.
Аноним 09/04/18 Пнд 16:36:58 #85 №1170757 
на каком языке лучше писать прилагу вк ГОСТИ ВКОНТАКТЕ?
Аноним 09/04/18 Пнд 16:41:33 #86 №1170760 
>>1170757
Haskell, очевидно же.
Аноним 09/04/18 Пнд 16:47:53 #87 №1170764 
>>1170760
Purescript лучше подойдет.
Аноним 09/04/18 Пнд 17:27:54 #88 №1170793 
Кто то работал с google sheets?
Аноним 09/04/18 Пнд 18:54:06 #89 №1170832 
>>1170355
Кодинг на самом деле намного проще сss'a, в кодинге ты просто кодишь очевидные фронтовские алгоритмы, а не ебешься с пикселями и движениями неведомой хуйни вправо-влево. По основам жса глянь курс с юдеми, скачай с рутрекера вирд партс жаваскрипт.

Кантор хуевейшая книга сама по себе, объясняет он по-даунски, не советую
Аноним 09/04/18 Пнд 21:19:18 #90 №1170909 
image.png
>>1170683
>>1170550
>>1170544
Неосиляторы.
Аноним 09/04/18 Пнд 22:35:07 #91 №1170956 
>>1170832
>Кантор хуевейшая книга сама по себе, объясняет он по-даунски, не советую
Какой язык такое и объянение ))0
Аноним 09/04/18 Пнд 22:46:44 #92 №1170962 
>>1170956
Язык-то идеальный.
Аноним 09/04/18 Пнд 22:57:27 #93 №1170969 
>>1170962
Лол. Даже сам Кокфорд не раз говорил, что в я зыке полно странностей и ошибок. Но всем похуй.
Аноним 09/04/18 Пнд 23:12:08 #94 №1170972 
>>1170962
Попробуй создать пустую переменную и выполнить с ней оператор плюс-равно, вот так:

var str; str += 'ABCD';
console.log(str);
Аноним 09/04/18 Пнд 23:16:39 #95 №1170973 
>>1170972
Она не пустая, в ней undefined.
Что тебе тут не очевидно?
Аноним 09/04/18 Пнд 23:19:08 #96 №1170975 
>>1170972
а нехуй переменные без присваивания заводить
особенно в языках без строгой типизации
Аноним 09/04/18 Пнд 23:20:53 #97 №1170978 
>>1170975
Достаточно понимать как, что работает. А не ебашить наугад.


Твои советы сравни - если не хотите случайно сдохнуть, нехуй на улицу выходить. Признак дегенерата.
Аноним 09/04/18 Пнд 23:21:47 #98 №1170979 
>>1170969
>сам Кокфорд
Ссылки на мнения кого-то, кто для тебя авторитет, тоже признак дегенерата.
Аноним 09/04/18 Пнд 23:27:51 #99 №1170982 
>>1170979
Тут забавно еще то, что етот Кокфорд, емнип вообще левый хуй. Т.е. опытный пользователь, не более, не дизайнер и не разраб жс.
Аноним 09/04/18 Пнд 23:34:43 #100 №1170987 
>>1170982
Он простой программист. Его основная заслуга, если ее таковой можно считать, что он распространил формат json и пропихнул его для спецификации. В то время все обменивались xml'ом, Крокфорд взял нотацию хэш-таблицы и js и популизовал как формат для обмена данными на замену ксмл. Так вот.

Но суть в том, что ссылаться на чьи-либо мнения, как какие-либо аргументы, в темах, не касающихся самих этих людей, тем более в формулировках САМ, ну это пиздец. Особенно для программиста.
Аноним 09/04/18 Пнд 23:35:08 #101 №1170988 
>>1170987
>хэш-таблицы из js
Аноним 09/04/18 Пнд 23:43:21 #102 №1170992 
>>1170988
Да я в курсе насчет его достижений.
Аноним 10/04/18 Втр 09:58:51 #103 №1171114 
>>1170909
Да не неосиляторы. Я прекрасно понял, что твоя каша из тернарных операторов делает. Только вот с точки зрения читаемости за такое нужно по рукам бить.
Аноним 10/04/18 Втр 10:39:01 #104 №1171138 
>>1170135
Бамп
Аноним 10/04/18 Втр 11:14:23 #105 №1171156 
500px-BigeIEkU9FumS0S.jpg
Аноны, есть ли в html такой тег, который выводит текст в окне? То есть, есть окошко с белым фоном, и там написан текст, который нельзя менять на странице? Что-то вроде textarea, но текст на странице изменять нельзя.
Аноним 10/04/18 Втр 11:29:53 #106 №1171164 
>>1171156
Ты не поверишь, но это можно писать обычным текстом без тегов.
Аноним 10/04/18 Втр 11:34:45 #107 №1171168 
>>1171114
За такое нужно ебало бить
Аноним 10/04/18 Втр 11:49:40 #108 №1171174 
>>1171156
Скорее всего ты имел ввиду <marquee>.
Аноним 10/04/18 Втр 12:03:24 #109 №1171188 
>>1171174
Я думаю, он имел ввиду <blink></blink>
Аноним 11/04/18 Срд 07:40:06 #110 №1171539 
>>1171156
<b></b>
Аноним 11/04/18 Срд 10:18:32 #111 №1171575 
Безопасно ли использовать protected route в Angular?
Да, если пользователь не идентифицирован на сервере и не имеет ключа, он не посмотрит защищенный компонент и, уж тем более, не получить json с данными от сервера (asp.net core если важно).
Но, злоумышленник, посмотрев в код, будет иметь представление какие данные отдает сервер и как они отображаются у пользователя. Это нормально?
Аноним 11/04/18 Срд 10:27:18 #112 №1171580 
>>1171575
Как один из вариантов решения, сейчас отдаю часть наиболее важных (по мнению моей паранои) данных в виде html кода.
Аноним 11/04/18 Срд 11:18:38 #113 №1171592 
Нужна небольшая консультация, так как не имел опыта на JS вообще, кроме пары тестовых заданий.
Я хочу сделать html форму с JS скриптом, который будет генерировать данные (на основе JSON файлы в этой же папке) и выводить их в форму. + хочу прикрутить возможность сохранять данные в txt формате на диск. Возможно ли это реализовать на чистом JS? При условии, что на компьютере, где будет работать скрипт, не будет админских прав и интернета. Только IE и Chrome.
Аноним 11/04/18 Срд 12:19:50 #114 №1171610 
>>1171174
>>1171188
>>1171539
Типа толстите на толстоту?
Аноним 11/04/18 Срд 12:20:59 #115 №1171611 
>>1171156
<p></p>
Аноним 11/04/18 Срд 13:45:40 #116 №1171639 
>>1171156
Возможно тебе нужен язык программирования css (цсс).
Аноним 11/04/18 Срд 13:56:04 #117 №1171643 
>>1171639
css (контер стрике соурсе)
Аноним 11/04/18 Срд 14:18:41 #118 №1171652 
>>1171592
Нет.
Аноним 11/04/18 Срд 14:22:50 #119 №1171655 
>>1171639
Скорее всего ему нужен язык haskell
Аноним 11/04/18 Срд 15:28:45 #120 №1171718 
до чего же я мастер js
Аноним 11/04/18 Срд 15:32:53 #121 №1171722 
>>1171652
Нет, в смысле нельзя в файл сохранять? Или вообще такой скрипт офлайн не реализовать?
Аноним 11/04/18 Срд 19:32:40 #122 №1171824 
>>1171722
Ну смотри. Обычными средствами ты не сможешь получить доступ к файлам в браузере, ибо безопасность.
Но если твое приложение крутится на локалхосте, то ты вполне можешь получить содержимое файла через ajax.
Аноним 11/04/18 Срд 19:36:15 #123 №1171827 
>>1171824
То есть и статичный файл типа того же json этим скриптом не прочитать?
Аноним 11/04/18 Срд 19:43:24 #124 №1171832 
>>1171722
Боже, да сохраняй ты в local-storage и успокойся уже.
Аноним 11/04/18 Срд 21:47:46 #125 №1171909 
>>1171722
Гугли
Data uri
Blob
И не слушай погромистов, не умеющих сделать сраную выгрузку файла на жс.
Аноним 11/04/18 Срд 22:43:40 #126 №1171937 
>>1171722
Можно. Формируешь файл в памяти и даешь его на созранение.

На ознакомься с экхемплом https://app.keeweb.info/
Это одностраничное приложение работающее локально, ты можешь сохранить страницу html себе на диск и запускать локально, а не удалено.
Аноним 11/04/18 Срд 23:15:17 #127 №1171956 
Как сделать это менее говнистым? Мне кажется, это пиздец, но кодварс засчитал
https://jsfiddle.net/tqg9he1a/1/
Аноним 11/04/18 Срд 23:21:35 #128 №1171965 
>>1171956
>кодварс
Ты же посе решения задачи можешь посмотреть решения остальных, в том числе топ, в том числе самое лучшеее и короткое.
Аноним 12/04/18 Чтв 01:07:11 #129 №1172016 
загружено.jpg
Что почитать дауну, чтобы понять, как работают коллбек-функции?
Нихера не понимаю, слишком сложно для меня. Вернее суть я уловил, но когда начинаю смотреть примеры, то пиздец как сложно.
Аноним 12/04/18 Чтв 02:23:02 #130 №1172035 
>>1172016
Почитай тред чуть выше. Тут один анон разжевывал как мог, прям для самых довенов. Может настигнет прозрение.
Аноним 12/04/18 Чтв 03:10:24 #131 №1172043 
>>1172035
Так он ему и разжевывал.
Аноним 12/04/18 Чтв 03:38:57 #132 №1172050 
>>1171722
В Опере, Хроме, Лисе ты можешь запросить привилегии у пользователя, но только если твой код выполняется локально, является приложением.
Аноним 12/04/18 Чтв 03:40:58 #133 №1172051 
>>1172050
Также есть недокументированные способы, но они применяются с диалоговыми окнами через загрузки.

Ты можешь сохранить такой файл (при согласии пользователя), но не можешь загрузить, поэтому как писали выше используй хранилище браузера и не парься это тот же файл на диске юзера. Разницы нет никакой.
Аноним 12/04/18 Чтв 03:42:37 #134 №1172052 
>>1172051
>Разницы нет никакой
Есть. Все что созранено в зранилище браузера, будет удалено при очистке кэша\истории браузера.
Аноним 12/04/18 Чтв 08:08:39 #135 №1172067 
>>1169871
А деструктуризация в других ЯП тоже есть? Хоть и понял как она работает, но до сих пор когда её вижу напрягаю свой мозг, чтобы понять что куда присваивается, особенно когда присваивают свойства какого-нибудь объекта. Иногда кажется не очевидной хуйнёй, которая только усложняет код.
Аноним 12/04/18 Чтв 08:15:11 #136 №1172068 
>>1172016
Не заёбывай себя. Ты не работу их не понимаешь, ты просто не понимаешь что это и для каких задач нужно. С практикой придет понимание.

Ты видимо ещё до прототипов и контекста вызовов не дошёл, раз у тебя есть время над другими вещами голову ломать
Аноним 12/04/18 Чтв 09:37:59 #137 №1172087 
>>1172067
>А деструктуризация в других ЯП тоже есть?
Есть, конечно. В этом плане в js нет ничего уникального ни в чем, кроме того, что он собрал лучшие фичи из всех остальных языков.

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

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

Скудоумие и узколобость неизлечимы.
Аноним 12/04/18 Чтв 09:44:32 #138 №1172091 
>>1172068
Нах прототипы нужны? Уже ведь завезли синтаксически норм классы почти как в Джаве.
Аноним 12/04/18 Чтв 09:57:17 #139 №1172095 
>>1172091
С чего ты взял что как в джаве, это норм, а не наоборот?
Аноним 12/04/18 Чтв 10:30:41 #140 №1172115 
>>1172035
Спасибо, вроде немного получше понял.
Ещё дебильный вопрос - в каких ситуациях использовать forEach, а в каких for? Первый мне всегда давался с трудом, так что я всегда писал всё через for и если видел в чужом коде forEach, то переписывал его в for для лучшего понимания.
Но в чём отличие и где применять каждый из них - я нигде не нашёл инфы.

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

>>1172068
Да, всё так.
Просто начал изучать асинхронность и там в первой главе про коллбеки, и что это основа основ.
Аноним 12/04/18 Чтв 10:38:44 #141 №1172122 
>>1172115
>и если видел в чужом коде forEach, то переписывал его в for для лучшего понимания.
Вот же червь-пидор. Надеюсь тебя гонят отовсюду ссаными тряпками.
Аноним 12/04/18 Чтв 10:39:10 #142 №1172123 
>>1172115
На чем раньше писал?
Аноним 12/04/18 Чтв 10:45:59 #143 №1172128 
>>1172123
На C++
Аноним 12/04/18 Чтв 10:50:17 #144 №1172131 
>>1172087
В которой раз убеждаюсь что комьюнити на дваче ужасно агрессивное. Это наверное потому-что здесь в основном омеги которые если в чем-то разобрались лучше других, начинают компенсировать и самоутверждаться

>>1172115
>Ещё дебильный вопрос - в каких ситуациях использовать forEach, а в каких for? Первый мне всегда давался с трудом, так что я всегда писал всё через for и если видел в чужом коде forEach, то переписывал его в for для лучшего
лол, тоже этим страдал, просто Кантор упор на for в уроках делал, и у меня это от него. Хотя на деле все перебирающие методы наоборот упрощают жизнь, поэтому нужно специально заставлять себя именно их использовать, пока не станут как родные
Аноним 12/04/18 Чтв 10:52:03 #145 №1172132 
>>1172091
На собесах думаю все равно спрашивают, вряд ли их устроит твой ответ.
Аноним 12/04/18 Чтв 10:54:49 #146 №1172134 
>>1172131
>все перебирающие методы наоборот упрощают жизнь
Чем конкретно?
Тем, что чуть меньше писать?

То есть по сути разницы никакой, это всё дело вкуса, как пробелы/табы?
Плюс в гугле пишут, что for в разы быстрее, чем forEach, кому верить?
Аноним 12/04/18 Чтв 10:56:23 #147 №1172135 
557e048d2d398cffa7b5d8e8968137e6.jpg
>>1172132
>2k18
>ходить на собесы
Аноним 12/04/18 Чтв 11:03:28 #148 №1172137 
>>1172134
>Тем, что чуть меньше писать?
>[1,2,3].forEach(i => console.log(i))
>for(let i of [1,2,3]) console.log(i)

Аноним 12/04/18 Чтв 11:05:00 #149 №1172139 
file.jpg
>>1172137
Я не так пишу. Пощади, о гуру жс
Аноним 12/04/18 Чтв 11:12:35 #150 №1172143 
>>1172128
Ну и ты хочешь сказать, что будучи плюсовым программистом, ты не знаешь, что такое передача функции по ссылке и зачем это используется?
Аноним 12/04/18 Чтв 11:17:09 #151 №1172146 
>>1172143
Нет, ведь в плюсах нет приёмов ФП...
Аноним 12/04/18 Чтв 11:28:05 #152 №1172152 
>>1172146
ФП это прежде всего зависимые типы, а не лямбды. Лямбды - это обычная императивнщина. И функции передают по ссылке в другие фукнкции испокон веков. И в си, и в плюсах, и даже в асме. Особенно в асме.
Аноним 12/04/18 Чтв 12:52:55 #153 №1172188 
>>1172131
Мне в форыче не нравилось то, что из цикла нельзя выйти преджевременно. Плюс, в каком-то перформанс тесте я встречал, что итератор и forEach работают намного медленнее классического for (let i = 0; i < a; i++). Так что если встаёт вопрос быстрого перебора больших массивов, да ещё чтоб останавливать в нужном месте, то лучше каноничного фора ничего нет.
Аноним 12/04/18 Чтв 16:14:38 #154 №1172325 
>>1172115
>Но в чём отличие и где применять каждый из них - я нигде не нашёл инфы.
В том что в жс нет цикла форич. Метод массива форич есть, а цикла нет. Соотв-но фор универсален, форич нет.
Аноним 12/04/18 Чтв 16:21:56 #155 №1172330 
>>1172325
Причем for работает быстрее, чем вызов метода.
Аноним 12/04/18 Чтв 16:37:07 #156 №1172355 
Анончик, чё пачитать по вебпаку? У меня три пакета p5js+webpack+webpack-cli тянут 1 мб зависимостей в деве, это немножко дохуя и собирается неприлично долго для хелло ворда. Я хочу чтобы эта сука не пихала в бандл неиспользуемые зависимости.
Аноним 12/04/18 Чтв 18:49:25 #157 №1172463 
>>1172355
в деве это норма вроде, кроме доков был какой-то реп с вкусностями по вебпаку, что-то типа авсом реакт только авсом вебпак но не точно так
Аноним 12/04/18 Чтв 19:12:37 #158 №1172494 
>>1167958 (OP)
Я просто оставлю это здесь: https://dev.to/_gdelgado/the-economics-of-js-182d
Аноним 12/04/18 Чтв 19:14:01 #159 №1172497 
>>1167958 (OP)
Привет, программач. Пишу приложение на Node. Нужно сделать так, чтобы при подключении первый пользователь попадал на страницу с ссылкой, передав которую второму пользователю тот мог бы подключиться к первому. При этом, этом, нужно чтобы одновременно больше одной пары пользователей могли поддерживаться подобным образом.
Как это сделать? Подозреваю, что нужно как-то химичить с socket.io и неймспейсами, но не совсем понятно, как именно.
Аноним 12/04/18 Чтв 19:23:40 #160 №1172503 
>>1172494
Я просто посылаю тебя нахуй.
Заебали уже со своими высерами.
Аноним 12/04/18 Чтв 19:31:32 #161 №1172507 
>>1172503
Таблетки опять забыл принять?
Аноним 12/04/18 Чтв 20:08:57 #162 №1172528 
Screenshot568.png
Анон, поясни идиоту, какого хуя тут 16?
Цикл выполняется до i = 7 (потому что знак i<8, а не i<=8), и "sum+=i" тоже делает sum = 7.
Так чому тут 16? Я понять не могу.
sageАноним 12/04/18 Чтв 20:28:59 #163 №1172534 
>>1172528
Ты довен? 4+5+7=16
Аноним 12/04/18 Чтв 20:29:07 #164 №1172535 
>>1172528
5+4+7 = 16
Аноним 12/04/18 Чтв 20:30:57 #165 №1172536 
>>1172534
>>1172535
Он все полученные i складывает, что ли?
Бля, ебать я тупой.
Аноним 12/04/18 Чтв 20:31:15 #166 №1172537 
>>1172534
>>1172535
Алсо, благодарю вас.
sageАноним 12/04/18 Чтв 21:56:50 #167 №1172580 
>>1172537
sum+=i это сокращённая запись sum = sum + i.
Аноним 12/04/18 Чтв 22:53:48 #168 №1172614 
>>1172330
Как вы заебали. А вы ожидали, что вызов функции на кажду. итерацию будет быстрее цикла, что ли? Вы ебаутые? нахуй вы каждый раз повторяете быстрее, быстрее. А код без функций еще быстрее, что теперь - не использовать функции? Ты тупой? Сукка, нахуй иди мудак.
Аноним 12/04/18 Чтв 23:12:01 #169 №1172628 
>>1172614
Вызов функции инлайнится в 95% случаев, кстати.
Аноним 12/04/18 Чтв 23:17:47 #170 №1172635 
>>1172628
Нет.
Аноним 12/04/18 Чтв 23:48:17 #171 №1172651 
>>1172635
Жс-пидора ответ.
Аноним 13/04/18 Птн 09:16:25 #172 №1172802 
>>1172580
Да, это я понял. Просто при самостоятельном разборе кода я совсем забыл про sum+=i и не брал в расчет выполнение этой строки совсем.
Невнимательность - один из моих главных врагов.
Аноним 13/04/18 Птн 15:16:04 #173 №1172910 
>>1167958 (OP)
Хочу вкатится в платный курс на learn.javascript.ru, стоит ли оно того?
Аноним 13/04/18 Птн 16:01:03 #174 №1172940 
>>1172910
Нет, уже долгое время существует понятие Open Source, платные курсы дают тебе то что ты сможешь найти сам и вполне бесплатно.
Аноним 13/04/18 Птн 16:31:47 #175 №1172959 
>>1172940
Это понятно, что найти сейчас можно всё. Просто мне хотелось бы найти нечто цельное и систематизированное по ноде и (желательно) реакту, вот и присматриваюсь к разным курсам.
JS-непидор 13/04/18 Птн 18:25:14 #176 №1173058 
рожки-палец.jpg
Я за повышение привилегий для ЛГБТ!

мимонепидор
Аноним 13/04/18 Птн 18:42:29 #177 №1173068 
>>1172910
Не стоит, просто всрёшь деньги.
Обычно на курсы идут те, кому сложно читать статейки, и им хочется чтобы их научили. На деле информации там всегда меньше чем нужно, и самое страшное, ты себя приучиваешь к тому что-бы кто-то тебе всё обьяснял. Но при этом всём курсы всё равно годная штука чтобы их наворачивать с видосами, статьями, документацией, мастер-классами, но естественно если не платить за них деньги, и не проходить их по два-три месяца, лол. А смысл отдавать деньги за что-то если тебе все равно потом придется дообразовываться из других источников?
К тому же я смотрел один курс с лернжс, и там было просто адовое качество с бульканьем микрофона и со звуками автомобилей из окна. А люди за это ведь платят.
Аноним 13/04/18 Птн 19:29:29 #178 №1173094 
>>1172802
А всё потому что отступы на скрине кретин расставлял и с первого взгляда и не очевидно, что sum+=i внутри лупа находится.
Аноним 13/04/18 Птн 20:05:51 #179 №1173110 
Анон, вопрос по сокетам, а точнее библиотеке socket.io.
Как, сука, задетектить, что socket.emit('msg') прошел, а не соснул с ошибкой?
Там вторым аргументом ебаный коллбек на выполнение, в оф.доке не нашел ответа.
Аноним 13/04/18 Птн 20:14:22 #180 №1173112 
675765765.png
Анонче, помоги решить задачу, уже третий час голову ломаю, подсказку дайте чтоли какую.
Аноним 13/04/18 Птн 20:19:11 #181 №1173116 
>>1173112
Че тут сложного то
Для каждого i элемента в массиве:
_если сумма элементов от 0 до i-1 равна сумме элементов от i+1 до последнего:
__добавить i в массив ретурна
Аноним 13/04/18 Птн 20:22:38 #182 №1173119 
>>1173116
А половины массива выбирать слайсом?
А вот в последнем примере как у первого и последнего чисел массивов справа и лева беруться нули?
Аноним 13/04/18 Птн 20:41:07 #183 №1173135 
>>1173094
Грубо, но верно.
Есть ли какие- то сервисы, которые подгоняют строки для более приятного и понятного чтения?
Вроде бы похожий сервис видел гайде по пхп в соседнем треде.
Аноним 13/04/18 Птн 20:42:43 #184 №1173137 
>>1173116
Если индекс первый, сумма слева = 0, если индекс последний, сумма справа = 0
Собираешь нужные индексы слайсом и через reduce сумму ищешь
Аноним 13/04/18 Птн 21:25:57 #185 №1173160 
image.png
Вы мне только скажите, я реально настолько тупой или синтаксис жса действительно местами сложный?
Откуда столько скобок блять, как не привыкшему глазу это уловить все? Как понять что где куда?
Аноним 13/04/18 Птн 21:30:52 #186 №1173166 
>>1173116
>>1173137
И все равно чё то не получается нихуя, можно пример?
Аноним 13/04/18 Птн 21:45:43 #187 №1173181 
Captured1.png
>>1173160
И вправду слишком много скобок. Убери первую круглую и ставь точку с запятой после закрывающей фигурной.

Вот типичный JS-код в стиле 2009-2015 года (как видишь, это конструктор класса), и там нет ничего сложного.
Аноним 13/04/18 Птн 22:07:17 #188 №1173204 
Selection041.png
>>1173166
Аноним 13/04/18 Птн 22:08:54 #189 №1173206 
>>1173181
пиздец анон оформление у меня слёзки через 1 секунду
Аноним 13/04/18 Птн 22:12:56 #190 №1173211 
>>1173204
Спасибо, анонче, вроде сам только что решил, не так изящно конечно но вроде работает, добра.
Аноним 13/04/18 Птн 22:15:21 #191 №1173214 
>>1173206
А всё из-за того, что код написан под старые браузеры, а ещё там подключён React, и в его файлах отступы должны быть сделаны Tab'ами.

Так-то я написал бы лучше. Сам рыдаю от єтово.
Аноним 13/04/18 Птн 23:23:44 #192 №1173245 
>>1173214
я думаю тот анон про цветовую гамму, лол
Аноним 13/04/18 Птн 23:25:38 #193 №1173248 
Котаны кто вкатывается гоу в конфу в телегу
джоинт чат ERcgzA_J3RefVnGflzvo5w
Аноним 13/04/18 Птн 23:26:17 #194 №1173250 
Безымянный.png
Для избранных
>>1173248
Аноним 14/04/18 Суб 10:48:25 #195 №1173442 
>>1173250
ахуеть конфа из одного ананаса
Аноним 14/04/18 Суб 12:16:07 #196 №1173481 
>>1173442
Какой язык, такая и конфа.
Аноним 14/04/18 Суб 12:27:32 #197 №1173484 
>>1172959
будь оригинальней, читай первоисходники, на этих курсах штампуют мусор
Аноним 14/04/18 Суб 15:38:11 #198 №1173588 
Читаю Кантора, дошел до замыканий и обсираюсь на каждом шагу. Не могу решить ни одного задания, внезапно из-за того что 3 дня уже читаю это - позабыл все. Даже сортировку забыл как делать.
Заново читать Кантора или лучше пока не проебал вообще всю цепочку перепрыгнуть на альтернативный источник информации?
Аноним 14/04/18 Суб 16:20:55 #199 №1173621 
>>1173588
Порешай задачки на кодварс, потом вернись к замыканиям
Сам так делаю
Аноним 15/04/18 Вск 09:12:31 #200 №1174049 
Почему к реакту практически нет никакой официальной документации? На reactjs есть либо туториалы, либо типа доки, которые на самом деле никакие не доки, а набор сказок с примерами, из которых нужно сидеть вылавливать, что же блять делает конкретная функция, что она принимает, и что возвращает. Вот хочу я, допустим, узнать про setState, что там за колбек есть, принимает ли он аргументы и какие, есть ли гарантия, что он вообще выполнится, и если выполнится, то когда именно -- а хуй там, нихуя не написано. Про события вообще молчу, молчаливо высрали наборы пропертей для каждого события и типа на этом доки закончились. А что это блять за проперти, какие у них области допустимых значений, где я это должен узнавать? В гугле в бложиках ноунейм смузидебилов? Это типа норма для жс-экосистемы или как?
Аноним 15/04/18 Вск 09:25:56 #201 №1174051 
>>1174049
Какая документация еще. прошлый век? Смотри Дена Абрамова на ютубчике, попивая смузи.
Аноним 15/04/18 Вск 10:16:07 #202 №1174058 
>>1167958 (OP)
Бля, понравился мне этот язык. Он как гибрид питона и си, но вместо шестерёнок и поршней тебе выдали глину, лепить из неё.
Аноним 15/04/18 Вск 11:12:11 #203 №1174070 
>>1174049
Чтобы написать документацию, надо знать как это говно работает. А если знаешь, то она и не нужна. А там новая версия выйдет
Аноним 15/04/18 Вск 11:25:12 #204 №1174073 
>>1174070
Ну охуеть теперь. То есть вывалили библиотеку без доксы, без нихуя, с полутора рекламными высерами в бложике и все, пользуйтесь, ребята? Заебок, чо. Надо ораклу предложить тоже на такую систему перейти. А то чо в каменном веке-то жить, документация какая-то, обратная совместимость, program against interface, какая чепуха, господи. То ли дело написал drinkSmuzzi() и потом переебываешься с ней по гуглу, пока не найдешь восемнадцатым коментом в бложике васяна, что же эта блядская функция все-таки делает.
Аноним 15/04/18 Вск 12:16:03 #205 №1174094 
>>1174073
Макаки осиливаю, а ты сломался. Не стыдно?
Аноним 15/04/18 Вск 12:16:32 #206 №1174095 
>>1174094
>осиливаюТ
fix
Аноним 15/04/18 Вск 12:27:46 #207 №1174110 
>>1174049
раздел апизреференс тебе на что
Аноним 15/04/18 Вск 13:07:12 #208 №1174135 
>>1174110
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. Что из этого мне должно стать понятно про его использование?
Аноним 15/04/18 Вск 13:57:35 #209 №1174153 
>>1174135
То, что это обычный жс колбэк, который заупскается после основного тела функции. Колбэки гуглить в тч в канторе.
Аноним 15/04/18 Вск 14:31:19 #210 №1174171 
>>1174135
Одно слово - асинхронность.

Смысл в том, чтобы дать тебе знать, когда эта операция закончится.
Иногда в таких случаях в колбек передаётся ещё некий параметр - состояние, ошибка и т.п.
Аноним 15/04/18 Вск 14:35:56 #211 №1174175 
>>1174153
Нииит. Это не правильна. Ни па уму. Надо, чтобы в описании каждого метода\функции, любой, даже самой простейшей библиотеки были пояснения, что такое функция, что такое коллбэк, что такое строка, что такое число, как числа представлены в языке, как представлены объекты, что такое объекты, что такое методы, что такое переменные. Иначе это не па инжинерному и жс гавно
Аноним 15/04/18 Вск 14:57:06 #212 №1174200 
>>1174175
Ну, честно говоря, документация для большинства js либ и фреймворков оставляет желать.

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

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

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

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

мимо другой анон
Аноним 15/04/18 Вск 16:02:03 #213 №1174254 
>>1174153
>>1174171
Ребята, я знаю, что такое колбэк и что setState выполняется асинхронно. Но какие аргументы передаются в этот колбэк? Можно ли внутри него вызывать setState? Вопросов такого рода можно назадавать кучу, а ответы на них искать негде, разве что в сырцы лезть.
>>1174175
Че ты кривляешься, не маленький уже.
Аноним 15/04/18 Вск 16:17:51 #214 №1174264 
Нужно, чтобы при нажатии на буквенные клавиши исчезал текст.

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

https://codepen.io/anon/pen/yKdRxR
Аноним 15/04/18 Вск 17:26:15 #215 №1174303 
>>1174264
Рискну предположить, что твой div не сфокусирован. Более того, из коробки он и не будет фокусируемым, тебе нужно руками добавить ему это свойство. tabIndex вроде называлось, погугли кароч.
Аноним 15/04/18 Вск 17:32:48 #216 №1174308 
>>1174303
>твой div не сфокусирован
Что это? Впервые слышу.

Тут проблема в условии. Если его убрать вообще, то при нажатии любой клавиши див исчезает.
Аноним 15/04/18 Вск 17:37:46 #217 №1174313 
>>1174303
Это же не форма и не ссылка.
Ты либо слишком жирно траллишь либо вообще далёк от жс.
Аноним 15/04/18 Вск 18:00:46 #218 №1174324 
>>1174308
без условия выведи в консоль кейкод на любую нажатую клавишу, и увидишь что твоё условие построено совершенно неверно, код совершенно другой на буквенные клавиши
Аноним 15/04/18 Вск 18:04:39 #219 №1174327 
>>1174324
fix: забыл добавить, используй keyup или keydown и все будет работать
Аноним 15/04/18 Вск 18:05:01 #220 №1174328 
>>1174324
Спасибо, выяснил, что a-97, а z-122

Почему тогда во всех справочниках пишут, что это 65 и 90 соответственно?
У меня разрыв шаблона.
Аноним 15/04/18 Вск 18:16:59 #221 №1174333 
>>1174264
>2018
>без ж-квери
Лал.
Добавь класс, который делает текст альфой.
Аноним 15/04/18 Вск 18:47:25 #222 №1174344 
Анон, зающий реакт и сокеты, и использовавший эти две технологии в построении спа, есть к тебе вопрос (круто было бы в личку, @ke3evra)
Нужна интеграция сокетов с редаксом, и есть наработки в ту или иную сторону, хочется услышать критику этих решений или твой совет, как не соснуть с расширением приложения.
Аноним 15/04/18 Вск 19:30:29 #223 №1174369 
>>1167958 (OP)
Анон, подскажи, как сделать такой файл, чтобы из него можно было тянуть примера json-запроса?

Я тут пытаюсь написать обработку json-ответа от сервака, но сами ответы нерегулярны и вот хочу записать пример в файл, чтобы дергать, когда понадобится, но просто запихнуть массив в квадратные скобки - недостаточно!
Аноним 15/04/18 Вск 20:30:01 #224 №1174407 
>>1174254
Почему нет?
Но, только тоже асинхронно - через setTimeout(setState, 0).

Если туда параметры нужны - сделай функцию-обёркту.
Аноним 15/04/18 Вск 20:45:10 #225 №1174425 
>>1174344
Пиши тут.
Аноним 15/04/18 Вск 20:46:29 #226 №1174428 
>>1174369
Дергай апи двача.
Аноним 15/04/18 Вск 21:01:07 #227 №1174448 
>>1174369
А не проще Node поднять или какой-нибудь детский веб-сервер?
Аноним 15/04/18 Вск 21:04:50 #228 №1174455 
$.getJSON( "ajax/test.json", function( data ) {
var items = [];
$.each( data, function( key, val ) {
items.push( "<li id='" + key + "'>" + val + "</li>" );
});

Чёт я не понимаю откуда берутся тут ключи и значения, если их нигде не указывают и не объявляют.
Аноним 15/04/18 Вск 21:10:42 #229 №1174458 
>>1174455
А в json'е у тебя что - хуй собачий?
Ты попробуй уже понять, что у тебя там написано, и зачем.
Аноним 15/04/18 Вск 21:11:46 #230 №1174460 
>>1174458
Ало, это пример из документации.
Аноним 15/04/18 Вск 21:20:25 #231 №1174470 
>>1174460
JSON - это и есть набор пар ключ-значение (т.е. просто объект).

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

Т.е., если на вход each подать не массив, а map (объект), то он будет передавать в callback пару аргументов, а не один.

Аноним 15/04/18 Вск 23:15:15 #232 №1174579 
>>1174425
Хм, постараюсь донести мысль.
В спа есть два варианта общения с сервером -- обычные запросы через axios и через socket.io.
При инициализации приложения создается инстанс апи-клиента аксиоса. _Все_ запросы этого инстанса вызываются исключительно через асинхронные редакс экшоны, доступ к апи-инстансу изнустри любым компонентов невозможен.
Вопрос -- как реализовать общение через сокеты?
Как я вижу.
Все сокет.эмиты идут точно так же, как и запросы аксиоса -- через асинхронные редакс экшоны.
Нужно что-то заэмитить -- вызывается экшон, после прохождения него диспатчится успешный (или не очень) экшон.
А вот куда пихать все листенеры сокета?
В моем представлении -- в роутах аи рядом с объявлением инстанса сокета. Причем при объявлении инстанса сокета передавать ему заинициализированный стор, уже диспатчить нужное действие при получении данных с сервера.
Жду критику решения.
Аноним 15/04/18 Вск 23:17:20 #233 №1174580 
>>1174579
Олсо, даже опишу так.

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

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

Решение: все эмиттеры лежат в экшонах, все листенеры -- в роутах рядом с инстансом с подключенным стором.
Аноним 16/04/18 Пнд 09:40:51 #234 №1174789 
Да блять, откуда ЖС берёт переменные, которые не объявлены? Что это вообще?
Аноним 16/04/18 Пнд 09:57:29 #235 №1174792 
>>1174789
Они объявлены.
Аноним 16/04/18 Пнд 09:58:33 #236 №1174793 
>>1174792
В функцию передают переменную и вызывают её метод. Но она не объявлена нахуй!
Аноним 16/04/18 Пнд 10:00:17 #237 №1174794 
>>1174793
Объявлена.
Аноним 16/04/18 Пнд 14:20:42 #238 №1174899 
>>1174793
Ты о чём?
Об этом: >>1174455 ?
Или о чём-то другом?
Аноним 16/04/18 Пнд 14:55:32 #239 №1174913 
Что скажите? Стоит вкатываться?
https://yopta.space

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

куку йопта law() жЫ
вилкойвглаз(gop типа нечотко) жЫ
ксива.малява("Я и правда язык") нах
gop сука чотко нах
есть иливжопураз жЫ
gop сука чотко нах
потрещим(semki чоблясука трулио) жЫ
lt сука ксива.вычислитьЛохаПоНомеру("list") нах
ебало.шухер("Привет, йопта") нах
есть
есть
есть
Аноним 16/04/18 Пнд 15:31:19 #240 №1174938 
>>1174913
Ты знаешь, что то, что ты притащил - старше, чем ты. Что ты хотел этим показать? Что ты не слишком умный?
Аноним 16/04/18 Пнд 15:38:48 #241 №1174941 
>>1174938
>Ти не слишкам умныи, азязя
Аноним 16/04/18 Пнд 16:11:02 #242 №1174960 
Посоны, есть привязанный к html .js, в нем набор функций и ивент листенеры.
Проблема в том, что эти функции выполняются в любом случае, как только на строчки с ними попадает парсер. А мне нужно, чтобы только при кондишене. При этом запихать её сразу после этого кондишена не могу, потому что вызывать надо при разных событиях. Что делать?
Аноним 16/04/18 Пнд 17:01:27 #243 №1174981 
>>1174254
В смысле какие аргументы. Я туда полностью свои функции (экшоны) с любыми аргументами из саг хуячу уровня fetchSomeData(this.state)
Аноним 16/04/18 Пнд 17:26:20 #244 №1174991 
Аноны дайте совет как лучше реализовать, предположительно юзеру нужно выдавать логины-пароли через сайтик вида "user1488;12345" по нажатию на кнопку после авторизации. Мне нужно эти логины периодически куда то добавлять в более удобном виде, что бы потом они после выдачи юзеру заносились в какую нибудь другую БД как использованные с меткой времени, когда именно было выдано.
Как самое простое думал заносить их просто в txt файл, парсить первый. После выдачи юзеру удалять позицию и заносить ее в другой txt файл отработанных логинов с припиской времени когда именно было выдано.
Может подскажите более элегантный вариант, желательно подсказать в какую сторону копать. Я еще не макака, я только учусь.
Аноним 17/04/18 Втр 00:21:27 #245 №1175166 
Есть ли какие-то библиотеки для попиксельной обработки изображений в js? Это вообще на нём возможно? Там же нужно файл декодировать. Или в ином случае мне на стороне сервера лучше преобразовать в json и на клиенте уже работать с массивом? Как тогда сократить по памяти огромный несжатый список?
Аноним 17/04/18 Втр 00:44:38 #246 №1175169 
>>1174991
Майэскуэль подними и не еби мозги. В три строчки всё сделается.
Аноним 17/04/18 Втр 00:49:41 #247 №1175173 
>>1174455
Есть токая хуйня, как callback. Эта просто функция, которая вызовется в будущем, и ей будут передана нужная информация в виде аргументов.

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

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

В принципе, п. 2 норм реализуется через редьюсер и миддлвару. Экшны только синхронные, редьюсер чисто обновляет стор, реагируя на экшны, а задача миддлвар — ебаться с аяксами/сокетами, и в нужные моменты просто хуярить экшны UPDATE и т д.
Аноним 17/04/18 Втр 01:28:18 #249 №1175192 
>>1175166
>Это вообще на нём возможно?

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

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

В принципе, писал сейчас простыню и понял, что в уме раскидал, как должны лежать слушатели, эмиттеры и прочее говно, и потому стер все вопросы.
Спасибо за ответ.
Аноним 17/04/18 Втр 01:53:00 #251 №1175199 
>>1175198
ну я на самом деле хотел вообще рекомендовать избавиться полностью от такой хуйни как «асинхронные экшны». Thunks — нахуй короче.

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

А на сокеты и на АПИ можно просто написать 2 разные миддлвары, которые в нужные моменты будут вызывать нужные экшны
Аноним 17/04/18 Втр 02:07:41 #252 №1175206 
>>1175173
После промисы, после асинк эвейты, лол.
Аноним 17/04/18 Втр 02:09:28 #253 №1175209 
>>1175199
Ну да, мидлвары для сокетов и для апи разнесены.
И type: success (или fail) диспатчится в стор только после прохождения запроса, на промисах.
Аноним 17/04/18 Втр 02:57:04 #254 №1175219 
>>1175206
Но лучше конечно вовремя обойти эту ересь и погрузиться в алгебраические типы.

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

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

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

Короче я бы сделал может как-то так.
https://codepen.io/anon/pen/VxZgQO
Аноним 17/04/18 Втр 23:30:07 #258 №1175765 
>>1175747
Я вообще нуб, нихуя жс не знаю. Но предложу такой вариант https://codepen.io/anon/pen/BxBMMQ?editors=1111
работает, но 300к-аноны могут найти какие-нибудь изъяны с высоты своего опыта
Аноним 17/04/18 Втр 23:32:59 #259 №1175769 
>>1175759
Ты крут
Аноним 17/04/18 Втр 23:36:59 #260 №1175772 
polinameyer1.jpg
>>1175753
>>1175747
>>1175765
Спасибо, чуваки! Ожидал закидывания говном, а мне прилетело 3 бодрых ответа
Хочу ещё кнопку одну добавить туда же типа "Добавить интерес", которая добавляет такие же баттоны, подскажите, в каком направлении гуглить?
Аноним 17/04/18 Втр 23:46:35 #261 №1175778 
polina3.jpg
>>1175759
fix
Тебе отдельное спасибо за комментарии в коде
Аноним 17/04/18 Втр 23:46:44 #262 №1175779 
>>1175769
ага, и больше не пишу на JS :)

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

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

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

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

Для пункта 2 точно надо будет тэг добавить. Для остальных мб классы и так далее по вкусу.
Аноним 18/04/18 Срд 00:00:10 #265 №1175785 
polinagif.gif
>>1175782
>>1175779
Я так понимаю ты тот анон с комментариями в коде. Задачку взял в разработку
Оставишь телегу/скайп/любое фейкомыло?
Аноним 18/04/18 Срд 00:13:22 #266 №1175787 
>>1175785
[email protected]
Аноним 18/04/18 Срд 00:46:15 #267 №1175795 
>>1167958 (OP)
Что можно сделать нв реакте чтобы взяли на работу? Вышке нет, вкатывась в реакт
Аноним 18/04/18 Срд 01:10:21 #268 №1175802 
>>1175795
бочку
Аноним 18/04/18 Срд 01:36:16 #269 №1175806 
>>1175782
Такие вещи надо уже делать на vue или на реакте.
Иначе бессмысленное пердоленье с dom получится.

Или пилить свой MVC, лол.
Аноним 18/04/18 Срд 01:37:22 #270 №1175808 
>>1175802
Хуйцы же.
А бочку - соснуть.
Аноним 18/04/18 Срд 01:42:55 #271 №1175811 
>>1175765
Чего только люди не придумывают, чтобы не пользоваться jQuery.
Аноним 18/04/18 Срд 01:44:07 #272 №1175812 
>>1175811
Блядь, не туда.
Это вот сюда: >>1175759
Аноним 18/04/18 Срд 02:31:37 #273 №1175824 
>>1175806
>Такие вещи надо уже делать на vue или на реакте.
>Иначе бессмысленное пердоленье с dom получится.

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

Ещё (надеюсь) остались люди, которые хотят стать толковыми разработчиками.
Аноним 18/04/18 Срд 02:38:39 #274 №1175827 
>>1175824
Я прагматик.
А толковым разработчиком я давно уже стал.

Но, конечно, лучше, если человек сам дойдёт до понимания, что просто так, ad-hoc, ковыряться в dom - это не кошерно, и надо как-то это систематизировать.
Аноним 18/04/18 Срд 06:46:19 #275 №1175887 
>>1175747
Пиздец тут насоветовали.
https://codepen.io/anon/pen/qYBEmm
Аноним 18/04/18 Срд 11:30:48 #276 №1175948 
>>1175827
Я не тот чел которому ты пишешь, но отвечу. Там задание то ведь обычное и изичное. Даже туду не назову. Там 50 строк кода будет, из которых 30 просто работа с ДОМ: создать элемент, добавить класс\айди, засунуть элемент. А остальные строки это проверки. Вот и все. Ради такого не надо подключать реакт, вью или ЖК.
Аноним 18/04/18 Срд 12:15:11 #277 №1175966 
>>1175948
>Там 50 строк кода будет
Да, и все их придётся переписать при небольших изменениях в ТЗ.
А потом ещё раз.
И ещё.

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


Аноним 18/04/18 Срд 13:32:01 #278 №1175984 
>>1175795
что-нибудь с асинхронными запросами или ТЕСТОВОЕ.
Аноним 18/04/18 Срд 16:53:34 #279 №1176048 
superpolina.jpg
>>1175772 -изучающий ЖС анон репортинг ин
https://codepen.io/JavaHutt/pen/zjYNvy
Вобщем копаясь в стаковерфлоу, пытаюсь что-то делать по своей задачке, но всё не гладко
Вроде бы новым баттонам присваиваю класс removable, но удаление по клику не срабатывает как с предыдущими кнопками. Обработчика событий в инспекторе на новые кнопки вообще нет..
Алсо есть какой-то способ новые элементы помещать вначале блока, а не в конце?

Аноним 18/04/18 Срд 17:26:31 #280 №1176083 
>>1176048
>есть какой-то способ новые элементы помещать вначале блока
insertBefore(вставляемый элемент, родитель.firstChild)
Аноним 18/04/18 Срд 17:58:43 #281 №1176115 
>>1176048
топ тян
Аноним 18/04/18 Срд 18:12:16 #282 №1176123 
>>1176083
https://codepen.io/JavaHutt/pen/rvNJem
Переделал вообще всю систему.. кнопки ремувит, но как insertBefore внедрить понять не могу
Аноним 18/04/18 Срд 19:01:33 #283 №1176156 
>>1173135
Кнпочка TAB.
А так загугли beautify javascript, миллионы их, как онлайн так и оффлайн.
https://github.com/mishoo/UglifyJS например или http://jsbeautifier.org/
Аноним 18/04/18 Срд 19:14:07 #284 №1176171 
>>1176123
Тебе же выше писали, что инлайново вешать функции — не круто. Сделай как было раньше, а при создании новой кнопки вешай на нее eventListener отдельно.
между кнопками которые добавлялись скриптом не было отступа потому что они расположены инлайново и между ними нет текста, а в первых трёх он есть, это переход на новую строку, вот, если хочешь, чтобы был отступ – сразу добавляй текст ноду
Аноним 18/04/18 Срд 19:35:52 #285 №1176182 
Блять, что за говно ваш карриинг, почему сука функции создают функции, которые создают функции, которые создают функции. Идите нахуй, говно ебаное. Нахуй это надо, когда можно просто взять 3 ебаеных аргумента в скобочки и не ебать мозги с этим говном ебучим.
Аноним 18/04/18 Срд 19:49:38 #286 №1176190 
>>1176182
Самому-то не стремно от собственного неосиляторства?
Аноним 18/04/18 Срд 19:54:28 #287 №1176194 
>>1176190
твоя мать шлюха, а это говно придумали пидодрасы из фейсбука чтобы россию развалить
Аноним 18/04/18 Срд 19:56:35 #288 №1176197 
>>1176194
Держи нас в курсе.
Аноним 18/04/18 Срд 19:57:24 #289 №1176198 
>>1176197
Передавать сука! функцию, как аргумент, ебаные мудоебы, твари недотраханные, рендер сука, ахаххах, просто блять жирная мать шлюха не влезла в пропсы, вот они и высрали это говно
Аноним 18/04/18 Срд 20:00:32 #290 №1176203 
>>1176198
Продолжайте наблюдение, мы с вами свяжемся.
Аноним 18/04/18 Срд 20:03:17 #291 №1176206 
>>1176203
Да я заебался, я каждый раз пишу
ебучее говно = говно=>моча=>тупое говно тупого говна
И нихуя не понимаю как это работает. Ебучий контринтуитивный паттерн, нахуй он вообще нужен. Сколько блять месяцев еще надо писать это хуеговно, чтобы привыкнуть
Аноним 18/04/18 Срд 20:03:23 #292 №1176207 
>>1176182
у меня там при добавлении новых кнопок им приписывался класс removable, но почему-то это не считалось элементом массива removableButtons
Я не понимаю как это работает, поэтому "крутизной" пришлось пожертвовать и добавить инлайн
А вот вопрос про инсерт всё ещё в силе
Аноним 18/04/18 Срд 20:09:23 #293 №1176209 
>>1176207
вот это было сюда >>1176171
Аноним 18/04/18 Срд 21:49:58 #294 №1176303 
>>1176207
Сделай это на jQuery. Гораздо проще будет.
А потом - попробуй сделать без, если захочется.

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

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

Т.е. лучше добавлять объект "интерес" в массив интересов (или удалять из него), а потом рендерить это в DOM. Руками или с помощью шаблонизатора (JsRender).
Тебе же не сами по себе эти кнопки нужны, правда?
Аноним 18/04/18 Срд 21:59:59 #295 №1176311 
>>1176303
пусть лучше на реакте напишет, там как раз можно онклики навешивать в дом)
Аноним 18/04/18 Срд 22:32:16 #296 №1176351 
>>1176303
>>1176311
Спасибо вам, но я реально новый в js и программирование вцелом, хотелось бы разобраться в нативе для начала.
Кому интересно, переписал в очередной раз всё заново, даже вперёд смог поместить
https://codepen.io/JavaHutt/pen/ZoEVLz
Единственная проблема что он не отрабатывает условие, при котором я ввожу пустое значение в промпт
Аноним 18/04/18 Срд 22:48:10 #297 №1176361 
>>1175966
Прежде чем учить матан, надо выучить таблицу умножения. Базовые операции с DOM — это таблица умножения.

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

Мартышка, которая и может, что использовать реакт — не разработчик. Норм разработчик, если надо, сам тебе напишет свой реакт.
Аноним 18/04/18 Срд 22:55:13 #298 №1176365 
>>1176206
Это просто нужно liftN сразу в мозг.
Аноним 18/04/18 Срд 23:05:39 #299 №1176370 
>>1176351
Давай по порядку

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 инпут был, и псевдоссылка для удаления. В общем, поинтереснее
Аноним 18/04/18 Срд 23:07:08 #300 №1176371 
>>1176361
Да ну, что плохого быть мартышкой с трехзначной зп. А вообще в реакт доках есть инфа как его написать самому) если серьезно, то я считаю, что нет разницы учить ли сверху вниз или снизу вверх,по эффективности по крайней мере. Но мне было интереснее начать с реакта. Тк он проще
Аноним 18/04/18 Срд 23:08:29 #301 №1176374 
>>1176351
>не отрабатывает условие
Сделай if (newContent.length) {...}
Аноним 18/04/18 Срд 23:09:08 #302 №1176375 
>>1176303
Ты говоришь про state management. Это пока вторично, следующий этап. Надо для начала разобраться, какие бывают элементы, какие события и узнать несколько базовых DOM-методов.

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

Когда будет уже какое-то сложное приложение с логикой, тогда можно будет и о state management, и о фреймворках задуматься.
Аноним 18/04/18 Срд 23:14:30 #303 №1176379 
>>1176371
Есть разница. Мартышка, которая привыкла учиться, пробегаясь по вершкам, не докапываясь до сути, может и достигнет трёхзначной зп, но с большой вероятностью так и остановится на средненьком уровне. В начале первой сотни, если тебе так нравится всё мерить зп.

Люди, предпочитающие фундаментальный подход к обучению, постараются разбираться в сути того, что происходит, и делать вещи, понимая, как они работают. Таким людям будут доверять строить реально сложные системы, принимать решения. Это уже путь ко второй-третей сотне.
Аноним 18/04/18 Срд 23:50:46 #304 №1176391 
>>1176351
>>1176374
>не отрабатывает условие

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

А всё потому, что переменные надо нормально назвать, лол.
Новый text node - значит newNode или newTextNode, а newContent я принял за строку чисто на автомате.
И эта блядская хипстерская тёмная тема ещё.
Аноним 18/04/18 Срд 23:51:16 #305 №1176392 
polinablack.jpg
>Давай теперь перепишем всё без инлайновых onclick. Только addEventListener.
Сорри, не укладывается в голове как это сделать. Не первые сутки уже с этой фигнёй работаю, как только не подлазил, мозги кипят реально уже :\
И ты тот самый квестгивер, я тебе писал на фейкопочту, а ты не ответил
Аноним 19/04/18 Чтв 00:14:01 #306 №1176405 
>>1176392
>не укладывается в голове как это сделать.
Почитай про то, как работают события в браузере.

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

https://stackoverflow.com/questions/34896106/attach-event-to-dynamic-elements-in-javascript
Аноним 19/04/18 Чтв 00:46:23 #307 №1176417 
>>1176405
https://codepen.io/JavaHutt/pen/ZoEVLz
обновил, с горем поплам
Так долго в монитор с тупым лицом я давно не пялился
Аноним 19/04/18 Чтв 01:00:51 #308 №1176427 
>>1176417
>var newString = document.createTextNode(prompt('Новый интерес',''));

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

var newString = prompt('Новый интерес','');
if (newString) {
var newTextNode = document.createTextNode(newString);
var newButton = ...;
...
...
}
Аноним 19/04/18 Чтв 01:04:26 #309 №1176428 
>>1176417
>newButton.addEventListener(...)

Так можно, в принципе. Всё работает.
Но, зачем каждой кнопке свой новый обработчик, если можно обойтись одним общим?
Когда выспешся - вот это прочти ещё раз: >>1176405
Аноним 19/04/18 Чтв 01:05:12 #310 №1176430 
>>1176417
Хм, а и сойдёт ведь :3
С горем пополам, молодец.

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

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

1175782-анон
Аноним 19/04/18 Чтв 01:07:35 #311 №1176431 
>>1176428
> зачем каждой кнопке свой новый обработчик, если можно обойтись одним общим

Ну это честно уже вкусовщина. В конкретной ситуации правда похуй. В реальном проекте можно так, можно эдак, по ситуации смотришь на структуру компонентов. Ящитаю на данном этапе решение анона вполне принимается.
Аноним 19/04/18 Чтв 01:23:17 #312 №1176434 
Screen Shot 2018-04-19 at 1.20.35 AM.png
>>1176392
Хе, и правда, писал. Ты не подружился с гугловским спам-фильтром, лол. Буду проверять спам тоже.
Аноним 19/04/18 Чтв 01:58:08 #313 №1176443 
>>1176392
>>1176434

Ответил. Я нихуя не пойму, доставлено, нет, там загружается бесконечно. Ебучий РКН, не проссышь, то ли просто тормозит, то ли очередной гугловский сервак заблочили.
Аноним 19/04/18 Чтв 05:47:07 #314 №1176461 
>>1176443
Пользовался бы божественным mail.ru, то не было таких проблем
Аноним 19/04/18 Чтв 06:07:18 #315 №1176463 
Сап, проверьте, пжлста, у вас behance открывается?
У меня грузит главную, но не прогружает скрипт с cdn a5.behance.net со вчерашнего вечера. Провайдер МТС. Айпишника cdm в реестре нет.
Отпишитесь плиз.
Аноним 19/04/18 Чтв 06:30:11 #316 №1176466 
>>1176379
Не думаю, что будет, что-то плохое, если отучиться фундаментально на другом уровне абстракции и потом перейти на более низкий. С реакта и легкого ес6 сахара на жс и работу браузера. Или с си на асемблер. Или с арифметики к матанализу.

Почему бы не учить первее, то что учится проще и быстрее, а потом наиболее сложные не самые практичные вещи.
Аноним 19/04/18 Чтв 06:37:09 #317 №1176472 
>>1176379
Никто не изучает ничего начиная с фундаментальных вещей.
Ты не изучаешь сначала фонетику, чтобы начать говорить.
Физики не начинали изучать физику с изучения ее законов. Они начинали с наблюдения естественных процессов в быту. Ты не начинаешь изучать электронику с проектирования микросхем, ты сначала знакомишься с электроприборами.
sageАноним 19/04/18 Чтв 11:30:56 #318 №1176544 
ИТТ школозавры пытаются запилить свой первый тудулист, рассказывая, что каждый из них техлид "с трехзначной зарплатой"
Аноним 19/04/18 Чтв 14:07:25 #319 №1176639 
>>1176544
А вот и нет, у меня уже первый проект намечается! Буду верстатьтть
Аноним 19/04/18 Чтв 18:42:28 #320 №1176832 
>>1176544
Именно что с трёхзначной, лол.
Аноним 19/04/18 Чтв 21:28:46 #321 №1176935 
>>1175984
>>1175795
Вообще похуй что. Хоть даже тудулист ебашь, если ты ньюфаг и не работал над серьезными проектами.
Тебе важно показать что ты а) знаешь современный стэк реакта б) готов и любишь разбираться со всякими костылями, потому что в реакте их навалом.
Вот тебе списочек:
- 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

мимо-работал-со-всем-этим-дерьмом
Аноним 19/04/18 Чтв 21:30:02 #322 №1176936 
>>1176935
это я еще про серверный рендеринг забыл, да..
Аноним 19/04/18 Чтв 21:34:21 #323 №1176939 
>>1176935
Это тудулист надо делать со всеми этими перечисленными вещами? Или для начала react-redux достаточно?
sageАноним 19/04/18 Чтв 21:40:38 #324 №1176940 
>>1176939
Это всё нужно для того, чтобы запилить хотя бы бойлерплейт.
Аноним 19/04/18 Чтв 21:43:01 #325 №1176942 
>>1176939
нет
там где я поставил слэш - значит можно выбрать одно из, т.е. это либы для одного и того же
что тебе брать - дело твое, но ты должен хотя бы поверхностно представлять концепты и зачем кто то вообще всю эту йобу написал
Аноним 19/04/18 Чтв 22:03:01 #326 №1176946 
>>1176935
>длинный список всякой неведомой хуйни
>>1176942
>и зачем кто то вообще всю эту йобу написал

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

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

Как можно всё это использовать в продакшн вообще, если только ты не тсукерберг с охулиардом долларов на тысячи жс-обезьян?
Аноним 19/04/18 Чтв 22:03:13 #327 №1176947 
>>1176942
Спасибо большое
Аноним 19/04/18 Чтв 22:58:15 #328 №1176973 
>>1176935
В каком порядке это усваивать?

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

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

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

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

Можешь ещё отсюда скачать:
http://scanlibs.com/react-quickly-painless-redux-graphql/
Прямая ссылка:
http://turbobit.net/9gqv819yi71s.html
Аноним 19/04/18 Чтв 23:46:45 #332 №1176994 
>>1176981
Спасибо большое, дорогой анон
Аноним 19/04/18 Чтв 23:55:56 #333 №1176995 
>>1176973
>Это типа основы?
Типа да
>Вот эти 3 штуки чисто, чтобы редаксокод был красивым и оптимизированным?
Красивым врядли, но оптимизированным.
>redux-actions вкусовщина или рили удобная штука?
Оба варианта верны. Я бы рекомендовал сперва с обычными экшнами разобраться.
>react-redux-router насколько эта хуйня важна, если уже есть обычный роутер?
Важна если ты хочешь что бы переходы тоже отображались в твоем сторе. Что бы можно было просто написать store.dispatch(push('/foo'))
>lodash/ramda отсюда обычные не фпзадроты юзают функций 5-10 же
Зависит от скила
Аноним 20/04/18 Птн 00:50:31 #334 №1177002 
>>1176973
Я конечно ФП-задрот, но бери рамду, она реально лучше. Изначальный порог вхождения низкий, постепенно начнёшь юзать больше.

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

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

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

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

Этого хватит для большинства несложных веб-приложений. На остальное пока забей, напиши чо-нибудь реальное на этом стеке.
Аноним 20/04/18 Птн 08:46:15 #335 №1177064 
>>1177002
>ФП
>рамду
>это перехайповавшее дерьмо. В 99% случаев оно нахуй не надо
Пофиксил.
Аноним 20/04/18 Птн 10:17:20 #336 №1177075 
>>1177002
>thunk
поясни зачем делать асинхронный диспач?
делаю асинхронный экшон и все как надо работает, чем плох этот код?

async function set_list() {
const list = await get_data()
store.dispatch({ type: types.SET_LIST, list })
}
Аноним 20/04/18 Птн 11:57:16 #337 №1177152 
Как портировать готовую браузерку под мобилки?
Аноним 20/04/18 Птн 14:21:02 #338 №1177208 
>>1176993
спасибо, я просто на тему блокировок решил пожаловаться, так-то я нашел, хотя хз как эти книги юзать, доки + практика обычно лучше заходили, а щее лучше видосы

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

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

>>1177075
а оно правда работает? Такое норм переиспользовать? а то я не шарю в ес1488
sageАноним 20/04/18 Птн 15:14:23 #339 №1177228 
>>1177152
Никак, лол.
Надо было сразу под мобилки писать, mobile-first, слышал о таком?
Аноним 20/04/18 Птн 16:30:13 #340 №1177262 
>>1177208
Это хорошая книга.
Понятно объясняется куча неочевидных вещей.
Но, надо именно читать, а не просто смотреть примеры кода.

И там есть видео для каждой главы.
Даже с QR кодом, чтобы можно было и из бумажной книги открыть.
Плюс, есть код на гитхабе, естественно.
Аноним 20/04/18 Птн 17:00:51 #341 №1177297 
>>1177262
Спасибо.
Ты уже докуда дочитал? Интересно, что в этой книге есть поверх доков реакта, посмотрю мб главу про скейлинг сегодня.

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

нужны ли либы типа реакт-моушн? почему их вообще юзают люди вместо обычных сss анимаций?
Аноним 20/04/18 Птн 17:05:00 #342 №1177306 
>>1177297
пример бы проекта какого-нибудь мидла
Аноним 20/04/18 Птн 18:16:13 #343 №1177336 
>>1177297
Ну, учитывая, что её выложили 2 дня назад, а скачал я её вчера вечером, то пока только пролистал и прочёл некоторые понравившиеся места.
Написано хорошим языком, читается легко.
Много объяснений типа "зачем" и "почему", а не просто "как".

Кстати, в своё время я её хотел купить (пока она в MEAP была). У Маннинга бывают регулярно 50% скидки.
Но, прередумал, почему-то.
Я тогда увлёкся Vue, т.к. не был готов погрузиться в глубину современного js тулинга - бабели, вебпаки и прочие радости (у меня java ee backend).
Аноним 20/04/18 Птн 18:17:55 #344 №1177337 
>>1177297
>какую структуру файлов выбирать
При наличии библиотек импорта-экспорта — любую выбирай.
А без них — создаётся файл «items.jsx» и сразу же рядом с ним каталог «./items».
Аноним 20/04/18 Птн 18:20:05 #345 №1177339 
>>1177336
>не был готов погрузиться в глубину современного js тулинга
А я так и не погрузился, хотя работаю с последним Реактом 16.3.2.
Аноним 20/04/18 Птн 18:28:01 #346 №1177342 
>>1177339
В смысле?
JSX не используешь?
ES2015+ тоже?
Flow?

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

>JSX не используешь?
Использую обыкновенный JSX Transformer,
>ES2015+ тоже?
Остановился на функции «createReactClass()» чтобы создавать классы с миксинами,
>Flow?
Может и использую, но не догадываюсь что это такое...

>одной jsp страницы + includes из общего каталога, надо городить для каждой страницы целый огород
Как раз библиотеки для импорта-экспорта позволяют всё сложить в один каталог. Но мне лично — не нужно. Я не на том уровне.
Аноним 20/04/18 Птн 18:52:37 #348 №1177350 
>>1177346
>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/
Да, видел, но не вникал. Надо посмотреть.
Аноним 20/04/18 Птн 18:57:39 #349 №1177351 
Котаны, подскажите пожалуйста, я дерево.
Я изучаю джава скрипт, осилил учебник Кантора.
Задрачиваю react. Собрал свою страничку.

Но я нихуя не могу написать сам, бладж.
Как только нужно написать какую нибудь вещь самостоятельно, какой нибудь сложный компонент с логикой, какое нибудь не обычное меню, допустим все - пиздос, я затупливаю насмерть.
Что почитать мне? JS шаблоны ?
Аноним 20/04/18 Птн 19:00:03 #350 №1177353 
>>1177351
>Что почитать мне?
Чужой код.

И чаще писать свой.
Постепенно начнёт получаться.
Аноним 20/04/18 Птн 19:06:26 #351 №1177355 
image.png
есть вариант как посмотреть трек, не ждав 5 дней?
Аноним 20/04/18 Птн 19:16:52 #352 №1177360 
>>1177351
Так и не понятно где именно у тебя тупняк начинается
Аноним 20/04/18 Птн 20:43:40 #353 №1177398 
>>1177360
Да что тут непонятного.
Это нормальная ситуация для начинающего, в любом деле.
Умом человек понимает, а на уровне рефлексов - ещё не усвоил.

Поэтому и нужно сначала просто копировать других.
Т.е. переписывать чужой код, потом менять его, потом писать свой. И это требует времени.
Потом будет проще, по мере накопления опыта.
Аноним 20/04/18 Птн 20:52:27 #354 №1177404 
>>1177208
>Это ты типа адресную строку в сторе можно хранить дублируя? и вместо хистори.пуш писать диспатч.пуш? в чем смысл?
Смотри. Идеалогия редукса- единое, детерменированное хранилище состояния твоего объекта. В любой момент времени работы приложения ты можешь заглянуть в в стор и понять, что делалось, как получилось это состояние и т.д. Благодаря иммутабельности ты можешь "путешевствовать во времени", ведь тебе надо просто откатить свой стор на n экшнов назад.
И вот вдруг у тебя есть роутер. Он живет своей жизнью, навигация по аппу никак не отражается в хранилище. Ты больше не можешь открыть свой стор и получить 100% инфу о приложении. Ты не можешь точно понять, что пошло не так если оно вдруг пошло. В этом и суть.
Ну а если на практике:
во-первых ты не дублируешь хистори. Это хистори теперь получает инфу из редакса.
во-вторых тестирование. Ты можешь легко написать тест на переход, просто сделав диспатч в фейковый стор и сравнив состояние. Т.е. твоя бизнес логика подчиняется общим правилам, а не живет где то сама
>я наоборот не понял ничего в танках, в сагах конечно тоже генераторы какие-то
Все просто на самом деле. Thunk - мидлваря которая чекает тип экшна. Если видит что пришла функция - вызовет эту функцию и передаст ниже результат работы функции. Пихаем туда промис и получаем свои асинхронные действия.
Saga - в корне иной концепт. Это такой большой брат, который слушает экшны. Каждая сага - это генератор, тоесть она висит в подвешенном состоянии и ждет. Как только поступает экшн, который ждет эта сага - она запускается и отрабатывает. Что она будет делать - вообще что угодно. Это один из минусов саги - она слишком мощная, она может пустить что угодно куда угодно, например записать данные в стор взяв их из того же стора (считается антипаттерном), может запустить в бэкграунде любую операцию, или кучу операци. Может задиспатчить любые экшны с любыми данными. Считай это отдельный слой с бизнес-логикой.
Аноним 20/04/18 Птн 21:40:24 #355 №1177429 
thats all.jpg
Анон, я вкатываюсь в JS с C++, потому что в моей мухосрани 10 вакансий для крестухов против 66 вакансий для веб-макаки. Посоветуй ресуры и задачи для:

1) Изучения JS
2) Лучший фреймворк для тестирования
3) Фреймворки типа JQuery, которые точно пригодятся в работе
4) Тулзы для разработки
Аноним 20/04/18 Птн 21:54:42 #356 №1177438 
Пытаюсь понять как работает метод reduce.

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

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

>>1177429
1) learn.javascript.ru, Eloquent Javascript, JavaScript-Garden
2) Mocha + Chai
3) React, Lodash, Nodejs
4) VSCode/Webstorm
Аноним 20/04/18 Птн 22:12:19 #359 №1177445 
>>1177444
arr.reduce((prev, key) => ({
...prev,
[key]: 'some value'
}), {});

скобочки забыл
самопочин
Аноним 20/04/18 Птн 22:17:33 #360 №1177449 
>>1177398
Спасибо бро. Вообщем не стесняться ковырять чужой код. А то я упорот сам перерешал большинство задач с учебника кантора. Мой первый слайдер картинок - это было что то монструозное, с кучей обработчиков событий и отменой обработчиков событий пока идёт анимация
Аноним 20/04/18 Птн 22:42:02 #361 №1177465 
>>1177444
Спасибо за разъяснение, анон.
Аноним 20/04/18 Птн 22:45:36 #362 №1177467 
>>1177449
на codewars себя не пробовал?
решаешь задачу, когда решишь - смотришь топ лучших решений этой задачи
правда иногда унизительно смотреть на чужое решение в пару строк кода, а потом на свой абзац говноперфоманса. Зато многие трюки для себя открываешь.
Аноним 20/04/18 Птн 23:19:54 #363 №1177492 
>>1177467
Попробую. Знания какие то есть по js , а практики не хватает соаювершенно. Вот разобрался я как допустим итераторы работают. А хули с этого толку? ) Или вот - понятны мне промисы, а я на колбеках ниче путного не напишу. Короче попиздую на кодеварс
Аноним 21/04/18 Суб 00:00:08 #364 №1177501 
.webm
Вечер в хату, шебмы, заясните за тжри вопроса.

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- и все. При этом весь файл не скачивается.
Аноним 21/04/18 Суб 00:03:17 #365 №1177503 
>>1177208
все работает, на проде. но есть сомнения, может я что то не так делаю? сомнения появились почитав про эти саги и танки - ну не зря же их люди запилили!?
Аноним 21/04/18 Суб 00:14:10 #366 №1177507 
15211290360310.jpg
>>1177503
upd. но почитав про саги и танки не уловил какого то сакрального смысла в их использовании, это же ведь просто сахар? или я не прав?
короче сомнения
Аноним 21/04/18 Суб 01:00:09 #367 №1177548 
>>1177507
>>1177503
Данилка для вас все расписал
stackoverflow.com/questions/35411423/how-to-dispatch-a-redux-action-with-a-timeout/35415559#35415559
Аноним 21/04/18 Суб 03:19:44 #368 №1177581 
>>1177404
Спасибо теле большое, анон, вот я никогда не заглядывал в стор, чтобы понять, что делалось, как путешествовать во времени в редаксе то вообще, я ни в каком гайде не видел кнопку реду анду? И как иммутабельность этому помогает, редакс что сохраняет ссылки на все старые объекты в памяти? Это же дохуя ресурсов тратится.
Аноним 21/04/18 Суб 03:25:21 #369 №1177582 
>>1177581
Поставь redux-devtools, там есть слайдери много чего еще
> редакс что сохраняет ссылки на все старые объекты в памяти
В этом суть иммутабильности. Дохуя ресурсов не тратится потому что эти сторы тащем то довольно маленькие объекты. Ты же не милион записей копируешь.
Аноним 21/04/18 Суб 09:06:21 #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'ом, чтобы не мутировать - та же хуйня), какого хуя он трогает остальные?
Аноним 21/04/18 Суб 09:08:25 #371 №1177617 
>>1177616
pos = position
Аноним 21/04/18 Суб 09:22:14 #372 №1177618 
Можно ли как-то на маке дать возможность ноде запускать сервер на <1000 портах (в частности, конечно, 80 и 443 интересуют) без рута/sudo каждый раз? Аналога линуксового libcap2 для posix 1003.13, с которым, вроде как, можно настроить такие отдельные привилегии, я что-то не нашёл.
Аноним 21/04/18 Суб 10:45:45 #373 №1177636 
>>1177618
1003.1e
fix

Впрочем, сам решил —
https://medium.com/@steve.mu.dev/setup-authbind-on-mac-os-6aee72cb828
Аноним 21/04/18 Суб 12:26:07 #374 №1177670 
>>1177582
Ну а если в сторе ссылка уже пропала, объект не нужен, его же сборщик мусора собрать должен? Неужели редакс внутри как-то ПРЯМ ВСЁ это оставляет?

Почему в обычном апи редакса нет реду-анду, те иммутабельность в редаксе дает возможность делать свои анду-реду, но не дает какого-то бойлерплейта?
Аноним 21/04/18 Суб 12:30:47 #375 №1177671 
>>1177670
Редакс даёт тебе минимальный скелет.
Аноним 21/04/18 Суб 12:45:27 #376 №1177682 
Накатал тут скрипт для вытягивания данных со страниц. С помощью какой либы это тестировать? Буду добавлять другие страницы - не хочу сломать что-то в старых. На входе у меня мой скрипт и сохраненные html-ки. В инфраструктуре js не разбираюсь - потому спрашиваю.
Аноним 21/04/18 Суб 12:48:36 #377 №1177686 
>>1177670
>те иммутабельность в редаксе дает возможность делать свои анду-реду, но не дает какого-то бойлерплейта?
Это делается через композицию редьюсеров.
Что вполне нормально - юникс вей, вот это вот всё.
Зачем раздувать?
https://github.com/omnidan/redux-undo
Аноним 21/04/18 Суб 16:15:31 #378 №1177762 
>>1177429
JQuery это не фреймворк, а библиотека.
Аноним 21/04/18 Суб 20:40:56 #379 №1177888 
>>1177762
реакт тоже 0)0))
Аноним 21/04/18 Суб 21:08:59 #380 №1177899 
>>1177888
А если с редаксом то уже фреймворк!
Аноним 21/04/18 Суб 21:33:28 #381 №1177907 
Как поместить в хтмл5 холсте повторяющееся изображение, чтобы можно было менять его координаты?
Аноним 21/04/18 Суб 21:35:57 #382 №1177910 
>>1177907
Олсо нужно для игры. Не знаю вообще правильный ли это подход, если нужно чтобы была текстура пола, и по ней ходить.
Аноним 21/04/18 Суб 22:32:24 #383 №1177955 
>>1177682
Ну где же вы сениоры, сениоры, сениоры?
phantomjs + karma (как тест-раннер, как я понял) подойдут?
Аноним 21/04/18 Суб 23:22:35 #384 №1177982 
>>1177955
Nightwatch.js
Аноним 21/04/18 Суб 23:30:08 #385 №1177991 
>>1177982
version 0.9.20
ну ёб твою
Аноним 21/04/18 Суб 23:49:41 #386 №1178009 
>>1177910
Попробуй вот это читни, там 52 страницы всего:
http://www.allitebooks.com/instant-html5-2d-platformer/

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

Ну и в гугле полно туториалов по играм на канвасе можно найти.
Аноним 22/04/18 Вск 00:38:46 #387 №1178039 
блин я так и не понял зачем нужны saga и thunk для редакса. можете пояснить по хардкору?
Аноним 22/04/18 Вск 00:49:54 #388 №1178046 
кстати недавно сделал такую хуйню и никто не умер: унаследовал компонент переопределив его методы с вызовом super(); незнаю как для вас, а для меня это открыло js как язык на котором оказывается можно писать больше чем туду)
Аноним 22/04/18 Вск 01:07:27 #389 №1178060 
>>1178009
Не, это слишком. Как сделать повторяющуюся картинку?
Аноним 22/04/18 Вск 01:17:35 #390 №1178064 
>>1178060
это, погоди, а вчем трабла? берешь картинку какбэ и повторяешь с таймаутом
Аноним 22/04/18 Вск 01:25:00 #391 №1178071 
>>1178064
Это медленно будет и непонятно как двигать по координатам. Если координаты отрицательные, то вообще будет ошибка?
Аноним 22/04/18 Вск 01:25:30 #392 №1178073 
>>1178046
иди гугли composition over inheritance
если коротко - в этом просто нет смысла, если мы говорим про реакт
Аноним 22/04/18 Вск 13:03:20 #393 №1178179 
>>1178071
Зачем ты это вообще спрашиваешь? Возми и захуячь картинку с отрицательными координатами, и увидишь что будет. Это делается за минуты. Зачем ждать часами или днями пока тебе тут кто-то ответит?
Аноним 23/04/18 Пнд 09:43:48 #394 №1178217 
>>1177501
Разобрался со всем сам. Хуй на вас ложить.
Аноним 23/04/18 Пнд 17:40:12 #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 книги прошел, вроде как и понятно что к чему, но никакого чувства прекрасного на душе как при изучении жабочки и близко нет. До этого я в этом болоте на мели плавал, а щас погружаюсь на дно. Может конечно со временем привыкну, но хз. Но пока запашек то вокруг меня стоит злавотненький и дышать тяжеловато...
Аноним 23/04/18 Пнд 18:17:39 #396 №1178316 
Ркн заблочил jsfiddle это пиздец, товарищи эту страну уже ничего не спасет.
Аноним 23/04/18 Пнд 18:19:02 #397 №1178317 
>>1178316
расстрелы спасут
Аноним 23/04/18 Пнд 18:26:16 #398 №1178320 
>>1167958 (OP)
Посоветуйте, как правильно вкатываться в веб после C++. Что учить сначала, что потом? Какие проекты писать? Где учиться бест практисам?

Сейчас я изучаю голый JS. Сам язык довольно простой после C++. Как выучить фреймворки и потратить несколько месяцев до поиска работы наиболее эффективно?
Аноним 23/04/18 Пнд 18:27:10 #399 №1178321 
>>1178320
Алсо, пишу todo-list на голом JS+HTML/CSS. Как улучшить свой проект до уровня продакшн?
Аноним 23/04/18 Пнд 18:28:58 #400 №1178322 
>>1178321
а с бекендом что у тебя? Nodejs?
Аноним 23/04/18 Пнд 18:41:25 #401 №1178328 
Что считаете насчёт Академии Яндекса?
У них там 4 интенсива: вёрстка, тестирование, жс и аппликашки.
Аноним 23/04/18 Пнд 18:44:48 #402 №1178331 
>>1178322
>Nodejs?
Да.
Аноним 23/04/18 Пнд 19:08:51 #403 №1178345 
>>1178331
ну если с чистым джесом разобрался можешь фреймворк себе подбирать. https://medium.com/unicorn-supplies/angular-vs-react-vs-vue-a-2017-comparison-c5c52d620176
Олсо, у тебя твой пробный проект без перезагрузки страницы или с? Если с перезагрузкой, то смотри Ajax сначала.
А так хз что еще, просто идешь в гугл и смотришь как надо и как у тебя получилось. Тут велосипед изобретать не надо, это все довольно поточно.
Аноним 23/04/18 Пнд 21:02:01 #404 №1178412 
Подскажите иду ли я по правильному пути, курю хтмлакадеми базовый интенсив и параллельно учу инфу с learn.javascript.ru, но мне кажется, что я где-то проебываюсь, че еще читать/смотреть, чтобы стать ахуенным
Аноним 23/04/18 Пнд 21:02:57 #405 №1178413 
>>1178412
Правильно. Как докуришь эти вводные курсы, уже смотри в сторону.
Аноним 23/04/18 Пнд 21:06:15 #406 №1178417 
>>1178303
У меня примерно такие же чувства были, когда я изучал JS. Язык грязный и не элегантный, но потом привык, хотя все равно не долюбливаю его. Ну это как с запохом говна, сперва сильно воняет, потом через какое-то время привыкаешь, но говно остается говном.
Аноним 23/04/18 Пнд 23:20:09 #407 №1178489 
>>1178417
>Ну это как с запохом говна, сперва сильно воняет, потом через какое-то время привыкаешь, но говно остается говном.
Нупомнило C++.
Аноним 23/04/18 Пнд 23:45:29 #408 №1178519 
Здраститя.

Допустим есть вебсайт, который отдает инфу по ссылке вида https://site.com/name=pisya1. Как мне считать раз в день допустим три имени сразу pisya1, pisya2, pisya3 и получить хтмл этих сраничек? Как вообще приступить к тако проблеме? Жс тут поможет?
Аноним 24/04/18 Втр 00:11:42 #409 №1178526 
>>1178519
Лол ну ты явно ньюфаг, такая банальная проблема. Если ты хочешь за кем-то вконтакте следить, то для этого уже есть готовые программы.
Аноним 24/04/18 Втр 00:17:08 #410 №1178535 
>>1178526
Нет, ничего такого, это по игре проверять несколько профилей. На самом деле я когда-то доходил до абстрактных классов и прочего, даже сам писал что-то, но это было давно.
Аноним 24/04/18 Втр 01:42:45 #411 №1178565 
>>1178535
Для начала почитай и разберись как работают паттерны, прототипы, замыкания, асинхронный код.
Аноним 24/04/18 Втр 02:16:58 #412 №1178571 
>>1178519
Для любого современного ЯП есть парсер html.
Аноним 24/04/18 Втр 02:38:41 #413 №1178574 
>>1178565
Мне нет необходимости учить язык или его нюансы для решения одной конкретной практической задачи. Достаточно сказать название функций или как гуглить подобное.

>>1178571
Мне не нужно парсить хтмл, мне нужно его получить.
Аноним 24/04/18 Втр 02:51:38 #414 №1178578 
>>1178574
>получить
curl.exe
Аноним 24/04/18 Втр 03:13:08 #415 №1178587 
>>1178574
В любом современном ЯП есть http клиент.
Аноним 24/04/18 Втр 03:23:27 #416 №1178589 
>>1178519
тут скорее питон поможет
и cron
Аноним 24/04/18 Втр 09:01:37 #417 №1178640 
>>1178519
Python + Scrapy
Аноним 24/04/18 Втр 11:45:35 #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) → [""]

Аноним 24/04/18 Втр 11:48:25 #419 №1178698 
>>1178695
Ты забыл что сложение происходит как стринги, но остальные операции как инты.
Аноним 24/04/18 Втр 12:36:06 #420 №1178725 
Вы все черти.
Аноним 24/04/18 Втр 12:37:41 #421 №1178726 
>>1178695
Сразу видно, что на других языках ты тоже не писал.
Аноним 24/04/18 Втр 13:15:48 #422 №1178751 
точность.png
>>1178695
>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++, там точно так же. А остальные твои примеры, да - это пидерастия языка.
Аноним 24/04/18 Втр 13:37:31 #423 №1178765 
>>1178695
Забавно наблюдать, за рассуждениями человека, не знающем о двойной точности, и при этом возмущающимся о проверке выхода за границы массива. В динамическом, мать его, языке.

Откуда столько даунов. Откуда они просто лезут вот.
Аноним 24/04/18 Втр 13:38:09 #424 №1178766 
>>1178695
Используешь компилятор
@
Забываешь об этом кошмаре
Аноним 24/04/18 Втр 14:00:16 #425 №1178777 
VS.mp4
>>1178695
Кстати вот еще, Visual Studio дает подсказку, какое значение имеет числовой литерал на самом.
Аноним 24/04/18 Втр 17:32:02 #426 №1178878 
кто поможет устроиться на работу?
Аноним 24/04/18 Втр 17:42:37 #427 №1178884 
>>1178878
Бог поможет.
Аноним 24/04/18 Втр 17:43:20 #428 №1178886 
>>1178884
а он тоже программист?
Аноним 24/04/18 Втр 17:51:34 #429 №1178888 
>>1178886
да, а вселенная - одна большая симуляция и галаграма. Ты из пещеры что ли ток вылез?
Аноним 24/04/18 Втр 17:57:51 #430 №1178893 
>>1178888
уга уга уга

так что там с работой? есть чего? нет? так зачем это программирование?
Аноним 24/04/18 Втр 18:02:49 #431 №1178898 
>>1178893
зачем это программирование?
Для саморазвития и удовольствия
Аноним 24/04/18 Втр 18:06:19 #432 №1178901 
и еще надо спросить...
есть вот понятие синхронизирование данных. это со стороны бэкэнда решается (вебсокеты)? или со стороны фронтэнда тоже можно решить?
взять двачи. тут автообновление есть. это интервал между реквестами? и реквест при нажатии "обновить тред"?
я пользуюсь ангуляром, как с этим дела обстоят в реакте?
>>1178898
то есть вы тут как хобби это воспринимаете? но работающие тоже есть наверное?
Аноним 24/04/18 Втр 18:09:01 #433 №1178903 
>>1178901
есть 3 способа
1) long poling
2) server sent events
3) websocket

гугли @ выбирай
Аноним 24/04/18 Втр 18:12:10 #434 №1178906 
>>1167958 (OP)
Пишу Todo List. Какой модный фреймворк и паттерн можно использовать для такого веб-приложения? И как это запилить? Написал проект на чистом JS, теперь хочу сделать что-то продакшн уровня.
Аноним 24/04/18 Втр 18:12:46 #435 №1178907 
>>1178901
> работающие тоже есть наверное
Мы тоже как хобби это воспринимаем.
Иначе программировать не выйдет.
Это тебе не мешки ворочать. Тут надо быть увлеченным.
Аноним 24/04/18 Втр 18:13:24 #436 №1178908 
Как в ебучем Visual Studio Code поменять цвет текста на белый? Меня устраивает профиль Dark+, функции желтые, классы зеленые и тд., но все остальное голубого цвета, галаза режет. Я хочу именно этот текст сделать белым.
Аноним 24/04/18 Втр 18:13:51 #437 №1178909 
>>1178907
деньги давай говорю!!! деньги! жрать хочу!
Аноним 24/04/18 Втр 18:14:16 #438 №1178910 
>>1178886
Чем ты отличаешься от программы?
Аноним 24/04/18 Втр 18:16:51 #439 №1178912 
>>1178910
был бы я программой, меня бы не пустили в продакшн
Аноним 24/04/18 Втр 18:18:28 #440 №1178913 
>>1178912
Ты ахуеешь от того, сколько программ пишется в продакшн сразу. именно так написана бОльшая часть всего.
Аноним 24/04/18 Втр 18:19:30 #441 №1178915 
>>1178913
ну тогда какого хера нет работы???
Аноним 24/04/18 Втр 18:21:12 #442 №1178917 
>>1178915
Она есть.
Видимо просто ты работник херовый.
Аноним 24/04/18 Втр 18:23:15 #443 №1178918 
>>1178903
это всё для бэкэнда?
>>1178917
>ты
нет ты! только что у тебя был девиз "хуяк-хуяк и в продакшн" а тут вдруг скрючил ебальник "ты херовый".
Аноним 24/04/18 Втр 18:24:59 #444 №1178920 
>давай работу
>бог подаст
>ну вот... работы значит нет
>она есть, ты херовый
>давай тогда раз есть
>бог подаст
...
Аноним 24/04/18 Втр 18:25:07 #445 №1178921 
>>1178918
>хуяк-хуяк и в продакшн
Это было не о работе.
Тебе рассказать как были написаны первые версии всего самого популярного? И как они писались до тех пор, пока не стали популярными?
Аноним 24/04/18 Втр 18:26:01 #446 №1178923 
>>1178921
>Тебе рассказать
работу (а лучше сразу деньги) давай, сказочник!
Аноним 24/04/18 Втр 18:27:22 #447 №1178924 
РАБОТЫНЕТ.png
>>1178915
>какого хера нет работы???
Аноним 24/04/18 Втр 18:28:28 #448 №1178925 
>>1178923
>работу (а лучше сразу деньги) давай, сказочник!
Хуи сосешь?
Аноним 24/04/18 Втр 18:28:31 #449 №1178926 
>>1178924
3 вакансии на весь мир?
Аноним 24/04/18 Втр 18:29:25 #450 №1178929 
>>1178921
>Тебе рассказать как были написаны первые версии всего самого популярного?
Одноклассники.ру?
Аноним 24/04/18 Втр 18:29:47 #451 №1178930 
>>1178924
и че?
введи конкретную роль + фреймворк + регион + стаж
сколько останется? 10? 3?
тысячи просмотров резюме... бесполезных.
работу давай а не скриншот.
Аноним 24/04/18 Втр 18:30:23 #452 №1178931 
>>1178925
ты? ты сосешь...
Аноним 24/04/18 Втр 18:30:35 #453 №1178932 
>>1178930
Мы вам перезвоним.
Аноним 24/04/18 Втр 18:31:25 #454 №1178933 
раз уж анон поднял тему работы, у меня 2 вопроса
1) какой js стак самый популярный(=больше всего вакансий, проще найти работу)? Я так понимаю это MEAN?
2) какой самый перспективный. А то я собрался express/angular2 учить, а тут говорят что он неоч.
Аноним 24/04/18 Втр 18:31:48 #455 №1178934 
>>1178929
линукс, дос, фейсбук, гугл, яндекс, вк, ffmpeg, etc
Аноним 24/04/18 Втр 18:35:27 #456 №1178935 
>>1178924
>ведущий
>senior
>middle/senior
или еще лучше: в новосибирске за 15 тысяч рублей программистом xD
Аноним 24/04/18 Втр 18:38:06 #457 №1178937 
насколько перспективны поиски работы за границей? ну чтоб не сталкиваться с русскими пидорасами, у которых работа есть, но они её тебе не дадут, потому что не для тебя их роза цвела...
Аноним 24/04/18 Втр 18:38:24 #458 №1178938 
>>1178908
Ну помогите мне.
Аноним 24/04/18 Втр 18:39:24 #459 №1178939 
image.png
>>1178935
>новосибирске
Аноним 24/04/18 Втр 18:39:55 #460 №1178940 
>>1178938
пожалуйста
https://www.google.ru/search?newwindow=1&ei=l0_fWu3lI8ausAGSzIqQBg&q=visual+studio+code+change+font+color&oq=visual+studio+code+change+font+color&gs_l=psy-ab.3..0.4802.5421.0.5691.4.4.0.0.0.0.95.313.4.4.0....0...1.1.64.psy-ab..0.4.310...0i7i30k1.0.zRs13QRScWc
Аноним 24/04/18 Втр 18:40:47 #461 №1178942 
>>1178940
>google.ru
Запрещена на территории Российской Федерации.
Аноним 24/04/18 Втр 18:44:27 #462 №1178944 
>>1178942
хуево че, переезжай вна украину
Аноним 24/04/18 Втр 18:46:37 #463 №1178946 
123.png
234.png
345.png
456.png
>>1178939
ты ебанутая сельдь, работающая в hh?
никто не платит 90 тысяч. это замануха. в москве 60, не в москве 30. вот так дела и обстоят. я работал, я знаю. меня бесят такие вот энтузиасты-активисты-пионеры-поцреоты которые говорят что все заебись, хотя сами нихуя не пробовали даже делать и сидят на какой-нибудь халяве!
Аноним 24/04/18 Втр 18:46:42 #464 №1178947 
>>1178944
Украина это один из областных центров Российской Федерации.
Аноним 24/04/18 Втр 18:46:53 #465 №1178948 
>>1178940
https://code.visualstudio.com/docs/getstarted/theme-color-reference
Да там сотни параметров, я не могу найти тот который мне нужен.
Аноним 24/04/18 Втр 18:49:29 #466 №1178950 
>>1178946
Нет. Я фрилансер с 12ти летним опытом и доходом от сотки в месяц. Мне твоих проблем не понять. Ной дальше.
Аноним 24/04/18 Втр 18:50:12 #467 №1178951 
>>1178950
ты хуисос и пиздобол. мне тебя не понять. ной дальше.
Аноним 24/04/18 Втр 20:34:21 #468 №1179008 
>>1167958 (OP)
использую js для написания игр на phaser, задумываюсь об изучении backend разработке на js и о поиске работы проггером. но смотрю вакансии в своем городе - на чистого бэкенд js проггера их почти нет, только php. в основном frontend и fullstack. при этом frontend как область меня совсем не притягивает. что посоветуете? стоит ли обращать на этот факт внимание или забить и в ус не дуть и изучать nodejs? насколько я понимаю, популярность php сильно падает и серверную часть переписывают на node.
Аноним 24/04/18 Втр 20:56:50 #469 №1179030 
b3QA1RscesA.jpg
>>1179008
У меня аналогичный вопрос Бро. Стою на перепутье. Вообще знания у меня уровня html, css, js, jquery, bootstrap, google vizualisation и т.п. планировал изучить питон с Джанго, т.к. веб привлекает, но все вакансии в моем мухосранске - Красноярске сводятся к знаниям 1с битрикс и php. Не хотелось бы к этому прикасаться, но видимо придется. И не думаю, что php умрет. Если умрет, то явно не скоро
Аноним 24/04/18 Втр 20:58:27 #470 №1179033 
>>1179008
>>1179030
Как опытный веб-программист скажу вам, что пыха сейчас наоборот только набирает популярность, в отличие от жс. Так что вам, господа, стоит осваивать такие технологии как PHP, WIX, Wordpress, Joomla.
Аноним 24/04/18 Втр 21:04:04 #471 №1179042 
>>1179033
> пыха сейчас наоборот только набирает популярность, в отличие от жс.
Чем это можно объяснить. Алсо можешь рассказать какого плана работы делаются на пыхе? Я так понимаю крупные объекты на пыхе не делают?
Аноним 24/04/18 Втр 21:10:59 #472 №1179048 
>>1179042
>Я так понимаю крупные объекты на пыхе не делают?
Кто тебе такое сказал?
И что ты там собрался, свой локальный фейсбук делать?

Чёт вспомнил ОПа этого треда и проиграл.
Аноним 24/04/18 Втр 21:18:30 #473 №1179053 
>>1179048
Оп этого треда пропал тредов 10 назад. Тред уже давно перекатываю я.
Аноним 24/04/18 Втр 21:19:59 #474 №1179054 
>>1179033
> WIX
Перетолстил
Аноним 24/04/18 Втр 21:20:15 #475 №1179055 
>>1179033
>пыха сейчас наоборот только набирает популярность

Если это действительно так, то единственная причина - то, что сайты (представительские) понадобились тем, кому они раньше не были нужны, т.е. совсем уж мелким конторам.
Ну и, возможно, больше мелких торговых контор стали хотеть торговать через интернет.
Естественно, они могут себе позволить только пыху.
Аноним 24/04/18 Втр 21:20:29 #476 №1179056 
>>1179033
>Joomla
Аноним 24/04/18 Втр 21:21:46 #477 №1179057 
>>1179056
Wix, ucoz
Аноним 24/04/18 Втр 21:23:48 #478 №1179058 
>>1179057
frontpage, narod.ru
Аноним 24/04/18 Втр 21:31:02 #479 №1179061 
>>1179033
Кому ты пиздишь?
Аноним 24/04/18 Втр 21:36:16 #480 №1179064 
>>1179061
А что, не так?
Аноним 24/04/18 Втр 21:36:51 #481 №1179065 
4IOfRd0YvA.jpg
Господа, друзья, товарщи! Помогите мне разобраться с дочерными и родительскими элементами в ДОМе, это какое-то проклятие, я нихуя не понимаю, где нормально почитать про это можно? У кантора нихуя не понятно, как будто гугл перевод спеки читаю.
Ну вот взялся я писать валидацию формы.
http://plnkr.co/edit/eqwfZwFGXZBGMljbCaUy?p=preview
Написал, показал корешу фронтендеру, он говорит ты малацца, но это хуита слишком частная, перепиши всё так, чтобы ты свою валидацию мог применить на любой форме, скелет.

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

А я блять нихуя не понимаю. Я понимаю что моя валидация тупой дроч достукиваться к каждому инпуту и т.д. Но как сделать это нормально я хз. Помогите ссылкой хоть, где про это почитать можно еще, желательно с примерами и разъяснениями. Может я что-то где-то недочитал по теории раньше? Что мне блять делать?
Аноним 24/04/18 Втр 21:37:32 #482 №1179067 
>>1179064
Не так. И впредь, намотай себе на ус, что вводить в заблуждение это не достойно и если твоя мать шлюха, а отец педофил, то в этом никто кроме тебя не виноват.
Аноним 24/04/18 Втр 21:37:46 #483 №1179068 
>>1179057зарабатываю на ucoz 100000к овер секонд, от денег уже тошнит. Можете задавать свои вопросы.
Аноним 24/04/18 Втр 21:37:59 #484 №1179069 
https://pastebin.com/TA70reWT
Объясните почему этот код всегда будет выдавать 10, не могу разобраться че-то
Аноним 24/04/18 Втр 21:38:49 #485 №1179070 
>>1179068
>Можете задавать свои вопросы
Чему равна скорость Светы в вакууме?
Аноним 24/04/18 Втр 21:39:10 #486 №1179072 
>>1179069
по идее ведь функция вызывается во время работы цикла, и пока она не исполнится i не должно увеличиваться
Аноним 24/04/18 Втр 21:40:00 #487 №1179073 
>>1179069
>https://pastebin.com/TA70reWT
потому что переменная i объявлена как var то есть не имеет блочной области видимости. А следовательно, на момент вызова функции отложенной в эвентлупе, она будет равна 10.
Аноним 24/04/18 Втр 21:40:49 #488 №1179074 
>>1179067
Да я просто левый чел. Решил спросить. Просто самому интересно что учить, чтобы деньги всегда были
Аноним 24/04/18 Втр 21:40:55 #489 №1179075 
>>1179072
Замени var на let и удивись.
Потом слходи прочитай про области видимости переменных и что такое event-loop.
Аноним 24/04/18 Втр 21:42:54 #490 №1179077 
>>1179073
> >https://pastebin.com/TA70reWT
> потому что переменная i объявлена как var то есть не имеет блочной области видимости. А следовательно, на момент вызова функции отложенной в эвентлупе, она будет равна 10.
А если вместо var выставить let, то что выведет?
мимо
Аноним 24/04/18 Втр 21:44:34 #491 №1179078 
>>1179077
Переписать 3 буквы и запустить в бровзере пиздец сложно.
Аноним 24/04/18 Втр 21:44:40 #492 №1179079 
>>1179065
Ну так у тебя эе описан алгоритм, вот его и реализуй. В твоем коде ты каждый инпут берешь по его id отдельно и потом каждый по отдельности чекаешь. А тебе надо переписать так, чтобы ты брал инпуты вообще все, не по идентификатору, а например по тегу,а еще лучше по классу там своему в завиимости от типа проверки. Проходил по всем элементам в цикле и проводил свою валидацию. Что тебе не ясно. Как работают css-селекторы? Или как циклы?
Аноним 24/04/18 Втр 21:46:33 #493 №1179083 
>>1179065
нахуй тебе вообще на фронтэнде валидация? 2 раза писать один и тот же код, посылай это на бекенд, и чтобы через джесон возвращал прошла ли валидация. Может ты в курсе, но на всякий случай скажу, что ты НЕ можешь делать валидацию только на фронтэнде, тебе все тоже самое обязательно надо делать на бекенде.
Если по твоему коду, то
- убери нахуй это спагетти из ифов и элсов
- для кажого поля сделай свою функцию с параметром(string) который хочешь валидировать, а не из глобального пространства брать.
function checkField(value){
//
}
Аноним 24/04/18 Втр 21:47:02 #494 №1179084 
>>1179070
с
Аноним 24/04/18 Втр 21:49:04 #495 №1179085 
>>1179083
>нахуй тебе вообще на фронтэнде валидация? 2 раза писать один и тот же код, посылай это на бекенд
Ахуенно наверное на каждый инпут хуярить хапрос на сервер, чтобы динамически подсветить инпут при блуре. Уволил бы тебя нахуй сразу.

Валидация на клиенте еще как нужна.
А на бэке валидируют всю форму целиком сразу и лишь один раз.
Аноним 24/04/18 Втр 21:49:17 #496 №1179086 
>>1179078
А я может с телефона, а скачивать js run с play market не умею. Что тогда?
Аноним 24/04/18 Втр 21:49:55 #497 №1179087 
>>1179053
Ну я имел в виду тюпина, думаю все это поняли.
Аноним 24/04/18 Втр 21:50:16 #498 №1179088 
>>1179086
На телефоне сайты не открываются уже? Ты умственно-отсталый?
Аноним 24/04/18 Втр 21:50:43 #499 №1179090 
89bf726c32d3aa6a9336f640bbbc33952014-12-2006-07-45.jpg
>>1179079
да вроде ясно как работают цсс селекторы, не ясно как это всё завернуть в циклы со всеми этими апенд чайлдами и прочим. Мне бы на примере посмотреть или чтобы добрый анон показал
Аноним 24/04/18 Втр 21:51:53 #500 №1179091 
>>1179090
Ну жди, может дождешься кому не лень, запилить тебе экземпл.
Аноним 24/04/18 Втр 21:57:25 #501 №1179093 
>>1179085
>Ахуенно наверное
Мне ахуенно, часто у тебя юзеры будут логин/пароль вводить? Ты наверно еще за голову хватаешься когда о какой-нибудь хуйне типо динамического поиске слышишь где запрос на каждую букву происходит.
Аноним 24/04/18 Втр 21:59:44 #502 №1179094 
>>1179090
чёт говнокод какой-то, даже лень править такое говно
ты в седьмом классе?
Аноним 24/04/18 Втр 21:59:58 #503 №1179095 
8697333.gif
>>1179091
Аноним 24/04/18 Втр 22:00:20 #504 №1179096 
>>1179088
Знаешь, копировать код и затем еще jsfiddle искать и потом что то менять очень муторно. Легче спросить
Аноним 24/04/18 Втр 22:02:28 #505 №1179097 
>>1179094
В седьмом классе в доту играют и вебом не занимаются
Аноним 24/04/18 Втр 22:08:25 #506 №1179102 
>>1179097
т.е. ты уже в восьмом?
Аноним 24/04/18 Втр 22:09:04 #507 №1179104 
14938113972950.png
>>1179097
>вебом
>этот говнокод уровня семиклашки из деревни
Аноним 24/04/18 Втр 22:16:31 #508 №1179107 
>>1179074
>что учить, чтобы деньги всегда были
В преферанс научись играть.
Или в бильярд.
Аноним 24/04/18 Втр 22:20:17 #509 №1179109 
>>1179107

> В преферанс научись играть.
> Или в бильярд.
Такое себе
Аноним 24/04/18 Втр 23:42:08 #510 №1179141 
>>1179093
>>1179083
Не слушайте дауна. Очевидно ты ничего более лендосика под ключ на вордпресе в своей жизни не делал.
Валидация должна быть на фронтенде и на бекенде. На бекенде даже ты понял зачем.
На проектах с посещаемостью больше 100 человек дергать сервер на каждый запрос это очень хуево. Нагрузка на сервер растет в геометрической прогрессии. Любой васян сможет заддосить твой сервер через такую форму. И это все лечится просто микроскопическими по своей сути методами, вызовом пары функций на клиенте.
Аноним 24/04/18 Втр 23:52:41 #511 №1179149 
>>1179141
>через такую форму
Ну давай поясняй умник чем ддос на /api с проверкой формы отличается от любого ддоса на другой адрес, например отгрузки данных.
sageАноним 25/04/18 Срд 01:50:22 #512 №1179186 
>>1179141
Ты дебил. Зачем ты говоришь в чем некомпетентен? Единственное, в чём ты прав - это в том, что нужно добавить в поля соответствующие свойства (которые вообще недавно только появились в браузерах). Ну а если в браузере их нет? А? А если юзер ручками пульнёт запрос? А если не ручками, а автоматизировав? И если их будет несколько тысяч?

>>1179083
Ты тоже дебил. Предлагаешь возвращать от сервера проверку на валидацию в жсоне.
Завтра на работе покажу, поржём всем офисом, так сказать.
Аноним 25/04/18 Срд 02:00:52 #513 №1179190 
>>1179186
одни свчешные выблядки, которые нихуя не могут аргументировать свои высеры. Какие-то свойства в браузерах у него, жсон ему не нравится. Чем тебе ответ от сервера возвращать? Штмлем блять?
Аноним 25/04/18 Срд 02:32:43 #514 №1179195 
>>1179190
>Чем тебе ответ от сервера возвращать?
JSON - это всего то форматнутая инфа, ровно также ты можешь вернуть её в чём угодно, хоть голой, хоть в богомерзком XML, хоть в JSON, зависит только от задачи которую ты хочешь решить. В случае JSON - удобно получать табличку или список, или какой-нибудь офис лайк документ который ты быстренько на страничке при помощи JS раскидаешь (хотя в 9000 раз проще это сделать в бэке и не ебаться с JS). Но если смотреть в общем и целом, JSON - это ебаная технология для безмозглых дауничей которые не способны вместить что-то большее, выучили себе JSON и ебашат им всё. Сайты на JSON, передачу инфы, таблички, карты, ссылки, массивы, документы, БАЗЫ ДАННЫХ. Такое ощущение что вы на этот JSON дрочите по ночам.

мимопроходил
Аноним 25/04/18 Срд 02:45:36 #515 №1179197 
>>1179195
>JSON - это всего то форматнутая инфа
Спс кеп. Я где-то утвержал обратное? Просто родной формат для js на котором 99% информации передается. Мне то похуй, можешь на xml но как ты и сам сказал он не оч, так что я хз к чему ты это высрал.
>табличку или список, или какой-нибудь офис лайк документ который ты быстренько на страничке при помощи JS раскидаешь (хотя в 9000 раз проще это сделать в бэке и не ебаться с JS)
Хеллоу, а потом чтобы эту табличку оживить как даун ебаться с каким-нибудь jquerry? Знаем, проходили, одна из причин почему я с пыха ухожу на фулл js чтобы как раз такой хуйней не заниматься и все построение страниц делать на фронтэнде тем же ангуляром[тут можно вставить любой фреймворк].
>JSON - это ебаная технология
сам себе блять противоречишь блять, сначала у него все-лишь формат, а потом уже целая ТЕХНОЛОГИЯ блять.
>для безмозглых дауничей которые не способны вместить что-то большее, выучили себе JSON и ебашат им всё.
Что ты блять несешь дебич, к врачу сходи. У тебя раздвоение личности в пределах одного поста, может к врачу сходить. Как можно блять json выучить, если это всего-лишь формат данных)) Ты хоть свой пост перечитай.

И дальше опять у тебя какой-то высер в сторону json я нихуя не понял что ты этим хотел сказать ну да ладно.
Аноним 25/04/18 Срд 02:53:55 #516 №1179199 
>>1179197
> чтобы эту табличку оживить как даун ебаться с каким-нибудь jquerry?
По сути юзеру нужна таблица. А свистелки, перделки, летающие хуи на странице - уже твои маняфантазии. Я как юзер прямо сейчас просматриваю таблицу 300*12 полей и мне твой JSON ну просто нахуй ненужен. Хотя не сомневаюсь есть дауны которым лишь бы покрасивше.
>я с пыха ухожу на фулл js чтобы как раз такой хуйней не заниматься и все построение страниц делать на фронтэнде тем же ангуляром[тут можно вставить любой фреймворк].
Наркоман. Пыха это бэк, Ангуляр - фронт. Тоесть ты в любом случае будешь что-то получать с бэка. Тоесть причём тут ангуляр вообще?
>сам себе блять противоречишь блять, сначала у него все-лишь формат, а потом уже целая ТЕХНОЛОГИЯ блять.
Когда это передача данных - это одно, когда это целый сегмент который уже используется вообще везде, даже в БД - это уже технология.
> Как можно блять json выучить, если это всего-лишь формат данных))
Вот один формат данных узнают, и ебошат им всё. Даже в тех случаях где можно без него обойтись.
Аноним 25/04/18 Срд 03:00:56 #517 №1179204 
>>1179197
>а потом уже целая ТЕХНОЛОГИЯ блять.
А обработка JSON - тоже формат? А формирование JSON тоже формат? Наркоман?
Аноним 25/04/18 Срд 03:01:18 #518 №1179205 
>>1179199
>Наркоман. Пыха это бэк, Ангуляр - фронт. Тоесть ты в любом случае будешь что-то получать с бэка. Тоесть причём тут ангуляр вообще?
плиз не пиши если ты не шаришь, хз откуда ты выполз и кукарекаешь. Офк я буду получать респонд - только это будет 0% html и 100% инфы в json который высрал сервер и который ты так почему то не любишь. А со своим манямирком можешь в 1999 возвращаться, где формы были не интерактивные, где чтобы менюшку открыть надо всю страницу перезагружать с нуля и прочии нештяки.
Аноним 25/04/18 Срд 03:01:50 #519 №1179206 
>>1179204
А обработка .txt - тоже формат? А формирование .txt тоже формат? Наркоман?
Аноним 25/04/18 Срд 03:33:21 #520 №1179209 
Txt формат. Обработка и формирование - технология.
Аноним 25/04/18 Срд 03:36:42 #521 №1179210 
>>1179205
Не злись няша. Я же не говорю вообще от js отказаться, просто мне например нужен ограниченный набор функций. А всякие пидоры, такое ощущение, что ос мне в браузер пихают, при этом умудрившись по дороге проебатб функционал.
Аноним 25/04/18 Срд 03:39:45 #522 №1179211 
>>1179209
JSON.stringify(myObject);
JSON.parse(myString);

Хули вы до jsona доебались, как анон сказал выше это всего-лишь формат, можно xml, можно хоть в бананах с пальмы. А вот что с этими данными делать - это уже совсем другой вопрос и мало имеет отношения к тому как эти данные отформатированы.
Аноним 25/04/18 Срд 03:41:38 #523 №1179213 
>>1179211
Тред хоть читай, я всего то пояснил разницу между технологией и форматом.
Аноним 25/04/18 Срд 03:43:13 #524 №1179214 
>>1179210
можешь начинать привыкать, так как потребителю твоё мега-ахуенное приложение на крестах в хуй не вперлось, качать его еще, устанавливать, еще и вуросов небось туда запехал, падлюка? Куда проще зайти на сайт через браузер на ссылку что друган скинул, зарегаться чере какой-нибудь вконтакт и гугл чтобь эта хуйня все отхранизировала и быть в шоколаде, еще и с мобилки можно потом зайти если оптимизировано норм.
Аноним 25/04/18 Срд 03:47:14 #525 №1179215 
>>1179214
Причём тут кресты? Какое приложение? Какой друган? Ты уже какой то манямир себе придумал, а теперь пытаешься меня убедить в том, что это Я про это говорил.
Аноним 25/04/18 Срд 03:50:16 #526 №1179216 
>>1179215
>А всякие пидоры, такое ощущение, что ос мне в браузер пихают, при этом умудрившись по дороге проебатб функционал.
мы видать с тобой на разных языках говорим
Аноним 25/04/18 Срд 03:57:03 #527 №1179218 
>>1179216
Ну да, если я читаю двачи, я хочу ограниченный функционал. А теперь зайди на какой нибудь мэйлач, какие то свистелки, перделки, звуковые оповещения, тут же мыло встроенное, тут же СОЦИАЛОЧКИ, тут же знакомства, ПУШБлдядь оповешения которые уже блядь вообще везде и прочее. Кажется что мэйл крайний случай, но нихрена подобного.
Аноним 25/04/18 Срд 05:29:36 #528 №1179222 
>>1179218
БЕСКОЧНАЯ ЛЕНТА КОТОРАЯ БЛЯДЬ ЗАЕБАЛО В ПЕРВЫЙ ЖЕ ДЕНЬ. Нахуй её пихают везде и всюду? Нахуй она нужна? Существуют в мире аутисты которым лень пагинацию прожать или что? Больше всего бесит именно она.
Аноним 25/04/18 Срд 10:21:04 #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
Аноним 25/04/18 Срд 11:55:23 #530 №1179299 
>>1179065
Это распространённая задача в любом гуе, не обязательно веб.
В вебе её легче сделать, ибо динамика.

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

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

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

Ничего сложного в этом нет.
Если интересны подробности - спрашивай ответы.
Аноним 25/04/18 Срд 12:07:02 #531 №1179307 
>>1177228
Хуй соси.
Аноним 25/04/18 Срд 12:11:42 #532 №1179311 
>>1179299
спасибо, анончик.
Я пока тип только чистый джс использую. Да понятное дело, что ничего сложно здесь не должно быть. Но у меня опыта всего месяц, месяц назад я узнал что такое хтмл и цсс. Мне пока всё очень сложно дается, буду думать/вникать. Но мне бы минимальной какой-нибудь пример увидеть с комментариями
Аноним 25/04/18 Срд 12:40:04 #533 №1179325 
>>1179311
>минимальной какой-нибудь пример
Сейчас некогда, вечером попробую сделать.

Аноним 25/04/18 Срд 13:06:11 #534 №1179342 
>>1179325
спасибо, анончик
Аноним 25/04/18 Срд 13:44:18 #535 №1179355 
Работа есть на JS? Или лучше учить С++ и Си?
Аноним 25/04/18 Срд 13:51:33 #536 №1179359 
gl-qHXHT5AU.jpg
>>1179355
Есть, Анон! Ну, что вкатишься в мою комманду? Готов устроить за трёхразовый дошик и койку-место под компом у себя в гараже :) Мазик бесплатно.
Аноним 25/04/18 Срд 14:10:55 #537 №1179371 
>>1179359
>комманду
В комманды не вкатываюсь.
Аноним 25/04/18 Срд 14:27:06 #538 №1179384 
15224783546330.png
>>1179371
Ти же мну писал, что грамматика и знание ангельского не так уж важны.
Аноним 25/04/18 Срд 14:49:14 #539 №1179394 
>>1179384
Окей, какой проект? Парсер ПУБГ на ноде?
Аноним 25/04/18 Срд 17:08:55 #540 №1179476 
>>1179190
>Чем тебе ответ от сервера возвращать?
Сериализированный бинарный код.
Аноним 25/04/18 Срд 17:19:37 #541 №1179479 
>>1179359
>комманду

Ком. манду?
Сам туда вкатывайся, мандюк.
Аноним 25/04/18 Срд 21:15:16 #542 №1179658 
1131059.jpg
>>1179325
Аноним 25/04/18 Срд 23:44:35 #543 №1179764 
>>1179658
Вечер - понятие растяжимое, лол.

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

Использует jQuery.
Написано на старомодном JS, работает везде.
Аноним 26/04/18 Чтв 09:08:29 #544 №1179860 
1362438465256.gif
>>1179764
Спасибо анончик, буду разбираться
Аноним 26/04/18 Чтв 11:58:47 #545 №1179915 
>>1179860
Там много букв, конечно.
Но, на самом деле, пример простой.
И поучительный, лол.

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

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

Кстати, я забыл там сделать для примера один валидатор просто инлайн-функцией.
Т.е., например, вместо Validators.gte(100) можно написать function(val){...} - то же самое, что находится внутри Validators.gte(), но сравнивать сразу с числом 100.

Аноним 26/04/18 Чтв 12:18:14 #546 №1179923 
>>1179915
оке, но для начала надо посмотреть что из себя представляет этот jQeury, еще не трогал.
Спасибо.
comments powered by Disqus

Отзывы и предложения