24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.
>>1019056 >прожорливо, слоупочно, ебануто, интерпретатор с зависимостями жрет больше питона, текстовый редактор жрет 200 мегебайт и при этом работает медленнее саблайма У Cordova, NativeScript, Phonegap, Ionic - да. А NativeScript и React Native работают нативно, не медленнее жавы/свифта/шарпа получается.
>>1019056 хз антоним, я делал совсем крошечное приложение на reactNative ( записывалка на прием к мастеру в салон красоты ) Мне почему то показалось, что эта хуйня для большой команды разработчиков, а не для одного - трех. Короче прилку я в продакшн кинул, но юзер икспириенс отрицательный. Такие дела
аноны, смотрите. Есть js строка, там может быть все что угодно и мне нужно обрезать из нее комментарий. например из let str = "mocha // chai \" "// comment // должно получиться let str = "mocha // chai \" ". Какой самый правильный способ это сделать? регулярка какая-то очень сложная получается, а просто циклом пройти у меня заняло 20 строк. Но ничего лучше не могу придумать. Выручайте, помидоры
>>1019293 >говно мамонта? Проверенные временем решения. Ещё МДН: https://developer.mozilla.org/en-US/docs/Learn/Getting_started_with_the_web Тебе не надо учить наизусть все новейшие теги, свойства или методы, а надо только словиться с основными концепциями. Любой уважающий себя фреймворк всё равно будет иметь свой удивительный внутренний мир.
>>1019371 Надеяться в нескольких строчках распарсить языки — сама по себе плохая идея. https://stackoverflow.com/a/1732454 Если смог решить для конкретного случая в 20 строк — тебе повезло.
Парни, объясните плз разницу между объектом и Map. В чем принципиальное различие кроме того что в Map ключом может быть любое значение без преобразования к строке. Чем семантически является Map?
>>1019491 ну мб ты и прав. А как тогда решать такую задачу? require js_parser со свистоперделками на 20 Мб? >>1019493 спасибо, но кажется что можно и попроще
Аноны, мне нужна ваша помощь. Всё дело в том, что я нуб ебаный в программировании, и сейчас в шараге прохожу метод fetch, который, мягко говоря, нихуя не понимаю. Дано задание, которое в принципе легкое, но из-за ебучего фетча не могу понять как его сделать. Есть два сайта https://jsonplaceholder.typicode.com/users и https://jsonplaceholder.typicode.com/posts. На одном находится текст-рыба (отвечающий за посты), на другом никнеймы, которые надо захуярить в шапку по id юзера (это я уже сделал). Но после того как я дал никнеймы по id юзера, естественно текст-рыба меняется на undefined. Вопрос такой: как обратиться ко второму сайту с помощью fetch? Нужно ебашить ещё 1-2 функции с фетчем или можно где-то просто прописать ещё один фетч со второй ссылкой? Код вот здесь https://jsfiddle.net/3y6t9qwz/.
Объекты похожи на Map в том, что и те и другие позволяют задавать значения по ключам, получать эти значения, удалять ключи и проверять наличие ключа. В связи с этим, исторически объекты использовались как Map, однако, у них есть существенные отличия:
Объект имеет прототип, что означает наличие стандартных значений в ассоциативном массиве. Однако, это можно обойти при помощи выражения map = Object.create(null). В объекте ключи должны быть строками, когда в Map они могут иметь любой тип. Вы можете легко получить размер Map, в то время как в объекте необходимо самостоятельно его учитывать.
>>1019652 Скажу тебе по секрету, что в map тоже все эти стандартные методы имеются, но ты долбаеб даже не знаешь в чем преимущество map, кроме задания ключа любым значением. Ибо обход только своих свойств объекта делается очень легко и дело не в прототипах.
Аноны, ну помогите пожалуйста нубу! Как в fetch использовать сразу две ссылки? Вставляю одну ссылку на сайт - работает, две - соси хуй. Ну как мне для задания сделать обращение по двум ебучим ссылкам с помощью fetch?
>>1019810 Можешь на примере показать как? Я делал 2, но видать не так. Я в шараге этот метод вообще проходил одну пару пока, не знаю всех его тонкостей.
>>1019800 Ну переопределиться может какое-нибудь свойство вроде hasOwnProperty(), или подобное. Особенно если эта коллекция будет заполняться автоматически и из-за этого может всё пойти по пизде
>>1019842 Довольно надуманная хуйня. На объект для переводов в 2000+ записей проблема возникла только один раз в ебучем фаерфоксе: "watch" пришлось ручками, потому мудаки из мозилы.
https://saratov.hh.ru/vacancy/20657098 что мне еще vue надо попробовать, ангуляр второй, чтоб жуном запилиться куда нить ? А нет надо еще три года поработать DNS ахах а что еще ? DHCP, HTTP, POP, SMTP так ладно, года 2 мне еще понадобится разобраться с сетевыми протоколами, Внедрять макеты на платформу Битрикс. Ок, погорячился 4 года Индексируемую заработную плату от 5000 в месяц ( чистыми ). Маам а борщ остался ?
Прочитал пост про то что эльм надежен и прост. Попробовал посмотреть на доки. И там какая-то дресня без каких-либо объяснений и фраза "ну просто же ну понятно же" Для него матан или что нужно?
>>1020077 >Индексируемую заработную плату от 5000 в месяц ( чистыми ). Ну так очевидно, что остальная часть з/п перепадает в конверте. Вангую, что "конвертная" сумма в районе 15-20 т.р. Итого на старте имеем 20-25 т.р. на руки. Для начинающего верстальщика в Залупьяновске вполне годная вакансия.
>>1019832 Спасибо! А как сделать фетч, если в прошлом фетче есть then внутри? Создаю фетч сразу после фигурной+круглой скобки, через запятую, нихуя не выходит.
Аноны, помогите разобраться, как сделана трансформация SVG маскота тут: https://metamask.io/
Насколько я понял, у них есть сгенерированный JSON с какими-то параметрами для каждого полигона, но саму трансформацию обсчитывает этот код: https://ideone.com/DON2TN
Нужно реализовать подобный элемент, но что-то мне подсказывает, что на three.js гораздо легче такое сделать, хотя и люблю SVG.
>>1020180 > Итого на старте имеем 20-25 т.р. на руки. Для начинающего верстальщика в Залупьяновске вполне годная вакансия. Двачую. Это даже больше на целых 10 тысяч чем у дворника
>>1020577 Тебе надо матчасть учить, а не змейку писать. С хуя ты в статик методе используешь this? С хуя ты статик метод вызываешьна объекте? У тебя в голове каша.
Сначала читайте Кантора (всего), а потом лезьте с вопросами. Каким-нибудь PHP-шникам или рубистам только мечтать остаётся о таком гайде на русском для их языка, у вас огромное преимущество.
Есть строка - JS выражение. В строке строго математические опреации (+/-/*/:) и числа. Можно ли как-то выполнить выражение из строки, не используя eval() ?
class Klass .. constructor(y) .... this.x = blah(y)
blah - асинхронный. как быть?
ввожу еще один метод инициализации: class Klass .. constructor(x) ... this.x = x .. static initialize(y) ..... return blah(y).then((x) => new Klass(x))
>>1021146 Нахуя тебе асинхронный конструктор? Пускай конструктор принимает аргумент, который можно высрать через, например > Klass.blah("???").then(y => new Klass(y)) ...
Котаны, мне нужно наполнить огромный грид довольно простыми гистограммами, 20 прямоугольников, 2 оси, полсотни строк кода на d3. Верхняя граница общего количества порядка миллиона, конечно, засчет буферизации (ExtJS) сразу все это к дому не прицепится, но десятки тысяч.
Есть 2 варианта: или оставить svg, или попробовать html5 canvas. Что лучше с точки зрения производительности? (Именно производительность в браузере, а не время генерации объектов в скрипте).
Изучаю JS, сейчас пытаюсь разобраться с JQuery и нифига не понимаю, как делать get запросы с пикрилейтед. Там еще было объяснение, что это REST. Как делать такое в JQuery?
аноны поясните за фреймворки плизки понял только что бекенд типа нода мне точно пока рано но вебасм\ангулар\реакт\жквери нужны вообще? когда их стоит применять? почему хуесосят все жквери, но оно везде? понял только про анимации, 1 в 1 fadein сделал в обычном css3 еще и с большей подстройкой для меня это достижение
Написал скрипт, который собирает инфу с сайта на ноде. Он каждый раз авторизуется на сайте получает куки и с ними отправляет запросы на сервер. При каждом новом запуске происходит авторизациия и запись куки. Куда эти куки можно сохранить чтобы не авторизовываться каждый раз?
Аноны, помогите. Нужно использовать плагины owl-carousel, fancybox 3 и sweetalert 2 на странице, такое задание. Задание чисто креативное, но у меня пиздец туго с фантазией, может подскажете?
>>1021887 >Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://... This can be fixed by moving the resource to the same domain or enabling CORS. Попробовал, получаю ошибку. В гугле говорят, что нужно менять сервер, но у других же как-то работает?? Так что бамп вопросу >>1021718
>>1021899 Спасибо. А как к галерее присобачить свиталерт2? В том смысле, вот у меня галерея на оулкарусели, по нажатию на картинки работает фэнсибокс. А куда тут всрался для галереи свиталерт2? Куда мне его присобачить то? Или на картинки поставить "Done!/Error!"?
>>1021936 В смысле никак? В браузере если вставить ссылку и ввести логин с паролем, то всё работает. А еще я нагуглил тулзу с get реквестами на этот сервер написанную на C#. Всё же работает, почему здесь никак?
>>1021943 Ты открыл страницу на домене хуй.пизда Эта страница может делать запросы на .хуй.пизда
Если ты открываешь страницу крокодил.залупа, то она не может делать запросы на хуй.пизда, если тот сервер тебе это не разрешит соответствующим заголовком.
>>1021943 не совсем, на скринах, ты браузером зашел на страничку, нельзя средствами JS с другой страницы типа localhost:8080 сделать такое while(1 < 10000000000){ startDDOS('.../account/verify_credentials'); } если у тебя только ГЕТ запрос хотя там basic authorization то можно CORS, а можешь сделать вот что, напиши на своем сервере функционал, который делает этот запрос и получает данные, а потом AJAX'ом уже спрашивай эти данные у своего сервера
>>1021948 >>1021945 В любом случае, спасибо, я понял в чем проблема. Мне правда не понятно, как это должно защитить от ддоса, если его легче и лучше устраивать на каком-нибудь пайтоне.
>у своего сервера Если бы, я пытаюсь написать extension для хрома.
>>1021950 > Мне правда не понятно, как это должно защитить от ддоса, если его легче и лучше устраивать на каком-нибудь пайтоне. Абу кладет на двачи скрипт, который ходит на название.домена и делает 3 запроса в секунду и продает услугу по ддосу, вместо ссаных пасскодов.
>>1021936 > ддос Не из-за этого ввели cors pre-flight хидеры. Ввели из-за совместимости, раньше можно было делать только геты и посты с дефолтными хидерами без X-Requested-With на чужие серверы c помощью img / form action, с появлением всяких аяксов появились новые опции, но так как существующие серверы не ожидали этих новых опций, решили ввести проверки на поддержу и желание принимать всякие PUT'ы, DELETE'ы и яаксо-запросы. В итоге старые серверы по умолчанию отказываются работать с не пойми чем, а новые должны отправлять хидеры клиентам с согласием обрабатывать запросы.
>>1021950 > Если бы, я пытаюсь написать extension для хрома. Так а что ты сразу то не сказал ? У расширений хрома вообще нету никаких проблем с этим, ты можешь даже POST запросы делать.
>>1021958 https://www.w3.org/wiki/CORS > The "permission to make the request" check is performed because deployed servers do not expect such cross-origin requests. E.g., a request using the HTTP DELETE method. If they reply positively to the preflight request the client knows it can go ahead and perform the actual desired request.
>>1021953 >XMLHttpRequest cannot load https://...net/api/account/verify_credentials.xml. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'chrome-extension://ebakojjk...' is therefore not allowed access. The response had HTTP status code 401. Не понимаю, у меня не работает.
Мне одному кажется, что эти chrome extension пишутся ногами в присядку стоя на голове? Почему все настолько неинтуитивно и неприятно? Есть кто в треде разбирающися, чтобы задавать вопросы по теме?
>>1021918 Спасибо, анон, ты лучший! Я всё сделал в коде, но возникла проблема: официальная owl carousel не работает, то ли конфликтует, то ли хуй пойми. При назначении класса owl-carousel - всё летит по пизде, при этом айди прописан рядом с классом в html и ещё в js настроен. Меняю класс на любой вместо owl-carousel - и всё работает (кроме самой карусели естественно), меняю обратно - пустая белая страница в браузере. Где достать рабочую карусель? Я так понял тут какой-то конфликт то ли с джиквери, то ли ещё с чем.
>>1022127 Карочи, есть два стула две ветви версий совы. Первая - старая, заброшенная, но рабочая. Вторая - актуальная, поддерживаемая, но достаточно глючная.
Сам делал проект на второй. Качай с гитхаба, причём качай лучше чей-нибудь форк с багфиксами.
По поводу конфликтов с жквери - не наблюдал такого, сова же плагин к нему, внедряется в его неймспейс. Смотри в консоль, а не на пустую страницу. Если совсем тяжело - воруй код прямо с демостраницы совы, уж там-то рабочий вариант.
>>1022145 Это все как-то грустно, особенно не имея возможности взглянуть на сорцы, но 100% рабочий вариант я тебе уже озвучил. Извлеки разметку с офсайта, подруби ту же либу совы с CDN, что и на сайте, а поверх нагрузи свои свистоперделки.
котаны, вы жквери то юзаете в связке с реактом для работы с дом ? Мне что то в крайнем проекте очень много приходится к нему обращаться, вот думаю, правильно ли я поступил что жq подтянул, может надо было полифилы взять и ванилу ? Короче как у вас обычно с рефами взаимодействие происходит
Помогите студенту, который не знает js, нужно распарсить страничку на стороннем ресурсе и вывести данные на сайт Хотел получить данные через xmlhttprequest, но это не работает При попытке хотя бы вывести количество символов через requestText.lenght он ничего не возвращает
>>1023953 Удвою, неплохо бы в шапку добавить информацию об этом. Сам когда-то приходил сюда с вопросом, почему не удаётся использовать API 2ch.hk с браузера.
>>1024001 Ну давайте туда еще запихнем то, как устроена клиент-серверная архитектура, для идиотов этого не знающих и лезущих при этом работать с сетью. Какие еще есть политики безопасности в песочницах, типа браузера. А когда тут начнется эпидемия незнающих как делать еще что-то(конвертация кодировок, ipc, устройство ос, лексический анализ, построение ast, etc) не относящееся к языку, мы и это туда впихнем.
Тебе ведь вместе с купленным тобою молотком обязательно даются инструкцию о том, как построить дом, верно?
>>1024047 Ровно так же, как бэкенд, или десктоп, не ограничивается языком.
Никакое окружение, не ограничивается языком. И если ты пишешь фронтенд, тебе надо уметь в dom, cssom, bom, etc. А если например десктоп, уметь в тулкиты. Бэкенд - базы. И так далее.
>>1024108 На клиенте или сервере? Бэкэнд логгирует каждый чих, а у клиента только обработка формочек и ой что-то пошло не так, остальное вручную дебажим.
>>1024113 Я скорее имел ввиду историю типа > const suxx = fuck().shit() и хуй с ним что fuck() может формально что-нибудь не то вернуть. То есть предполагается что fuck() должен что-то возвращать, но как показывает практика должен != обязан.
С логированием отдельная история: много логов - всем на них похуй. Мало логов - хер проссышь че произошло. Крашить сервер по ассерту говно идея. Пока что я пришел к выводу что логировать нужно варнинги/ошибки, и стремится к тому, чтобы логи были пустыми.
Добрый день. Сразу говорю, что я не веб-макака, просто по долгу службы нужно написать одну строчку js. Мне нужно открыть новое окно в браузере и скрыть в нем адресную строку. Я использую window.open(). В строке параметров >location=no что как раз соответствует видимости адресной строки, для верности еще и >toolbar=no,menubar=no,directories=no,status=no Но эта хуйня не работает в хроме, работает только в IE. Я правильно понимаю, что ебаться бесполезно и все зависит от самого браузера?
>>1024126 лень пояснять лол, jest делает слепок? вьюхи/компонента/любого куска юай далее когда тесты запускаются, этот snapshot сверяется с тем, что есть сейчас.
Короче поеботка для энтерпрайза, раньше одними юнитами обходились, теперь вот вьюхи еще тестим
>>1024129 Слепок разметки? Слабо представляю как это говно вообще может помочь. Статическую разметку нет смысла тестить. А как оно тестит формы и прочую поеботу?
>>1024129 Я к тому что, смысл тестирования в том, чтобы одну и ту же логику написать по разному, типа как тут: http://www.parens-of-the-dead.com/ А как тестить разметку-то? Типа сохранить че было в прошлый раз, и сравниваешь что ничего не поменялось?
написал компонент форма, она в зависимости от props выглядит по разному, в props попало что то не то || не передался какой нить пропс в компонент => он выглядит иначе, я тут же об этом узнаю.
>>1024138 у input при неправильном заполнении есть класс form__field--err, отправляю туда неверные данные, фиксирую в снепшоте, что класс добавляется, дописал еще 50 полей к форме, передал туда еще хуй пойми сколько данных, запускаю старый тест, класс все еще добавляется
>>1024143 > Ну и как, это вообще помогает? Помогает
> Как часто такие тесты фейлятся, и как часто вылезают баги, которые тесты не отловили? если над одним компонентом за неделю может человек 12 работать и кодовая база таких компонентов больше хотя-бы 50к то редко но метко.
Это опять я с хром расширениями. Поясните, пожалуйста, простыми словами в чем разница между скриптами background (persistent), background (not persistent) и content_scripts, если они все вроде бы как работают в бэкграунде. Документацию читал и этот момент не понял вообще.
Ебаный пиздец. Книга с места в карьер сразу кидает. Фукнции обекты, массивы, методы булевые-хуюлевые значения, безо всяких объяснений что это вообще. Как эту говнину можно советовать?
Аноны, такой вопрос. Есть ли в Sails бест-практис по получению объекта текущего юзера для последующего редактирования? К примеру можно через User.findOne ... и внутри апдейт сделать, или через User.update({//id юзера}, {//параметры }), но это выглядит как говнокод, >>1024212 Ну хз, мне она понравилась.
1.2КК город, удаленка, нормальное портфолио у студии, пообщались в скайпе, подрассказал что делал, что могу что хочу, стандартно короче, сказал что претендую на 300 р./ч @ скинули тестовое на все выходные @ вы нам подходите, но для начала давайте 50/месяц @ Ок, высылаю документы @ да документы получили, можете приступать, устроили вас по тк чето там, 25/месяц в течении 2х месяцев а потом 50... Занавес
>>1024274 ни слова не переврал, разве что ща по вики пробил 1.1КК в городе. Удаленка жи. Да и я не сеньер в общем-то. На реакте не больше 3к строк написал да и те пет прожекты типа олиоса. На жквери с ванилой правда бэкграунд есть но один хуй.
алсов: ты таки контакты конторки грузчиков то доставь
>>1024413 Ладно, прочитал про проксирование, теперь мне нужно получить количество символов в коде, страница в той же папке, что и скрипт, почему при исполнении кода ниже мне выдает 0? alert(xhr.responseText.length);
Вечер в хату, жаваны. Поясните за MutationObserver. Я хочу получить только ивент последнего изменения DOM после клика, а он мне выдает целую кучу изменений во время загрузки сайта, что меня не устраивает.
А есть какой-нибудь большой полифил вроде core.js, но для нормальной работы с DOM в старых браузерах? К примеру, я хочу использовать всякие classList или dataset в ie8.
Нашёл только мелкие полифилы для отдельное фич, но искать и подключать сотни мелких полифилов как-то неудобно, а жквери использовать не хочется.
А как парсить и получать тот DOM, который пропадает после финальной загрузки, зато есть при инспекте? Например, с видео плеерами так, в финальном хтмл коде нет элементов, которые есть если открыть инспектор.
>>1024633 Помогите, плиз. Вот пара скринов с http://videojs.com/advanced/ например. В DOMe в инспекторе есть этот div с текущим временем, а в финальном сурсе нет даже самого div'а. Как вытащить это время, например?
>>1024637 >В DOMe в инспекторе есть этот div с текущим временем, а в финальном сурсе нет даже самого div'а. Ты дурак. В инспекторе у тебя и есть финальный сурс. А то, что ты смотришь во вью-соурс - это то что приходит статикой с сервера.
>>1024657 Что изучать-то? Я бы с радостью, если бы это решило мою проблему.
То, что этого элемента еще или уже нет, мне было понятно с самого начала. Как решить эту проблему и получить нужное значение после его создания? У меня скрипт вызывается по $(document).ready().
>>1024660 Ну ок, буду изучать. >Он может и позднее создаваться динамически И как тогда мне позднее запускать селектор? Я если что пробовал искать в цикле setInterval() и после ожидания результат тот же. Отследить-то я может и отслежу, вот только это не даст мне ответа на вопрос.
Тут какая-то совсем нездоровая хуйня происходит. Навесил исполнение при любом изменении DOMа с MutationObserver, он выполняется всегда при изменении любого аттрибута внутри. Но селектор все равно не находит нужный элемент. Хотя в консоли все работает.
>>1024674 Ну дык я запускал в таймере, я ж говорил >>1024663 А вообще этот MutationObserver работает так: происходит изменение в доме -> вызывается коллбэк функция с выводами в консоль. Так что этот элемент никак не мог пройти мимо. >может скрипт не в конце body стоит Скрипт вообще нигде не стоит, это расширение для хрома, он запускается на document.ready. И предвидя ваши вопросы, остальные селекторы работают нормально, но вот с видео нихуя не выходит.
>>1024707 >>1024705 Ебаный пиздец. Спасибо. Как можно было понять, что дело в айфрейме и что $() не выбирает оттуда? Не веришь, что всю ночь ебался? А зря, так и было.
>>1024709 Можно было заметить, что у тебя селектор вообще не работает. Также можно было проверить на другом сайте, где все бы заработало, после чего ты смотришь в чем разница между сайтами. Ну и просто с опытом, в следующий раз вспомнишь про айфреймы.
Пойцаны, посоветуйте, пожалуйста, что изучать, чтобы вкатиться в node.js. Пока что смотрю Кантора, прошёл разные курсики, в которых самое сложное, чему можно научиться, это делать рауты. А я хочу в хедерах там разбираться, ну и еще во всяком таком, чтобы можно с пацанами за чашкой смуззи разговор поддержать.
Аноны, поясните за модули из es6 для тупых. Правильно ли я понимаю, что это просто спецификация для всяких SystemJS, Webpack и прочих бандлеров с подключенными транспилерами es6 кода и что просто из коробки эта хуйня не будет работать в браузере?
Реквестирую лучший генератор статиков с блекджеком и шлюхами поддержкой реакта, scss и вебпака. Попробовал Phenomic - он даже не установился нормально.
Поясните! Чувак (который делает сайты с помощью html css и js) сказал - "перехожу постепенно в полноценную фронтенд разработку". Что это означает? А до этого он что делал?
Что делают с помощью этого языка js? Ну вот эта вся хуитень всплывающая-выезжающая и прочая на сайтах, а что ещё? Явно ведь в крупные компании набирают людей не для подобной хуйни. Может это и будет ответом на первый вопрос.
>>1025139 работа с данными, работа с бизнес-логикой на клиенте, оптимизация производительности, многопоточности, разработка API, покрытие тестами. красивости и слайдеры - обычно это работа продвинутого верстальщика.
Бамп вопросу. >Мобильные приложения: Cordova, NativeScript, React Native, Phonegap, Ionic Что из этого брать и почему? Это аналоги ноды, но для смартфонов/планшетов, верно? Как вообще с мобильной разработкой на жс, так же хуево, как для десктопа выходит (прожорливо, слоупочно, ебануто, интерпретатор с зависимостями жрет больше питона, текстовый редактор жрет 200 мегебайт и при этом работает медленнее саблайма) или нормально и вполне сравнимо с разработкой на xamarin, например? >>1019088 Можешь пожалуйста пояснить подробнее отрицательность опыта? >>1019074 В чем разница? Они компилируются в жабу/свифт вместо использования жс-интерпретатора?
пишу небольшой апп на электроне-реакте-редукесе, будет клиент на дестоп и в браузер. сейчас добавляю экспресс чтобы можно было POSTить мемусы. какая самая заебистая """2017 эдишн""" библиотека чтобы комуницировать с сервером из реакта-редукоса? чтобы было дохуя старов на гитлерхабе и типа все продвинуто, паттерны там интересные и вся хуйня. axios? relay+graphql? может сокеты накатить аля Socket.io? какие базворды гуглить?
Проясните такой момент, пожалуйста. Вот, например, я пишу на реакте и использую бутстрап. Есть два варианта: импортировать весь бутстрап или импортировать по частям(типа import {Row} from 'bootstrap). Если импортировать по частям, то в бандл войдёт только часть бутстрапа, включающая в себя Row, и финальный файл будет меньше или не имеет никакого значения?
привет антон. хочу быть фулстеком. да, ебань тупая, но похуй. хочу типа шарить в вашей шараге.
Итак что мне нужно IDE: - с НОРМАЛЬНЫМ блять intellisens, как в моей студии с шарпом - объекты из РАЗНЫХ js файлов должны подтягивались и быть доступными через intellisense - область видимости обьектов в зависимости от используемого контекста должна учитываться в intellisense. по умолчанию должен быть глобальный/локальный/похуй, желательно иметь возможность на это влиять - CTRL+S для обновления скриптов, вместо вашей компиляции. Мне похуй на ваши ебучие сборщики. У вас была победное хуета: CTRL+S и F5 в браузере. Но потом вы все обосрали вонючим нпмом, галпом и другим не свежим дерьмом. Я ебал связывать в тентаклях, тим ситях или батниками это дерьмо с реальностью. Я хочу нажать CTRL+S и шоб оно все взлетело нахуй! - возможность запиндюривания всего этого в мой божественный ASP.NET MVC
- прожект на гите типа hello-world-motherfucker - приветствуется
>>1019069 (OP) стоит лучше учить ноджс (на сервер сайд вообще не могу, даже пхп) или всетаки руби? Мало хде на хостингаг видел возможность работать с нодом, да и маленькие проекты буду клепать
>>1025848 вебсторм >>1025862 руби если ты лесбуха, негр или/и гей >>1025840 modules: false в бабеле и тогда import {stuff} from будет меньше кода а вообще tree shaking багнуто работает, лучше сам в бандл посмотри и проверь и так и так
>>1025871 >вебсторм платность не то чтобы бомж, но жаба душит
>>1025867 >vs code у меня professional VS со всем что только можно, MSDN subscription и другое и я чем только не обмазывал это дерьмо. без JetBrains с их решарпером в JS не получалось. а мне еще больший зашквар нужен - реакты там починять, ангуляры чинить, тойпскрип хуячить.
Создайте код, который принимает имя и рейтинг студента. Проверьте корректность ввода на длину имени (не короче 1 символа и не длиннее 20-ти), рейтинг в пределах от 100 до 200 При несоответсвии - сообщение на экран и прекращение работы скрипта.
При корректном вводе полученные данные должны накапливаться как элементы двух массивов - имена и рейтинги. Индексы элементов массивов у одного студента совпадают. Ввод должен быть не менее 10-ти сутдентов.
Перебором массива рейтингов вычислить средний рейтинг.
Перебором массива студентов выводить на экран в отдельной строке имя студента, его рейтинг и средний рейтинг.
>>1025870 >>1025871 Я про вебпак. Почитал про tree-shaking и судя по всему, импортинг бутстрапа через <link> тэг является ужасным преступлением. Устроился юниором, а в моем проджекте дядька-сеньор-помидор так и делал.
>>1026071 Если честно я обосрался 10 раз пока это писал. Пришлось просить помощи на гиттере, потому что я нихуя не могу пока осилить монад-трансформеры. Если убрать миллиард импортов, то по строкам выходит так же как на жсе https://jsbin.com/qenazareje/edit?html,js,output
>>1025248 > Можешь пожалуйста пояснить подробнее отрицательность опыта? раза три появлялись ошибки как на пике, Это рандомная со stackoverflow. И непонятно как ее собственно дебажить, хотя если в команде будет android разработчик хотя бы один, такие проблемы, проблемами можно будет не считать. 38-45 fps: можно подумать, что это я наговнокодил, но разве что они https://ant.design/ нужно тогда и pros упомянуть: я довольно шустро накидал простенькую первую прилку на андроид, буквально часов за 5 делай скидку, что у меня это совсем проба пера была.
>>1026132 твой дед-синьор наверняка еще использует HtmlWebpackPlugin чтобы index.html в дист копировать, скажи хозяину что лучше в file-loader .html прописать и делать import html from './index.html' прямо в index.js как настоящий боярин без плагина
>>1026135 Я ничего не понял, но запишу на бумажку, выучу и скажу. Я вам доверяю, пацаны. Надеюсь, вы меня не наёбуете. там .cshtml шаблоны, в которые он импортит
>>1026142 вобщем хозяин все равно ниче не поймет, намекни ему типа, рефакторинг рекурсия там абстракции, редьюсеры, монады, экспириенс, ну и главное то что деда пора сливать а дорогу молодым типа право имеешь 30к верстка для ie8 тебе все равно терять нечего
>>1026147 >Какая разница в чём верстать, если всё один хуй через бебель прогоняется? разница кто потом это поддерживать будет, а вообще каждый дрочит как хочет
>>1025248 >Мобильные приложения: Cordova, NativeScript, React Native, Phonegap, Ionic >Что из этого брать и почему? Это аналоги ноды, но для смартфонов/планшетов, верно? Как вообще с мобильной разработкой на жс, так же хуево, как для десктопа выходит (прожорливо, слоупочно, ебануто, интерпретатор с зависимостями жрет больше питона, текстовый редактор жрет 200 мегебайт и при этом работает медленнее саблайма) или нормально и вполне сравнимо с разработкой на xamarin, например? Еще раз бампану, аноны, помогите пожалуйста. Вопрос к перекатчикам треда: вы если уж FAQ такойи пилите, вы хотя бы немного должны быть в состоянии объяснить непонятные места в нем, иначе зачем он нужен вообще? >>1026077 Спасибо, анон. Мне казалось, трудности дебага вообще фирменная фишка жс.
>>1026086 Сейчас с магазинами непонятки. Рампа очень скатилась за последние годы, есть куча вариантов на спец-сайте собрано, что-то вроде годнотабы, или как ее. Но хуй проссышь, чему из этого можно доверять, а что кидалово ебаное уровня "киллеров за биткоины". Поиск замороченный, автошопы не везде, а где есть - не совсем понятно, где громко кричать, чтобы барыгу опустили, если возникнут проблемы типа отсутствия клада, а барыга пошлёт. Еще из-за количества всех этих магазинов ты сам становишься хуем с горы, одмины не могут понять - это барыга охуел, или это ты пытаешься его наебать. А еще разброс цен бесконтрольный. Все не так просто с этим вашим тором, я вот уже с год ничего не брал из-за этого всего.
>>1026220 февраль-середина июля, но я бывало распиздяйничал по неделе, но вообще за день две-три темы прорабатывал. все задачи решил без подглядывания. ну вот стек реакта освою, хуйну какой-нибудь модный СПА и попробую вкатиться.
Как на jquery запилить такую тему: у меня есть скроллящееся окно с сообщениями, и мне нужно, чтобы скрипт периодически мониторил те сообщения, которые находятся в видимости скролла. Что-то долго гуглил, да не нагуглил, ибо тупой. Помогите, пожалуйста.
>>1026389 про сетинтервал я знаю (сеттаймаут получше все равно будет). меня больше интересует то, как захватывать область скрина, и по захваченной области проводить итерацию
>>1026474 сеттаймаут один раз сработает, если надо периодически что-то делать то нужен именно сетинтервал двачую, ты даже не можешь сформулировать задачу
>>1026485 Смотри. есть область экрана. она скроллится (сообщения. как в вк). мне нужно как-то выделять список сообщений из текущего окна, с текущими границами в рамках текущего скролла. ну и делать это раз в 5 секунд
Интегрирую eslint в существующий проект, естественно всё красное. Можно как-то натравливать его только на "помеченные" файлы, например, специальным комментарием?
Вот, жсач, ты тот кто мне нужен. Смотри пик, а не знаешь какого нить слайдера, элементы которого можно кастомно называть при появлении (slideIn)/уезжании(slideOut) хочу сделать что то типа, когда наступает событие slideIn, эти картиночки появлялись по очереди а не всем скопом
Аноны, кто работал с гугл мапс апи? Я отдаю клиенту геоджейсон, нужно отрисовать его на карте и не просто map.data.loadGeoJson, а нужно для разных маркеров - разные иконки. т.е. мне нужно как-то после map.data.loadGeoJson вытащить эти объекты и по своему их отобразить.
аноны, дали простое тестовое в, видимо, формошлепскую контору. но я не учил js, пока только пыху. Начал выполнять с минимумом знаний о JS. надо на вордпрессе создать страницу и в ней сделать форму, которая отправляется AJAXом. я начал с простых уроков но не пойму, вроде бы пишу все правильно, но при нажатии кнопки отправить - страница перезагружается, как этого избежать?
>>1028332 прочитал, не особо понял куда воткнуть. смотрел видеоурок, оттуда пишу: <script>
function testFunction(){ var element = document.forms["form-login"].elements["name"].value; if(element=='""){ alert ("Field Name is empty"); return false; } } </script> но он не работает, страница перезагружается и окошко не выплывает.
>>1028411 Ета ебанина при попытке создать новый метеор прожект, то есть ебаное meteor create, пару минут жрало процессор и пыхтело диском, и в итоге выдало ошибку с пустой нодопапку.
аноны, такой вопрос: вот я иногда в проекте динамически создаю произвольные блоки и навешиваю на них произвольные обработчики событий. Причём обработчики событий навешиваются при загрузке странице в момент инициализации модуля.
Теперь сам вопрос: возможно ли как-то зарегистрировать созданный блок, чтобы с ним работал написанный здесь обработчик, или тут только закомментированный вариант будет работать?
Поясните за VSCode vs. Atom. Какие плюсы/минусы по вашему субъективному/объективному мнению. VSCode ведь ШВАБОНЫЙ, как и Atom? Где приятнее пердолить расширения (пэкеджи)?
Сам пока сижу на Атоме, но бугуртить от него начинаю всё чаще.
Как же бомбит от всех этих ангуляров, реактов, вебпаков... Вот раньше как просто и удобно было: в блокноте набросал HTML, подключил <script src="jquery.min.js">, еще что-нибудь для дополнительных компонентов (да тот же jQueryUI), да CSS добавил, сиди и верстай, получай AJAX'ом JSON с сервера да обновляй DOM. Что-то не работает - Хром с Лисой все ошибки покажут. А сейчас ППЦ, уже сложнее бэка, собирается хуй знает как, пишется хуй знает на чем (какие-то TypeScript, SASS, HAML...), менять поведение компонентов хуй знает как (в Bootstrap 2 варианта меню для больших и маленьких экранов, а один вариант никак не сделать), отлаживать вообще невозможно. И бэкендеров в энтерпрайзе заставляют всю эту хуйню учить. Нахуй мне в .NET всрались эти Bootstrap'ы и Angular'ы?
>>1028605 хз как это выглядит с точки зрения бэкендера, но на самом деле и реакт и угловой и вью и прочие nextcss довольно сильно упрощают жизнь мне как верстале. вместо того же var xhttp = new XMLHttpRequest(); гораздо проще и приятнее писать const users = await fetch('/domen.com/api/v3/users') а flexbox и css гриды еще и верстку в обозримом будущем сделают сплошным удовольствием
>>1028605 и да > менять поведение компонентов хуй знает как сейчас жс фреймворки настолько высокоуровневые, что проще написать нужный тебе компонент один раз, а потом таскать его из проекта в проект
Сап. Не получилось разобраться с помощью гугла, поэтому надеюсь на твою помощь, анон.
Есть jQuery. И есть два отдельных элемента DOM, созданных с помощью него, например, element1 и element2. Суть проблемы в том, что надо их как-то так сгруппировать в, например, group1 так, чтобы не класть их в какой-то div или около того, но при этом была возможность вызвать group1.hide()
>>1028607 >>1028609 Мне надо динамически строить и показывать графы (схему узлов шины предприятия). Без ноды, пакетов и фреймворков я просто качаю c d3js.org скрипт для работы с SVG, подключаю его на своей страничке через <script src="">, там же пишу функцию с кодом типа var svg = d3.select("#svg-container").append("svg").attr("width", 400).attr("height", 400); svg.append("rect").attr("x1", 5).attr("y1", 5).attr("width", 50).attr("height", 50); ... и т.д. Вызываю эту функцию в <body onload>, создаю и подключаю CSS файл - все работает и отображается. За 10 минут готов макет. За полчаса - связка с GraphQL с обновлением по таймеру. Готово, далее остается лишь backend работа да украшательства с темами с круглыми кнопками. На Angular 2 приложении: 1) я ебусь, чтобы узнать какие зависимости нужно подключать в package.json; 2) я ебусь, чтобы узнать, почему возникают дебильные ошибки типа "TypeError Cannot set property 'emulateTransitionEnd' of undefined" внутри автоматически сгенерированных *.js скриптов; 3) я ебусь, изучая модель MVC (зачем она на фронте, который сам является View?!); 4) наконец, через 3 дня мне удается создать свой компонент и подключить d3, прописав где нужно и добавив import. Я пишу в своем компоненте предыдущий код: var svg = d3.select("#svg-container").append("svg").attr("width", 400).attr("height", 400); svg.append("rect").attr("x1", 5).attr("y1", 5).attr("width", 50).attr("height", 50); и жестко обламываюсь, не видя результата - оказывается в TypeScript почему-то не передается правильно this; 6) вместо своего самопального меню я решаю "упростить разработку", беру Bootstrap и быстро набираю код с navbar из туториалов, но если на мобильниках все ок, то на большом экране показывается глюкодром вместо меню, гугление выдает, что для отображения мобильного стиля надо собирать собственную сборку на сайте Bootstrap (!), которую, естественно, к Angular 2/TypeScript никак не подключишь. 3 дня убито, а я не могу перенести код, написанный ранее за 10 минут. Это называется гораздо проще? Проще на Delphi, проще на любой CMS, где сразу генерируется правильный работающий дизайн, который при желании очень легко исправить вручную. А здесь - куча мусора, который лагает, и в котором совершенно невозможно разобраться. Разумеется, можно попробовать разобраться в этом зоопарке, этак за пару-другую лет. За это время выйдут совершенно новые фреймворки и языки с полной потерей обратной совместимости. А то, что ты учил, будет давно забыто и никому не нужно, как первый ангуляр и Dart. Раньше было проще - и для дизайнера (которому достаточно было выучить основы HTML & CSS), и для программиста (была стабильная, неизменная основа, к которой прикручивалось все нужное, либо быстро писалось самому).
>>1028611 У нас только дизайнеры, они не знают эту хуйню. Ради примитивного дизайна (раньше он вообще был на WinForms) отдельную вакансию никто открывать не будет.
>>1028625 Дело в том, что использовать селекторы тут - излишние костыли. Проще уж просто завести массив из этих элементов с отдельной функцией, которая просто будет на каждый применять hide().
>>1028621 Да ваще раньше заебись было. Кроме счетов, чернил и пера с пергаментов ничего не надо было. Пиши и считай как хочешь. А щас какие-то комплюктеры напридумывали суки.
Опять гугл мапс вопрос, создаю маркер и настраиваю в нем тайтл - не отображается, создаю информ-окно - не всплывает. В тайтле даже обычный текст вписал - не помогает. Может подскажете, в чем дело? https://pastebin.com/tHMvDHvd
>>1028828 И это еще фигня, бывает и похуже. Например, копируешь предыдущую проверку, но забываешь подменить условие. Или пишешь условие так, что оно всегда true / false.
Посонва, хочу написать типа диалогового квеста на JS. Не хочу фреймворки дрочить, задача попутно прокачать навык юзания JS. Встает самый главный и трудный вопрос. Где хранить текст диалогов? JSON или в объекте?
Почему JS такой ебанутый язык? Читаю про ООП, он не ООП, но там можно через прототипы типа как ООП сделать, а еще через функции, а еще через классы. И все 20 разными синтаксисами. Через точку блять, через new, через функции, через прототайп через __proto__ уверен что можно и через var и через object.prototype тоже можно намутить "классы". Они вообще про бритву ОКАМА слышали? Нахуя запихивать 400 способов реализации одного действия? Ладно, я понял, вы хотите чтобы я не мыслил ООП, так каким нахуй образом мне архитектуру приложения выстраивать? У меня жопа горит, теперь понятно почему у этого убожества 300 000 фреймворков.
JS старше тебя и твоей мамки*, с развитием фронта менялась изменялась ПАРАДИГМА МЫШЛЕНИЯ, каждое изменение порождало новые фреймворки, а старые адаптировались.
>>1028893 Может действительно не париться и сразу сесть учить фреймворки, не уверен что каличный pureJS где нибудь пригодится кроме как шевелить текстом.
>>1028995 Всегда убивали такие доводы. Все что в стандарт прибавилось со времен ES3 усваивается за вечер.
Вы пиздец какие странные. Люди, которые умеют в один язык, другой с несильно кардинально отличающейся парадигмой изучают за пару дней. А вы блядь уповаете на какие-то вновь добавленные фичи в спеку языка.
Есть две html-страницы: 1.html и 2.html; и серверное приложение, написанное на expressjs: s.js. Страница 1.html содержит в себе кнопку, которая отправляет get-запрос '/2' на сервер. Что надо сделать на серверной части, чтобы после нажатия кнопки отображалась страница 2.html?
>>1029145 > router\middleware Я пока плохо понимаю что написано в результатах, которые дает гугл, но не вижу чтобы явно указывали путь к какой-либо html-странице. Объясни, как мне это должно было помощь.
не нашел треда про реакт, поэтому запилю тут. гайс, я только вкатывают в реакт и мне надо сделать продвинутый todo list, чтобы с заголовком задачи, описанием и прочим. я не хочу пока тянуть редакс, да и не знаю как с ним работать, поэтому объясните мне, как добавлять новый объект таска в стейт приложения. спасибо
Аноны, вкатываюсь в JavaScript. Решил сделать небольшой онлайн калькулятор. Суть в том, что есть несколько чекбоксов. Если чекбокс включен, то прибавляется цена к базовой стоимости. Если выключен, то вычитается. Например, у меня есть 4 input (на деле их будет больше). Базовая стоимость 2000. Первый инпут +2000, второй +1000 и так далее.
Всю хуйню я уже сделал и все работает, но мне кажется, что я сделал все очень криво и можно лучше.
Сделал следующим образом: Для каждого инпута свой name и свой параметр, передаваемый в функцию pricer. Это я сделал для того, чтобы он понимал С КАКИМ ИМЕННО надо работать. Сама функция работает так: Он берет DOM-элемент, имя которого соответствует переданному параметру. Теперь он знает, с каким именно инпутом будет работать. Далее просто проверяет, если галочка уже есть, но функция вызвалась, то вычесть цену. Если галочки нет и функция вызвалась (по onclick), то прибавить цену.
Еще раз повторяю - все работает. Но я хочу улучшить код, но не знаю как. Я хочу, чтобы это работало с бесконечным количеством input. Потому что я так заебусь вписывать в каждый инпут новый name и аргумент в функцию. Надо сделать все лучше.
Более того, надо все сделать без JQuery и прочей ёбани, потому что я еще ее изучать не начал, а только остановился на событиях. Поможете?
Блядь! Знаю, многие из вас писали свои полифиллы для промисов. Можете продемонстрировать свои исходники? Просьба не отсылать на гитхаб за готовыми вариантами, т.к. хотелось бы шаг за шагом разобрать с аноном. Пробовал свою реализацию писать - хуйня выходит - а именно не удается корректно обрабатывать промисы, обернутые в then().
В особенности интересует как сделать множественный чейнинг .then() Точнее, не сам по себе чейнинг, а как чейнить промисы, выполняя следующий шаг только по завершению предыдущего и передавая готовое значение. Спеку Promises/A читал.
Посоветуйте библиотеку для Node.js, которая может формировать excel-таблицу. Желательно более-менее популярную, чтобы, если что, по ней можно было найти в инете достаточное количество информации, и с человеческой документацией, а не одним примером уровня Hello world на весь гитхаб
Всем гитлер, братва. Вечер в хату, жизнь ворам. Как проверить на сервере то что файл это изображение или видео? Хедеры читать? Как проверить то что после файла не дописана всякая шняга типа архивов и тд? Другие подводные камни? Что гуглить?
Мой тестовый сайт на ангуларе 2 хостится на локалке. Бэкэнд хостится тоже на локалке. Чтобы осуществить связь между ними, мне надо во всех запросах указывать url сервера? Правильно понял схему работы?
>>1029737 >Как проверить на сервере то что файл это изображение или видео? Хедеры читать? Да, magic bytes. >Как проверить то что после файла не дописана всякая шняга типа архивов и тд? А тебе не похуй, лол? Ну ищи мейджик байты какого-нибудь RAR'a по всему файлу, хуле. Однохуйственно, все варианты не предусмотришь и против стеганографии не защитишься. Хотя, если подумать... Если ты мутишь свой имидж-хостинг, то проще пересохранять пользовательское изображение, так ты избавишься от вложенных закладок.
>>1019069 (OP) Двач, я тупой и не понимаю первый ангуляр. Английская документация мне ни о чем не говорит, хотя в целом техдокументацию нормально читаю, да и новости смотрю на инглише. Есть ли на русском гайд про ангуляр, прям для самых тупых - про двусторонний дата биндинг, про директивы, хуё-мое и т.д?
Ну так это и не должна быть единственная проверка. Если уж так боишься, то выноси опасный код в микрослужбу (утку), потом её в докер (яйцо), и запускай с минимальными привилегиями (игла), только это скорее всего избыточное, и тебе делать нечего.
>>1029375 Антоша, смотри, я переделал еще вот так: Кода получается меньше и он становится универсальным если добавить проверку на checkbox. То есть скрипт должен проверять еще, чекбокс это или нет. И если нет, то не считать его
Анонсы, объясните нубу вот что : Допустим существует объект1, все его свойства - это тоже объекты, у которых в свою очередь свойства тоже объекты. И так до n. Если мне требуется посчитать все общее количество свойств во всех объектах - только ли рекурсией это можно реализовать?
>>1029737 Каким-нибудь image-magick'ом изображение пережми с тем же качеством, при этом перенеси самый левый столбец пикселей в право, а самый первый - в конец. В 99.9999997% случаев все "сюрпризы" проебутся. Чем больше столбцов переносишь, тем больше (9) после запятой.
Аноны, часто встречался с такой траблой, но так и не понял принципа. В общем, почему если предварительно не запушить элементы в массив, с ними не получается работать? На пике пример.
>>1030012>>1030013 >for (var i in a) Поправь опечатку для начала, что за 'a'? Нахуя ты вообще картинку пилил, вместо того чтобы ссылку на код кинуть? И попробуй использовать for..of цикл.
>>1030013 Почитай Флэнагана на досуге. Суть в том, что querySelectorAll возвращает не массив, а NodeList. У NodeList тоже есть свойство length, но нет методов массива.
>>1029321 Господи, как же я пригорел с этой книжки. Почему никто не сообщил автору, что худ. отступления в тех. литературе - это ад. Намедни ради интереса читал Руководство java за авторством Герберта Шилда, господи, какой автор няшечка, все написано прекрасным языком, нет ебучих отступлений типа цитаток Конфуция, каких-то несуразных метафор-сравнений.
Что JS-сеньоры-господа скажут про WebAssembly? Я уже влюбился в JS настолько, что кодю по 18 часов и собираюсь перекатываться со своей текущей работы в разработчики. Каковы шансы оказаться на улице через года два, т.к WA захватит сферу использования JS?
>>1030050 спасибо Но я хочу онлайн игру через вебсокет сделать мнеж в итоге между игроками передачу данных организовать,я просто не понимаю как это можно дома тестировать
Этот тред посвящён главному языку будущего - 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/
JS-конфа в телеграме:
https://telegram.me/jsthread
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.