Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!


[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 554 | 31 | 137
Назад Вниз Каталог Обновить

JavaScript #84 Аноним 02/08/17 Срд 01:55:03  1035855  
14804378141350.jpg (37Кб, 1052x1052)
js1.jpg (109Кб, 1000x900)
js2.png (292Кб, 1140x813)
Ссылка на прошлый тред: >>1030264 (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/

JS-конфа в телеграме:
https://telegram.me/jsthread

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
Аноним 02/08/17 Срд 02:09:55  1035858
veteran005s.jpg (63Кб, 400x327)
Поясните, плз, за TypeScript + gulp.

Thttps://pastebin.com/aV33Q6up
Аноним 02/08/17 Срд 02:47:22  1035866
>>1035858
В тайпскрипте нет рантайм проверки типа, только проверка при компиляции. Если при компиляции оказывается, что тип некорректен - то он падает с ошибкой. Если нет - то компилируется без проверки. Гугли "runtime type checking".
Аноним 02/08/17 Срд 02:49:56  1035868
>>1035866
>нет рантайм проверки типа
Спасибо; стоп, а нафиг оно нужно?
То есть, если при компиляции никакого инпута нет, он (инпут) будет от пользователя?
Аноним 02/08/17 Срд 02:52:13  1035869
Думал я пойти на курсы по фронт енду.
Жа эс я немного знаю, но хотел выучиться как положено.
Записался в епам курсы https://www.training.ru/Registration/Registration/1567
Меня отшили сказав что "Уровень английского у вас не дотягивает до необходимого".
Проверяли мой английский, спросив меня про ёбаные хобби!
Что за хуйня, анон?
Стоят ли подобные курсы того или дома тоже нормально всё учится?
Аноним 02/08/17 Срд 04:26:50  1035875
>>1035869
есть у меня один чел в зале, выучился недавно на тренера, теперь косит под тренера и всем на уши приседает своей теорией как мы все неправильно делаем - заебал реально. но жмет при этом хуево и мало. короче его советы мы в рот ебем
Аноним 02/08/17 Срд 08:42:30  1035918
>>1035869
Курсы ЭПАМа нацелены на создание новых для них сотрудников после прохождения пары этапов берут на испытательный, поэтому и английский нужен официальный язык компании

мимо когда-то проходил и вёл подобные курсы
Аноним 02/08/17 Срд 10:52:50  1035978
image.png (11Кб, 548x248)
Аноны, а как получить значение первого свойства объекта на пикриле??

точно нет:
obj.1
obj[1]
obj."1"
Аноним 02/08/17 Срд 11:03:26  1035986
А тред по Node JS есть? Чет не могу найти.
Аноним 02/08/17 Срд 11:06:24  1035988
>>1035978
obj["" + "1"]?
Аноним 02/08/17 Срд 11:24:47  1036000
>>1035978
Никак, он перезаписан.

>>1035988
Проиграл с ЖС магии. Попробуй еще так, может элемент все-таки найдется: obj[true+false+""]
Аноним 02/08/17 Срд 12:19:52  1036019
>>1035875
Ахуительная история
Аноним 02/08/17 Срд 12:20:01  1036020
>>1035986
Это здесь
Аноним 02/08/17 Срд 12:35:36  1036029
>>1035875
есть у меня один чел в офисе, выучился недавно на ментора, теперь косит под коуча и всем на уши приседает своей теорией как мы все неправильно пишем - заебал реально. но коммитит при этом прямо в мастер. короче его советы мы в рот ебем
Аноним 02/08/17 Срд 13:10:09  1036046
>>1036029
>выучился недавно на ментора
Это как? Где такому учат и что именно там преподают?

>коммитит при этом прямо в мастер
Ему можно, он ведь ментор.
Аноним 02/08/17 Срд 14:41:55  1036078
>>1036000
спасибо, сразу не догадался прогнать имена свойств на typeof.
Аноним 02/08/17 Срд 15:18:18  1036101
>>1036029
> коммитит при этом прямо в мастер
Это что-то плохое?
Аноним 02/08/17 Срд 15:27:53  1036107
>>1036020
Ну ок. Допустим есть readable stream, из которого идет вычитка данных
req.on('data', function (chunk) { data += chunk })
Что после обработки с чунком будет, в смысле не с данными а с куском памяти? Уйдет сборщику на освобождение? При этом стрим для следющей части данных память опять будет выделаться из кучи? Нет какого-либо решения например с колцевым буффером и приостановкой чтения при его заполнении, когда после обработки данных чунк возвращает в стрим. Ну или что-то подобного.
Аноним 02/08/17 Срд 15:39:01  1036113
>>1036107
> опять будет выделаться из кучи
Ты говоришь это так, как будто это что-то плохое. Если охуенно быстрый generational GC охуенно быстрого движка V8 тебя так волнует, хули ты кодишь свою парашу не на расте?
Аноним 02/08/17 Срд 16:22:13  1036138
webpack слишком умный.

function nodejsRandomBytes(size) {
.. const crypto = require('crypto')
.. return crypto.randomBytes(size)
}

webpack находит require('crypto') в теле фу-и. добавляет браузерный crypto polifyll. вот же говнюк.
Аноним 02/08/17 Срд 16:30:55  1036142
К GC у меня претензий нет, на расте кодить нет возможности, ибо пораша большая старая и не моя. Я бы на C все переписал, но это ебанутся можно, пускай Node будет. Но у меня претензия к стриму. Если прокачивать гигабайты данных на приличной скорости, потребление памяти улетает в ебеня, плюс GC забирает большую часть времени CPU, которое должно уходить на обработку полученных данных. В итоге - гроб, кладбище. Нахуя это нужно, если можно все эти гигабайты протащить через кольцо небольших буферов, и при этом известно, что скорость поставки данных данных ниже скорости их обработки.
Аноним 02/08/17 Срд 16:31:45  1036143
>>1036113
->
>>1036142



Аноним 02/08/17 Срд 17:11:36  1036164
Можно ли рассчитывать на зарплату выше 30к, если ты живешь в провинции и пишешь на JS?
Аноним 02/08/17 Срд 17:25:06  1036178
>>1036164
Возьми да посмотри вакансии у себя в провинции.
Аноним 02/08/17 Срд 17:50:33  1036195
Поясните за jest. Вот дёргаю я renderer.create component, оно мне попадает в конструктор. Там у меня state loaded сетается в false. И соответственно в снепшот попадает тот флоу.
А как мне дергать компонент что бы самому мокать его states?
Аноним 02/08/17 Срд 18:10:29  1036214
>>1035855 (OP)
Какие чулочки и платье брать? Как лучше брить тело?
мимо-миддл
Аноним 02/08/17 Срд 19:33:00  1036253
>>1036195
Отвяжи начальный стейт от компонента, импортируя его из внешнего файла как объект. Мокать будет проще некуда.
Аноним 02/08/17 Срд 21:55:01  1036330
>>1036164
У
Д
А
Л
Е
Н
К
А
на ней хоть 300000к
Аноним 02/08/17 Срд 21:56:14  1036332
>>1036214
У бабушки все забирай и у мамки, брейся как мамка, а то бабка даже усы не бреет уже.
Аноним 02/08/17 Срд 22:03:38  1036343
15009884296401.jpg (101Кб, 1200x1186)

>>1036164
Аноним 02/08/17 Срд 23:18:48  1036423
64536f4d83ce437[...].jpg (52Кб, 359x325)
https://habrahabr.ru/post/334760/
Аноним 03/08/17 Чтв 07:34:45  1036555
>>1036423
>В чём причина популярности такого реально хренового языка как JavaScript?
Кто-нибудь пояснит почему все яваскрипт хуями кроют?
Он че блядь должен быть как кресты или че?
Аноним 03/08/17 Чтв 08:14:39  1036561
>>1036555
Лучше как D.
Аноним 03/08/17 Чтв 08:24:00  1036563
>>1036555
Старые пердуны не могут понимать коды без типизации и анальных партянковых полувековых выворотов.
А вообще тут не кодерский фактор, а человеческий.
Есть такие мудаки, которые вместо того чтоб освоить лучше покичиться какие они охуенные дохуя всё знают, а эта хуйня - вообще ее не надо учить, она хуевая и вообще для длобоебов.
Это от комплексов - пытаются залатать то, что не могут осилить язык для веб членодевок, которому меньше лет чем им.
Ну или им как всегда нужно чтоб мухобойка умела и пыль убирать и демократию наводить и чтоб хуй сосала, а если не умеет - то говно без задач.
Аноним 03/08/17 Чтв 09:12:08  1036591
Хочу сделать изоморфный проект на реакте. Какие базворды надо гуглить? react+redux+react router что еще?
Аноним 03/08/17 Чтв 09:30:17  1036598
>>1036591

Для простого проекта тебе этого хватит, ну можешь еще детальнее про JSX почитать.
Ну можешь про React Fiber почитать и сразу вкатиться.
Ну и react-bootstrap.github.io, если ничего особо хитровыебанного делать не надо можешь взять.
Если нужны будут юнит тесты - https://github.com/airbnb/enzyme
Аноним 03/08/17 Чтв 09:40:06  1036602
>>1036598
>React Fiber
Насколько оно пригодно для прода?
Аноним 03/08/17 Чтв 10:26:12  1036621
>>1036602
Хрен его знает, вот чуваки из Тинькофф заявляют, что его юзают https://youtu.be/dot5v3LUsq4 но по факту серверная часть в их банке без js в браузере не работает от слова вообще. Ну и сдаётся мне, что они пилят просто обёртку вокруг старого Java-приложения и сильно недоговаривают.
Аноним 03/08/17 Чтв 10:29:54  1036624
>>1036621
Их банк клиент от версии к версии тормозит все больше. Заебали уже. Открываешь страницу, а она еще 15 секунды просирается. Пиздец.
Аноним 03/08/17 Чтв 10:31:52  1036626
>>1036423
Всё правильно автор расписал.
Аноним 03/08/17 Чтв 10:32:09  1036627
esm vs commonjs и как это говно принятно намазывать на себя в рамках изоморфного приложения?
Аноним 03/08/17 Чтв 10:34:59  1036628
>>1036555
Низнаю, довены не умеют погромировать прост? Один раз прочитал good parts и ебашишь себе, ваще никаких проблем.

>>1036561
Товарищ Александреску, приходите, когда GC почините или выкинете на помойку уже.
Аноним 03/08/17 Чтв 10:36:16  1036629
>>1036626
Илья Михайлович, пожалуйста, пройдите из треда нахуй, Вам тут не рады.
Аноним 03/08/17 Чтв 10:37:17  1036630
>>1036591
> изоморфный проект
Что, блять, простите? гомоморфный образ группы изоморфен фактор-группе
Аноним 03/08/17 Чтв 10:37:34  1036631
Стикер (0Кб, 512x512)
>>1036629
Туши батхёрт, няша.
Аноним 03/08/17 Чтв 10:39:20  1036633
>>1036631
/порашники протекают ту туда то сюда.
Или то они мне везде мерещатся.
Аноним 03/08/17 Чтв 10:39:57  1036634
>>1036630
> Isomorphic JavaScript apps are JavaScript applications that can run both client-side and server-side.
The backend and frontend share the same code.
Ну типа хочу чтобы при первом заходи на /main нода выплевывала сразу html+js, а дальше тот же код уже в браузере все это говно шевелил.
Аноним 03/08/17 Чтв 10:43:22  1036637
>>1036630
Это устаревший хипстерский термин. Типа, была идейка, что раз раз бекенд можно писать на жиес и фронтенд на жиес, то можно написать их так, чтоб они были изоморфны друг другу.
Аноним 03/08/17 Чтв 10:44:33  1036638
>>1036637
С хуя бы он устаревший?
Аноним 03/08/17 Чтв 10:49:21  1036641
>>1036638
потому что так не далают, блядь.
Аноним 03/08/17 Чтв 10:50:37  1036643
>>1036637
> изоморфны друг другу
Горю прост с этих хипстеров, они вообще знают что такое "изоморфность"?
Аноним 03/08/17 Чтв 10:51:27  1036644
>>1036641
Кто тебе сказал-то? В чем проблема, если у тебя есть кусок реакта отрендерить его в стринг со стороны ноды или в дом в браузере?
Аноним 03/08/17 Чтв 10:54:36  1036645
>>1036638
Потому что это баззворд для привлечения внимания, ничего за собой не имеющий? И что раньше им макаки сверкали в каждом втором бложике, а сейчас всем похуй?
Вообще совершенно ебанутое определение, кстати. Вот что значит, что бекенд изоморфен фронтенду? То что они написаны на одном языке и пользуются той же инфраструктурой или что? Очевидно что у бекенд-программы и фронтед-программы будут совершенно различные свойства и структура, какая впизду изоморфность?
Аноним 03/08/17 Чтв 11:02:21  1036648
>>1036598
>ну можешь еще детальнее про JSX почитать.
Нахуя оно надо? Какую проблему оно решает?
Аноним 03/08/17 Чтв 11:09:17  1036649
>>1036645
По идее это должно было значить, что между бекенд-программой и фронтенд программой есть структурная эквивалентность и можно было бы выводить бекенд код из фронтенд кода или наоборот. Как, например, выводить программы из пруфов или наоборот. Но если в комп.сайнсе всякие изоморфизмы Карри - Ховарда ещё уместны, то для прикладного программирования всё это слишком абстрактно и размыто, нужны конкретные реализации и конкретные соответствия, а не просто некая размытая эквивалентность, которая может значить вообще хуй знает что.
Аноним 03/08/17 Чтв 11:12:30  1036651
>>1036649
>>1036645
Вы какие-то ебанутые.
В чем проблема отрендерить реакт с ноды сразу в html, чтобы поисковик мог это говно проиндексировать?
Аноним 03/08/17 Чтв 11:15:28  1036652
>>1035855 (OP)
Продумываю архитектуру хтмл тегов и цсс селекторов.
Аноним 03/08/17 Чтв 11:17:26  1036653
>>1036651
Потому что это охуенно медленно при большом количестве коннектов? Обычно рендерят на бекенде пару страниц, типа гостевой и ещё кое-что, то что до логина? А так, отредерить реакт можно на чём угодно, у чего есть интеграция с V8, хоть на похапе. И главный вопрос, причём тут изоморфность нахуй?
Аноним 03/08/17 Чтв 11:21:22  1036654
>>1036653
Ну ты выдал. Пол интернета работает на пхп, который именно так и делает. С хуя бы это медленно?
isomorphic тут при том, что в мирке жс говно которое работает и в браузере и в ноде так называют.
Аноним 03/08/17 Чтв 11:22:43  1036655
>>1036653
http://2ality.com/2015/08/isomorphic-javascript.html
Аноним 03/08/17 Чтв 11:24:04  1036656
>>1036654
> Пол интернета работает на пхп, который именно так и делает. С хуя бы это медленно?
Логика уровня "полстраны голосует за путина, с хуя ли бы это плохо".
Аноним 03/08/17 Чтв 11:25:25  1036657
>>1036656
Может ты еще в демократию веришь?
Аноним 03/08/17 Чтв 11:28:35  1036658
Мне тоже кажется, что грузить сразу весь бэкенд сайта, а потом переключать его на клиенте - это пиздец, как медленно и костыльно.
Аноним 03/08/17 Чтв 11:29:11  1036659
>>1036657
Блять, хуевый пример дал, щас сюда пол/по протечёт.
Аноним 03/08/17 Чтв 11:31:33  1036660
>>1036651
> поисковик мог это говно проиндексировать
Гугол, например, уже давно пытается жс исполнять. Пускай не расслабляется.
Аноним 03/08/17 Чтв 11:56:56  1036672
Котаны, пишу погромистский бложек на гитхаб ио, хочу заюзать http://codemirror.net/ чтобы посетитель уютного мог поиграться с примером кода и исполнить его. Все на жс, естественно. Как лучше сделать так, чтобы он случайно не распидорасил мне остальные примеры на странице и код страницы? Пока придумал только eval("'use strict'; function() {" + код пидораса из редактора + "}();")
Аноним 03/08/17 Чтв 12:14:40  1036683
Какой брать фреймворк для бэкэнда? Надо сделать обычный крудошлеп, запрос принял, в базу положил и т.д.
Аноним 03/08/17 Чтв 12:26:32  1036691
>>1036672
eval of strict mode code does not introduce new variables into the surrounding scope

А, ну и похуй, всё для людей сделали.
Аноним 03/08/17 Чтв 12:33:19  1036694
>>1036656
Весь этот html код сейчас за всю сессию юзера обычно весит как одна-две картинки на том же сайте, поэтому, передаёшь ты отрендеренный html или json для шаблонизации в браузере -- выигрыш в скорости иллюзорен, а вот сложность и надёжность во втором случае страдают
Аноним 03/08/17 Чтв 12:37:30  1036696
>>1036694
Норкоман, ты вообще в курсе, какие виды нагрузки бывают?
Аноним 03/08/17 Чтв 12:44:00  1036697
>>1036696
Конечно. Я про общий случай работы с теми же текстовыми шаблонами, это ИМХО несущественно даже для средних и больших проектов.

Если есть возможность перенести на клиент какой-то более сложный функционал на клиента -- ок, не спорю
Аноним 03/08/17 Чтв 12:50:17  1036699
>>1036683
ноде експресс
Аноним 03/08/17 Чтв 12:51:45  1036701
ВСЕ ФРОНТЫ БРОСАЕМ РАБОТУ И ПИНАЕМ НОДЕРОВ ИЗОМОРФНО ВСЕ ЕБАШИТЬ.
ща всех в офисе переиграю
Аноним 03/08/17 Чтв 13:01:36  1036705
>>1036697
В 2017 общий случай это когда роутер у тебя на азике, а на цпу говноязык с гц, который прост охуевает от ТЕКСТОВЫХ ШАБЛОНОВ. Подумой, во что всё обычно упирается в 2017, а?
Аноним 03/08/17 Чтв 13:31:59  1036718
Начал изучать TypeScript и появился вопрос - можно ли готовый проект постепенно переводить на тайпскрипт (т.е. когда часть файлов на обычном жс, а часть на тс) или нужно сразу целиком переделать проект на тайпскрипт, чтобы можно было его собрать?
Аноним 03/08/17 Чтв 13:38:15  1036723
>>1036705
Как и всегда: в базу и эзернет.
Что не отменяет того факта, что это охуенный тупизм выполнять на сервере работу, которую можно переложить в браузер юзера (современный дефолтный копуктер вполне жЫрный чтоб этого особо не замечать + и все привыкли уже). Единственный аргумент - это индексация поисковиками и обычно, если это существенно, рендерят на беке только часть. В некоторых случаях это, конечно, неприемлемо, если у тебя там интернет-магаз, к примеру, но если у тебя приложение, где без авторизации делать нахуй - то и рендерить на сервере кроме логин пейджа нечего.
Аноним 03/08/17 Чтв 13:40:06  1036724
>>1036718
Переводил проект с жс на тс. С ключенным any и прочим все равно денек-два, в зависимости от размера проекта, поебешься пока оно сконпилится.
Аноним 03/08/17 Чтв 14:15:41  1036750
>>1036718
Ну смотря сколько ты сам будешь код переписывать, а собрать - за тебя сборщик соберет и работать будет.
Аноним 03/08/17 Чтв 14:33:52  1036764
1. Создал файлик test.js
2. Добавил const internalUtil = require('internal/util');
3. Выполнил node test.js
4. Получил Cannot find module 'internal/util'
Вопрос: почему?
Аноним 03/08/17 Чтв 14:35:26  1036767
>>1036764
'./internal/util'
Аноним 03/08/17 Чтв 14:58:48  1036781
Использовать тернарный оператор в качестве if - разве это нормально?
На codewars стабильно вижу return через ? :
Аноним 03/08/17 Чтв 14:59:30  1036782
>>1036781
А для чего его еще использовать?
Аноним 03/08/17 Чтв 15:00:13  1036783
>>1035866
Ну так всё-таки, типы значений, принимаемых от пользователя, TypeScript сам, значит, проверять не будет?
Аноним 03/08/17 Чтв 15:00:49  1036785
>>1036767
Нет такого пути\модуля в моем локальном каталоге, это builе-in модуль смого nodejs - github.com/nodejs/node/tree/master/lib/internal
Аноним 03/08/17 Чтв 15:01:23  1036787
>>1036783
Пользователь тебе всегда дает String. А дальше ты уже его кастишь/парсишь как тебе надо.
Аноним 03/08/17 Чтв 15:21:14  1036798
>>1036785
Пидорсы, так и написали что не дают эти модули исплоьзовать.
Аноним 03/08/17 Чтв 15:26:13  1036803
>>1036782
для присвоения переменных
в половине книжек пишут, что иное использование - для говнокодеров
Аноним 03/08/17 Чтв 15:28:40  1036806
>>1036803
И чем по твоему return принципиально отличается от присвоения переменной в данном случае?
Считай что ты "присваиваешь" в результат выполнения функции.
Аноним 03/08/17 Чтв 15:52:52  1036828
>>1036806
а ведь правда, слушай, благодарю.
var test = function() {return (a > b) ? "s1" : "s2"}
если сократить, то выйдет
var test = (a > b) ? "s1" : "s2";

пиздец, щас бы на двощах саморазвиваться...
Аноним 03/08/17 Чтв 17:35:41  1037000
> const promiseMiddleware = store => next => action => {
За що вы так с нами.
Аноним 03/08/17 Чтв 18:03:30  1037019
>>1037000
НА САХАР НАДО ДРОЧИТЬ, А НЕ РУГАТЬ.
Аноним 03/08/17 Чтв 18:05:32  1037022
>>1037019
А кто его ругает?
Жду когда можно будет писать
> do
> shit <- liftAff $ random 0 13
> pure $ tasty shit
Аноним 03/08/17 Чтв 18:09:00  1037027
Кто мне блять пояснит за jsx
Нахуя оно нужно?
Аноним 03/08/17 Чтв 18:22:46  1037034
>>1037000
Каррирование наркомана?
Аноним 03/08/17 Чтв 18:23:31  1037035
>>1037027
Проcто так. Кому-то так нравится больше.
Ты можешь то же самое на чистом жс писать.
Аноним 03/08/17 Чтв 18:24:31  1037038
>>1037035
Почти все реактопидоры пользуются им. Неужели нет какой-то охуенной причины?
Аноним 03/08/17 Чтв 18:28:50  1037041
>>1037038
по-моему, половина вещей в JS сейчас проистекают от моды и рекламного шума
Аноним 03/08/17 Чтв 18:29:08  1037042
>>1037038
Ты совсем дегроид что ли? Возьми да попробуй, не понравится - хуярь на ванильке.
Аноним 03/08/17 Чтв 18:32:39  1037044
>>1037042
> Это решает проблему X в условиях Y, при этом имея недостаток Z. Если у тебя есть проблема X и ты в условиях Y, а Z не проблема — попробуй.
> Ждать от дегроида адекватного ответа
Аноним 03/08/17 Чтв 18:33:58  1037046
>>1037038
Потому что это декларативно и охуенно. Пишешь <PizdaZalupa onClick={this.hui} /> и у тебя рендерится компонент Пиздазалупа, по клику на который срабатывает метод хуй. В чем проблема то?
Аноним 03/08/17 Чтв 18:35:49  1037047
>>1037038
Какая тут может быть причина? Ты ведь понимаешь, что jsx преобразовывается в обычный js?

<div className="sidebar">
в
React.createElement(
'div',
{className: 'sidebar'},
null
)
Аноним 03/08/17 Чтв 18:36:39  1037049
>>1037046
> PizdaZalupa({onclick: this.huy})
Нахуя еще один нескучный синтаксис? Чем он лучше обычного жса, что ради него нужно обмазываться бебелем и прочим говном?
Аноним 03/08/17 Чтв 18:37:16  1037050
>>1036253
Окей, а если мне надо ререндерить на изменении этих начальных стейтов?
Сейчас это делает setState. А если это у меня будут не стейты компонента, а аттрибуты объекта, как мне ререндерить.
Завести какой-то фейковый Стейт для реренлеринга сугубо и его сетать после аплейта аттрибутов? Лол
Аноним 03/08/17 Чтв 18:37:19  1037051
>>1037049
В редакторе выглядит как HTML, вот и всё.
Аноним 03/08/17 Чтв 18:38:54  1037054
>>1037051
Блять но нахуя? Шума визуального больше: все эти </ ={}>
В 61 хроме завозят нативные модули и можно ебашить вообще без бабеля. Нет хочу говном обмазываться.
Аноним 03/08/17 Чтв 18:39:00  1037055
>>1037049
Ты тупой или толстый? Затем, что вместо одной няшной строки на "чистом жс" ты будешь писать вот такую >>1037047
залупень, только в случае со сложным компонентом это получится хуита строк на двести.
И что значит "обмазываться бабелем", одна строка в конфиге.
Аноним 03/08/17 Чтв 18:41:13  1037058
>>1037054
и что ты "наебашишь" в продакшн? Заглушку "поставьте 61й хром"?

Олсо, помню времена, когда на сайте писали:
"Сайт работает в кодировке Win-1251", были даже сайты с несколькими версиями под разные, лол
Аноним 03/08/17 Чтв 18:41:56  1037060
>>1037054
> можно ебашить
Ты хоть видел, как "ебашится" на нативных модулях? Как по мне, так даже сборка галпом удобней.
Аноним 03/08/17 Чтв 18:42:05  1037061
>>1037055
> div({className: "sidebar"}, [ span({}, "хуй") ])
Когда приложение работает нативно, хотсвап кода через хром-дебаг-протокол 10/10
>>1037058
Для прода ты один раз собираешь это говно в es3, но на этапе разработки тебе похуй.
Аноним 03/08/17 Чтв 18:43:27  1037062
>>1037061
> Когда приложение работает нативно, хотсвап кода через хром-дебаг-протокол 10/10
Бросай курить спайсы.
Аноним 03/08/17 Чтв 19:04:12  1037073
>>1035855 (OP)
ребята, кто нибудь писал на блазе?
почитал тут маленько, вроде для вката самый простой фреймворк, проще вуя и конечно реактов всяких.
Аноним 03/08/17 Чтв 19:08:14  1037076
>>1037062
Бляяяядь. Хром не умет модули патчить
https://chromium.googlesource.com/v8/v8/+/master/src/inspector/v8-debugger-agent-impl.cc#755
Аноним 03/08/17 Чтв 19:11:20  1037080
>>1037076
Поясните, где лучше всего система модулей реализована? В реакте?
Аноним 03/08/17 Чтв 19:15:40  1037082
>>1037080
Реакт это либа, для рендеринга.
Есть целый зоопарк модулей. По сути интересных есть только два: ESM, то есть нативные модули из спеки es6, которые уже работаю в 60 хроме (за флагом) и будут из коробки в 61. Второй тип это CommonJS, который используется нодой. Пока что нода нихуя не может сделать EMS. Подробней тут: https://hackernoon.com/node-js-tc-39-and-modules-a1118aecf95e
Аноним 03/08/17 Чтв 19:16:55  1037083
>>1037082
Спасиб!
Аноним 03/08/17 Чтв 19:57:05  1037109
Решаю задачу
https://www.codewars.com/kata/the-rarest-pepe/train/javascript

Мое решение под спойлером (скорее всего движок изуродует отступы, но любой бьютифаер исправит ситуацию).
function findRarestPepe(pepes) {
var rarest = pepes.filter(function(pepe, i, arr) {
return (arr.indexOf(pepe) == arr.lastIndexOf(pepe));
});
return (rarest.length == 0) ? 'No rare pepes!' : (rarest.length > 1) ? rarest.sort() : rarest.join();
}


16+- тестов из 100 ругаются, что я возвращаю им 'No rare pepes', хотя по мнению теста должно возвращаться название или массив.

В итоге сделал вывод ВСЕХ элементов ебаного входящего массива в ситуации, когда мой скрипт должен вернуть 'No rare pepes', скопировал ебучий массив в word и нашел там трех Пепе с именем, которое уникально по-мнению результата теста.

Открытых баг-репортов у задачи нет, довольно 92% юзеров, ЧЯДНТ?
Аноним 03/08/17 Чтв 21:19:32  1037178
двачзадача.png (224Кб, 1366x768)
>>1037109
Ты что-то не то написал

>return (arr.indexOf(pepe) == arr.lastIndexOf(pepe));

Это вообще что? какой смысл брать только с одним вхождением?)
Аноним 03/08/17 Чтв 21:24:54  1037181
>>1037109
сорян, там спойлер( не смотри если че. Там тип что я решил.
Аноним 03/08/17 Чтв 21:43:49  1037198
>>1037109
http://paste.org.ru/?38uzeu
Держи. Все 103 теста прошли с 1 раза. Хз в чем твоя проблема.
Аноним 03/08/17 Чтв 21:46:05  1037204
На странице 81 кнопка. Получил массив ссылок на эти кнопки через document.getElementsByTagName. Хочу для каждой из кнопки написать событие посредством цикла:

var buttons = document.getElementsByTagName('button');
for (var i = 0; i < buttons.length; i++)
{
buttons.onclick = function()
{
buttons.style.backgroundColor = 'black';
}
}

Почему это не работает? И должно ли вообще?
Аноним 03/08/17 Чтв 21:47:17  1037208
>>1037204
for (var i = 0; i < buttons.length; i++)
{
buttons.onclick = function()
{
buttons.style.backgroundColor = 'black';
}
Аноним 03/08/17 Чтв 21:47:40  1037209
>>1037204
>Получил массив
Не пизди. Ты не получил массив.
Аноним 03/08/17 Чтв 21:48:55  1037210
>>1037204
>>1037208
Ты не задумывался о том что ты не юзаешь счетчик цикла в теле?
> buttons.onclick = function() { this.stlye...
Аноним 03/08/17 Чтв 21:49:49  1037212
>>1037209
https://ideone.com/bEujRt
Если ты про . (Двач подумал что я италик хочу сделать наверное)
Аноним 03/08/17 Чтв 21:49:53  1037214
>>1037204
>массив ссылок на эти кнопки через document.getElementsByTagName
Это не массив. RTFM.
Аноним 03/08/17 Чтв 21:50:23  1037215
>>1037210
Кекус, это двощи жрут разметку?
> buttons [ i ]
Короче у тебя там походу стандартная ошибка с циклом в жс. Поменяй var на let
Аноним 03/08/17 Чтв 21:51:30  1037216
>>1037215
Заработало. А почему такая ошибка возникает?
Аноним 03/08/17 Чтв 21:51:38  1037217
>>1037212
Нет, я про то, что ты НЕ ПОЛУЧАЛ НИКАКОГО МАССИВА. Ты пытаешься работать с НЕ МАССИВОМ, думая что это у тебя массив. Иди читай документацию.
Аноним 03/08/17 Чтв 21:52:59  1037222
>>1037198
Вот еще сортировку лишнюю выпилил. Какая же ебучая стандартная либа у жс.
http://paste.org.ru/?yt46df
Аноним 03/08/17 Чтв 21:53:24  1037224
>>1037217
Хорошо, не помешало бы.
Аноним 03/08/17 Чтв 22:01:46  1037232
Screen Shot 201[...].png (62Кб, 653x498)
>>1037222
Что-то ты излишне усложняешь все.
Аноним 03/08/17 Чтв 22:01:50  1037233
>>1037216
Не слушай ебанутого про массивы. Это тут вообще не при чем.
Проблема в том var поднимается наверх функции. Например:
function() {
var arr = [1,2,3];
for (var i = 0; i < 3; i++) {
...
}
}
На самом деле надо читать как

function() {
var arr = [1,2,3];
var i = undefined
for (i = 0; i < 3; i++) {
...
}
}
Поэтому когда ты в теле цикла присваиваешь в
buttons = function() { buttons ... }
то значение i не разные на каждую созданную функцию, а одно глобальное.
Таким образом для всех созданных обработчиков значение i после выхода из цикла будет = 3
Обычно это решается либо через IIF, либо заменой var на let, либо просто не пользуются элементом в замыкании.
Аноним 03/08/17 Чтв 22:08:57  1037244
[JoJo] BITES ZA[...].webm (2553Кб, 1280x720, 00:00:21)
Какой язык для бека учить?
Чтобы можно было работу найти и это было не умирающее говно вроде PHP.
Что за Ruby скажите?
Аноним 03/08/17 Чтв 22:13:20  1037252
>>1037244
дауны безуспешно пытаются хоронить PHP столько же, сколько он отжирает свои 80+ процентов всего веба
Аноним 03/08/17 Чтв 22:24:16  1037269
>>1037244
>Что за Ruby скажите?
Умершее говно
Учи джс, язык будущего на всех платформах
Аноним 03/08/17 Чтв 22:25:40  1037272
>>1037233
>то значение i не разные на каждую созданную функцию, а одно глобальное

А как то, что эта переменная поднимается вверх функции (в моем случае она будет в Global Scope) мешает выполнится моей программе? https://ideone.com/Go22lv - это весь код который у меня есть. Не более. Let же в свою очередь просто заставляет переменную жить в пределах цикла, верно? Как то, что она живет вне цикла, мешает мне задать кнопкам евенты?
Аноним 03/08/17 Чтв 22:28:06  1037275
>>1037272
Добавь в обработчик console.log(i) и поймешь.
Аноним 03/08/17 Чтв 22:38:11  1037284
>>1037244
Для бека есть node.js.
Аноним 03/08/17 Чтв 22:41:02  1037288
Flip the bird.webm (1104Кб, 1280x720, 00:00:07)
>>1037269>>1037284
>Чтобы можно было работу найти
Что-то я сомневаюсь что ноду используют для бека.
Аноним 03/08/17 Чтв 22:42:55  1037292
Я так понел, в ближайшее время половина всего веба будет на реакте, вторая - на ангуляре. Всё это будет работать на ноде, поставленной на нджинкс.

Красота же, верно?
Аноним 03/08/17 Чтв 22:44:45  1037295
>>1037272
Это известный подводный камень в замыканиях, не только в жс.
Когда ты идешь по циклу, то у тебя разные функции замыкают одну и ту же переменную i, которая меняется по ходу цикла, то есть у тебя под конец десяток функций с одинаковым i.
C let у тебя на каждой итерации создается новая переменная, поэтому каждая функция будет замыкать разные i.

https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/let#Cleaner_code_in_inner_functions
Аноним 03/08/17 Чтв 22:51:02  1037307
>>1037288
Это возможно для небольших сайтов.
Для крупных сервисов пока что может оказаться медленновато.
Аноним 03/08/17 Чтв 22:54:41  1037311
КТО НИБУДЬ РАБОТАЛ С БЛАЗЕ? СТОИТ ЛИ УЧИТЬ ЭТОТ ФРЕЙМВОРК?
Аноним 03/08/17 Чтв 22:55:33  1037313
>>1037292
Не совсем. "ближайшее время" наступит, когда js-школота наберётся лет 15 опыта и перейдут на другие языки, js тем временем допилят до вменяемого состояния, его станут поддерживать большинство хостеров и т.д.

А пока -- мечтай и жди
Аноним 03/08/17 Чтв 22:58:09  1037317
>>1037295
Спасибо анон!
Аноним 03/08/17 Чтв 22:59:33  1037318
>>1036555
В язык намешана куча говна отовсюду, но при этом есть дохуя фич, которые в эту кучу не включили. Недавно начал писать небольшое приложение на чистом JS, и что сразу бросается в глаза:
1) Нет named parameters(на самом деле есть, но реализация через костыль и текущей спецификацией не поддерживается, нужно перегонять)
2) require в язык не завезли, потому что говно для браузеров, приходится пользоваться нодокостылем, с которым нужно ебаться ради простейших вещей: https://gist.github.com/branneman/8048520
3) Язык динамический, но из-за пункта 2 нет удобного DI, только ебля с контейнерами или пляски вокруг require костыля.
4) Mutable objects - главный пиздец, приходится постоянно следить, чтобы функция, которая получает на вход параметры, ничего с этими параметрами не натворила, так как клонировать объект нормально нельзя, только через костыль, опять же. (deep clone? сосите хуй, мы такого не могем!)
5) Ну и всякие мелочи, вроде кривой реализации ООП, которой приходится пользоваться, так как функциональщину на JS писать будет только отбитый.
6) Самый главный минус - коммьюнити ебанутых макак, которые не имеют ни малейшего представления о том, как писать поддерживаемый код и имеют дохуя тупорылых практик и убеждений. Сторонняя библиотека для каждого пука, абсолютное отсутствие культуры тестирования, огромная любовь к эвентам, из-за чего код всегда превращается в кучу лапши и т.д и т.п. Костыли еще можно обуздать, привыкнуть и более-менее работать, но к коммьюнити не привыкнешь никогда. Как только начинаешь гуглить нетривиальный вопрос, то на тебя выливается ушат дерьма и антипаттернов, за которые нужно бить в ебало.

JS - это accident language, в здравом уме никто бы на нем не писал, но выбора у людей нет, к сожалению. Ждем и надеемся.
Аноним 03/08/17 Чтв 23:07:47  1037331
>>1037313
>js тем временем допилят до вменяемого состояния
Но он уже вменяемый, просто нужно понять, что это язык совершенно нового типа.
Суть JS - в его гибкости. И со временем он будет расширяться именно в эту строну.

>его станут поддерживать большинство хостеров
Уже.
Аноним 03/08/17 Чтв 23:13:21  1037339
>>1037331
так, и что же в нём нового типа?
Аноним 03/08/17 Чтв 23:41:20  1037364
>>1036633
Таблетки выпей, шизик малолетний.
Аноним 03/08/17 Чтв 23:45:14  1037369
>>1037318
програмил на говне, вкатился в жс говно и теперь тебе не нравится что он не похож на твое предыдущее говно? не парься! чувствительным нытикам в этом комунити тоже место есть, поэтому добро пожаловать пидор ебаный
Аноним 03/08/17 Чтв 23:47:12  1037374
>>1037318
> функциональщину на JS писать будет только отбитый
Ловите наркомана
Аноним 03/08/17 Чтв 23:52:55  1037383
>>1037369
Я говорю про то, что тут нет даже базового функционала, который в любой другой язык был добавлен десять лет назад. На похожесть мне похуй, суть везде одна.
>>1037374
Что это за вскукарек? Ты вообще в своей жизни трогал тру-функциональный язык или для тебя это "хуе мое функции там, рекурсия, объектов нет ебана"?
Аноним 03/08/17 Чтв 23:55:11  1037386
>>1037383
А чего ты ждал?

Выросло целое поколение школьников, которые не знают ничего, кроме кучи js-библиотек, естественно они с ужасом уходят в отрицание окружающего мира, хех
Аноним 03/08/17 Чтв 23:55:14  1037387
>>1037383
>тут нет даже базового функционала
имплементируй, мы только рады будем
Аноним 03/08/17 Чтв 23:59:09  1037389
>>1037383
> тру-функциональный язык
Функциональное программирование - про композицию функций. Но ты, петух, конечно начнешь кукарекать про иммутабельность, систему типов и прочий нахуй не нужный никому, кроме отбитых на голову хачей теоркат.

Я пишу на F# на работе.
Аноним 04/08/17 Птн 00:01:46  1037390
>>1037387
Все уже заимплементировано давно, даже такая наркомания как fantasy land. Только нахуй это никому не нужно кроме хачей-петухов, дрочащих в своем загоне. Хули им там не сидится?
Аноним 04/08/17 Птн 00:03:25  1037391
>>1037318
> deep clone? сосите хуй, мы такого не могем!
И чем тебя не устраивает lodash.deepClone, а?
Аноним 04/08/17 Птн 00:04:22  1037393
>>1037387
Может сразу свой язык имплементировать тогда уж? Чего мелочиться.
>>1037387
>про иммутабельность
>нахуй не нужный никому
>функциональное программирование
Бляяяяяяяяяяяяяяя. Ну и ты я смотрю уже прошарен. Часто спорил с функциональщиками, а они тебя обоссывали?
Аноним 04/08/17 Птн 00:11:51  1037394
>>1037393
Посоны 50 лет на лиспе писали с мутабельностью, а тут теперь внезапно они стали императивными петухами. Вот они обрадуюутся то.
Аноним 04/08/17 Птн 00:14:29  1037396
>>1037391
Тем, что это отдельная библиотека с кучей ненужного мне говна. Добавление сторонней библиотеки - это очень важное решение и в 90% случаев можно и нужно обойтись без нее, невероятный факт для JS-мирка. Эту функцию я и сам написать могу, она достаточно тривиальна. Главная проблема в том, что мне НУЖНО ее писать, потому что в языке базового функционала не присутствует. Ну а про любовь JSников к куче бесполезных библиотек я уже говорил выше.
>>1037394
Лисп никогда и не считался тру-функциональным языком.
Аноним 04/08/17 Птн 00:16:57  1037398
>>1037396
Не волнуйся, это пройдет через пару-тройку лет. Ну может через пять. Вздрочни пока, скинь злобу.
Аноним 04/08/17 Птн 00:20:37  1037400
>>1037398
По делу лучше что-нибудь напиши, чулочник хуев.
Аноним 04/08/17 Птн 00:22:41  1037401
>>1037400
По делу — ты мудак, иди нахуй. Может быть в крестах у тебя в языке дохуя функциональности без libc/stl?
Или может в хачкеле без прелюды?
Или ты кроме пхп в который напихали кучу всего больше ничего и не видел?
Или ты микрософто макака, и тебе дотнета не доложили?
Аноним 04/08/17 Птн 00:24:38  1037402
>>1037393
>Может сразу свой язык имплементировать тогда уж?
а, так ты критик языков, арбитр изящества, мастер секции комментариев. я то думал ты программист. прикольно что ты кричишь типа все макаки а сам ссышь язык запилить - кто получается макака тогда - короче впишешься прям норм в комунити
Аноним 04/08/17 Птн 00:34:11  1037411
>>1037401
Я не говорю, что библиотеки не нужны, я говорю, что сторонняя библиотека или уж тем более фреймворк - это огромная зависимость от кода хуй знает кого. Сейчас в коммьюнити многих языков об этом забыли и добавляют библиотеки для каждого пука, но особого апогея подобная практика достигла у жсеров вследствие ущербности языка. Всегда сначала нужно писать функционал и планировать архитектуру приложения, и уже только потом по мере большой надобности добавлять библиотеки и фреймворки, не наоборот.
>>1037402
>не смейте критиковать мое говно, сами возьмите и напишите лучше!!!!
Шизя, успокойся, таблетки прими.
Аноним 04/08/17 Птн 00:38:50  1037413
>>1037411
Поверь, 99% библиотек, которыми пользуются люди, стабильней чем любое твоё говно, которое ты навелосипедишь. Особого апогея она достигла в крестах, где есть stl и boost
Аноним 04/08/17 Птн 00:39:02  1037414
>>1037411
причина твоего недовольства чем-то обычно не в самом предмете а в том что твоя жизнь в жопе, хочешь что-то поменять - начни с себя
Аноним 04/08/17 Птн 00:48:21  1037419
2017-08-04-0041[...].png (39Кб, 693x206)
>>1037232
Да не говори 8(
Аноним 04/08/17 Птн 00:52:20  1037422
React и Angular используются еще для чего-то кроме SPA?
Аноним 04/08/17 Птн 00:58:56  1037433
>>1037413
>поверь
Ты мне так рассказываешь, как будто я первый год программирую. Библиотеки хороши ровно до того момента, пока твои требования совпадают с их функционалом, которой обычно либо базовый, либо так нахуеверчен, что тянет с собой 8521 опций, которые никогда не понадобятся. Шаг вправо-шаг влево - и придется писать свой велосипед, либо ДОБАВЛЯТЬ ЕЩЕ ОДНУ БИБЛИОТЕКУ, РАСШИРЯЮЩУЮ ФУНКЦИОНАЛ СТАРОЙ, БИБЛИОТЕКА САМА СЕБЯ НЕ ДОБАВИТ. Что значит "стабильней" в этом плане, я не понимаю. Если ты не можешь написать свой кусок кода для клонирования объектов и не обосраться, то как ты пишешь целое приложение со сложной логикой и не обсираешься? Примеры есть, тесты есть(должны быть), и у тебя будет полный контроль над тем, что делает твой код. В случае с библиотекой ты отдаешь кусок кода хуй знает кому и надеешься, что библиотека протестирована и не сломает весь твой фунционал после очередного обновления, из-за упущенного разработчиком edge case.
Аноним 04/08/17 Птн 01:11:31  1037452
суп
помогите горе-фроненду
в 2 словах: на старых версиях хрома\фф (48\27) не работает opacity
https://jsfiddle.net/v9rt8ufg/2/
видел сайты с похожей анимацией, работающие корректно
Аноним 04/08/17 Птн 01:55:25  1037476
Ребята, заебали нахуй))
Подскажите плз что там с БЛАЗЕ? Судя по тому шо я видел это проще реакта и вуя.
Аноним 04/08/17 Птн 03:13:29  1037494
1501739503017.jpg (26Кб, 600x576)
Анон, я тут пишу одну хуйню вместе с пхп, и абсолютно все формы сделал ажаксом, при этом новые элементы я добавляю просто append(текстэлемента), все функции объявляю в стиле js, а код внутри - с использованием jquery. Еще button onclick делаю. С одной стороны, все ясно написано и легко разбирается, но с другой кажется, что это хуйня какая-то. Что я делаю не так, кроме смешивания ванильных и jquery методов?
Аноним 04/08/17 Птн 03:16:35  1037496
>>1037494
> 2017
> jquery
Аноним 04/08/17 Птн 04:40:33  1037520
Для чего используется сравнение ==, объясните. Оно быстрее работает или что?
Я в своих скриптах всегда использую только === и !==, но ведь для чего-то же придумали дополнительную операцию нестрогого сравнения?
Аноним 04/08/17 Птн 04:42:49  1037521
>>1037496
Двачую. После появления fetch пропала последняя причина использовать jQuery:
https://habrahabr.ru/post/252941/
Можно сдавать его в музей к Cobol, Delphi, GWT и VBScript.
Аноним 04/08/17 Птн 04:59:47  1037524
>>1037521
>>1037496
Лол, использую jquery только для селекторов, toggleClass и ажакса, больше ничего и не нужно, разве что более короткое написание value. Алсо, у меня еще дизайн на бутстрапе
Аноним 04/08/17 Птн 05:00:07  1037525
>>1037520
Строка и число
Аноним 04/08/17 Птн 06:29:30  1037530
>>1037520
'100' == 100
undefined == null
[8] == 8
[8] == '8'
[8, 1] == '8,1'

Аноним 04/08/17 Птн 06:32:28  1037531
>>1037476
Это ты заебал. Очевидно же, что раз тебе до сих пор никто не ответил, значит никто с этим не работал.

Или ты считаешь, что все обязаны тыкать палочкой каждую из миллиарда библиотек и фреймворков?
Аноним 04/08/17 Птн 06:36:13  1037533
>>1037524
>для селекторов
querySelector/querySelectorAll
>toggleClass
ванильный classList.toggle
>ажакса
fetch/ да и сам xmlhttprequest2 простейшая штука, которая давно везде и с ней не надо ебаться как с первым и писать даунгрейды.
Аноним 04/08/17 Птн 09:14:50  1037570
>>1037530
Лично я щитаю, что == есть смысл использовать только там, где нужно проверить на !== undefined && !== null. В остальных случаях нихуя не понятно.
Аноним 04/08/17 Птн 09:24:02  1037575
>>1037307
Знаю пару банков у которых бек на ноде
Ну часть с сертификатами - на яве, но все остальное крутится на ноде, еще и 0.12 версии.
Народ часто переоценивает свои потребности и недооценивает возможности ноды
Аноним 04/08/17 Птн 09:29:16  1037576
>>1037339
> нового типа
нет типов
BADUMTSSS
Вообще есть но блядь шутка сука отъебитесь, СМЕЙТЕСЬ ИЛИ ЗАБАНЮ
Аноним 04/08/17 Птн 09:30:10  1037577
>>1037364
Да, это точно из по пришел, у какой злючий.
Аноним 04/08/17 Птн 09:38:37  1037580
>>1037433
>пока твои требования совпадают с их функционалом, которой обычно либо базовый, либо так нахуеверчен, что тянет с собой 8521 опций, которые никогда не понадобятся.
> что тянет с собой 8521 опций, которые никогда не понадобятся.
Ебать нихуя, у тебя на других языках библиотеки ЧИСТО ПОД ТЕБЯ всегда заточены и ты из них максимум выжимаешь?А у жс плак плак ЛЮДИ ПИХАТЬ ТО ЧТО Я НЕ ИСПОЛЬЗУЮ В БИБЛИОТЕКИ КАКОЙ КАЛ.
Ты зашел не в тот тред и не с тем настроем.
Аноним 04/08/17 Птн 09:39:16  1037581
>>1037476
ну перейди на него, только не ной что полтора работодателя и те в жопу ебут.
Аноним 04/08/17 Птн 09:48:32  1037588
>>1037520
Если у тебя все сурйозно и не должно быть конвертаций в проверках и все должно работать как ты задумал - то ===, елси всякое может быть и впринципе конвертация безопасна - то == поможет с кейсами
e.g. когда где-нибудь в ответе false заменят на [], а потом на undefined когда-нибудь в будущем то с == можно будет не париться, он сам все подгонит и код будет работать дальше.
Аноним 04/08/17 Птн 11:37:40  1037643
>>1037433
Мань, успокойся, в lodash/fp/альтернативах функциональщику нужно натурально все. Если бы ты действительно пришел из фп - ты бы это знал.

Насчет твоих ко-ко-ко это ни мейнтейнер языка кодил никачественно - так это вообще пиздец.
В 2017 половина хуйни уже на гитхабчике, даже ебаный асп.нет, нет блять я не буду им пользоваться, он в язык не встроен!
Аноним 04/08/17 Птн 11:41:37  1037646
https://tproger.ru/books/free-javascript-books-for-beginners/
http://flibs.site/r?b=267602
что по поводу этих книжек? Мне нужно большое количество примеров и паттернов.
Аноним 04/08/17 Птн 12:22:12  1037670
1501750047522.jpg (13Кб, 221x214)
>>1037533
Я не хочу переписывать половину работающего проекта, ведь у меня все равно есть jQuery от бутстрапа
Аноним 04/08/17 Птн 13:00:16  1037683
Антуасы, есть такая проблема. Надо вывести тонну картинок мелких на страницу. Если все разом отдавать все браузеры висят по 6 секунд. Как это сделать так что бы все постепенно прогружаллсь не блокируя интерфейс.
Аноним 04/08/17 Птн 13:43:41  1037708
>>1037683
Сделать из тонны мелких одну большую, не?
Аноним 04/08/17 Птн 13:58:28  1037716
>>1037109
Потому что оно так и задумывалось.
Простой пример:
У тебя есть следующий список:
["Рейр Пепе", "Рейр Пепе"].
Так вот. Этот пепе - достаточно рейр. Потому что его не более 5.
А в случае со списком
["Рейр Пепе", "Рейр Пепе", "Юник Пепе"] оно должно вернуть только Юник Пепе, потому что он более редкий, чем Рейр Пепе (юника всего один, а рейров - два).
Аноним 04/08/17 Птн 14:00:25  1037718
>>1037683
> Надо вывести тонну картинок мелких на страницу. Если все разом отдавать все браузеры висят по 6 секунд.
Задай каждой картинке ширину и высоту. И тогда они будут грузиться по мере, гхм, загрузки.
Аноним 04/08/17 Птн 14:12:53  1037731
>>1037708
С этим проблема, достаются из базы php по одной.
Аноним 04/08/17 Птн 15:22:13  1037793
>>1036591
почти, только react router - ебаный кал, и ты заебешься когда захочешь сделать что-то по своему в плане архитектуры, и придется костылять в обход, потому что у разрабов роутера было другое представление о жизниони пидоры. с редуксом вообще работает как говно - особенно 4я версия - отдельный стор для роутера? я в рот ебал. а на гитхабе тебя пошлют нахуй, потому что они зарабатывают бабки на консалтинге и проект нацелен на выкачивание бабок из лохов, а не на юзабельность. вобщем лучше свой сам напиши.
Аноним 04/08/17 Птн 16:53:53  1037889
>>1037793
Поясни что с ним не так? Судя по докам/примерам все довольно просто.
Аноним 04/08/17 Птн 17:17:05  1037908
>>1037889
ну ты поюзай и поймешь. для обычных дом.страничек типа home-contacts норм решение конечно, но если у тебя своя архитектура а не архитектура так как ее задумали авторы роутера - шаг влево шаг вправо - и ты уже накостылял кучу какого-то говна, которого и вообще не было без сраной либы этой. для прикола можешь также посмотреть какая в доках редукса версия роутера(2?) и какая текущая(4). каждую версию они перемакакивают всю либу и ты заучиваешь ее заново, если хочешь новую версию юзать. этот проект не must как редукс, а так подрочить
Аноним 04/08/17 Птн 17:26:52  1037915
>>1037683
На каждую имагу повесь хендлер onload события. По результатам загрузки каждого изображения (или, допустим, n изображений) отдавай пользователю ещё пачку.
Аноним 04/08/17 Птн 17:29:11  1037917
>>1037915
> отдавай пользователю ещё пачку
Или дергай из массива, конечно же.
Аноним 04/08/17 Птн 17:40:40  1037924
>>1037908
Сможешь привезти пример, где роутер создавал больше проблем, чем решал?
Аноним 04/08/17 Птн 17:45:32  1037928
>>1035855 (OP)
Спасибо что обновляете пасту, люблю вас.
Аноним 04/08/17 Птн 17:54:30  1037934
>>1037924
могу тебе даже доклад с подробным анализом написать и иллюстрации горящего пердака нарисовать к нему в стиле material, мой рейт - 90 баксов в час - где-то за неделю справлюсь. а так бугурты можешь почитать тут https://news.ycombinator.com/item?id=12511419
Аноним 04/08/17 Птн 17:54:30  1037935
>>1035855 (OP)
> главному языку будущего - JavaScript
1. Когда в главный язык будущего завезут ключевые слова class, interface, extends, implements, protected, public, private, final, static?
2. Когда в главный язык будущего завезут разницу между int и float/double (даже в PHP это разные типы) в коробке (в не в Web Assembly)?
3. Когда в браузеры завезут Тайпскрипт из коробки?
Аноним 04/08/17 Птн 17:56:03  1037937
>>1037935
Микрософтоблять порвалась. Несите следущую.
Аноним 04/08/17 Птн 17:58:22  1037939
>>1037935
> ООП
> 2017
Аноним 04/08/17 Птн 18:03:27  1037947
Стикер (0Кб, 512x512)
>>1037937
> class, interface
> int, float, double
> TypeScript
> Микрософтоблять
Аноним 04/08/17 Птн 18:04:40  1037949
>>1037917
Spasibo, я думаю массив хороший вариант.
Аноним 04/08/17 Птн 18:10:28  1037952
Реквестирую самый годный туториал/пример по реакт-редуксу.
Аноним 04/08/17 Птн 18:38:35  1037975
Поясните за стили в реакте. Была какая-то новомодная тенденция все пихать в инлайн стили. Как щас модней всего?
Аноним 04/08/17 Птн 19:24:33  1038015
>>1037525
>>1037530
>>1037570
Ничего не понял. Т.е. кроме редкой конвертации типа '100' == 100 оно больше и не нужно? Бред же, для этого есть parseInt toString. Но даже в TypeScript сохранили операцию нестрогого (не)равенства, значит, она широко используется?
Аноним 04/08/17 Птн 19:27:52  1038020
>>1037935
>3. Когда в браузеры завезут Тайпскрипт из коробки?
В Edge могли бы и добавить, петуханы. Никому нахуй ненужный ублюдочный VBScript во всех IE поддерживался, а этот передовой язык почему-то нет.
Аноним 04/08/17 Птн 19:32:35  1038025
>>1038015
ОБРАТНАЯ СОВМЕСТИМОСТЬ
Б
Р
А
Т
Н
А
Я

С
О
В
М
Е
С
Т
И
М
О
С
Т
Ь
Аноним 04/08/17 Птн 19:43:27  1038029
>>1037952
https://egghead.io/courses/getting-started-with-redux
Аноним 04/08/17 Птн 19:44:12  1038030
>>1037975
держать их в цссе
Аноним 04/08/17 Птн 20:08:22  1038044
>>1038025
В первых версиях JS не было === штоле?
Аноним 04/08/17 Птн 20:42:20  1038062
https://ru.wikipedia.org/wiki/JavaScript
>Первоначально язык назывался Mocha
Хороший язык мочой не обзовут.
Аноним 04/08/17 Птн 22:02:41  1038113
>>1037575
...ну то есть весь сертифицированный банковский функционал на jave, а вокруг дешёвые прогеры яваскрипт рисуют кнопки на обёртке из годы

пофиксил
Аноним 04/08/17 Птн 22:05:02  1038115
>>1038113
> банковский функционал на jave
Я не знаю каким отбитым надо быть, чтобы реализовывать критическую логику на императивной параше.
Аноним 04/08/17 Птн 22:07:54  1038118
>>1037521
Зачем отказываться от удобной и быстрой в текущей ветке jQuery? Перед шкальниками выёбываться? Так они и так этим заняты дни на пролёт,пока у нормальных людей нет на это времени.
Аноним 04/08/17 Птн 22:17:55  1038126
>>1038115
> Пишет в треде о скриптовом языке, который подобострастно назвали в честь Java (а-ля Абибас)
> Выёбывается
Пфф
Аноним 04/08/17 Птн 22:39:59  1038136
>>1038015
Нет, самый распространненый юхкейс, это обновременная проверка на null и undefined.
Аноним 04/08/17 Птн 22:43:07  1038138
>>1038015
>Бред же,
Если ты не понимаешь, зачем нужно приведение типа, и уповаешь на каноничную НЕОБХОДИМУЮ ЯВНОСТЬ. То почему ты до сих пор не пишешь на асме, и не вызываешь функции, путем складывания аргументов на стек, и передачей управления по адресу, а используешь такую НЕЯВНУЮ func() в своем коде?
Аноним 05/08/17 Суб 01:06:07  1038229
>>1037975
модно styled components, но синтакс сомнительный там и редакторы мало поддерживают. еще styled-jss ничего, но там на уровне беты. а так - микс инлайн стилей и css-modules
>>1037952
начни с обычного реакта и пили пока не почувствуешь боль, когда нужно шарить и влиять на стейт из разных мест. потом можно уже и редукс
Аноним 05/08/17 Суб 08:10:12  1038314
>>1038229
> начни с обычного реакта и пили пока не почувствуешь боль, когда нужно шарить и влиять на стейт из разных мест. потом можно уже и редукс
Пробрасываю стейт родительским компонентам через контекст, далее dumb компонентам - через пропсы. Все штатными реактовскими средствами.
Всё-таки потребность в редуксе должна возникать не из-за желания изменять состояние приложения из различных мест...
Аноним 05/08/17 Суб 09:34:13  1038325
>>1038138
Динамический петух закукарекал заместо Авроры. {} - ++[[++[]]] это же так понятно, очевидно, полезно.
Аноним 05/08/17 Суб 09:37:01  1038326
>>1038325
А тебе зачем писать такие конструкции, демагог мамкин? Ты ебанутый?

Аноним 05/08/17 Суб 09:46:33  1038329
>>1038326
Затем, что складывать объекты с числами и получать НаН - это, блять, ненормально, не должно быть такого в языке. Должны быть строгие типы, чтобы было понятно, с чем вообще дело-то имеем, а не "сложи то, не знаю что, с тем, не знаю чем, получи вообще хуй пойми что"
Аноним 05/08/17 Суб 09:54:54  1038334
>>1038329
Ты посмотри на это с другой стороны.
Разве это не открывает широкие возможности по написанию обфускаторов, которые потом можно впаривать по $59.99 скрипткиддисам?
Аноним 05/08/17 Суб 10:06:22  1038337
>>1038329
>не должно быть такого
>должны быть строгие
>чтобы было понятно
Мне тебя жаль.
Аноним 05/08/17 Суб 10:09:08  1038339
>>1038334
Для маркетолуха, может, что-то там чего-то и открывает. Для меня лично это означает ровно две вещи:

1. Мне нужно везде писать === вместо ==, а если я пишу ==, то это либо ошибка, либо обдуманное и сознательное решение => нужно писать коммент.
2. Проект среднего размера и более превращается в сраное говно, ведь ни одна сигнатура не является самодокументируемой, ни один класс не является самодокументируемым, везде нужно постоянно либо помнить, что именно нужно передавать вот в конкретно эту функцию, либо опять же писать хуеву гору комментов. В реакте есть вроде проптайпсы, но они не слишком-то облегчают положение. Скорее даже наоборот, добавляют только лишнего гемора, т.к. нужно постоянно поддерживать их в актуальном состоянии.
Аноним 05/08/17 Суб 10:11:17  1038341
>>1038337
>true + false - [] + {} - NaN, рррряяяяяя
Аноним 05/08/17 Суб 10:14:02  1038343
>>1038339
Что, написание лишнего символа "=" для строго сравнения сократит продолжительность твоей жизни? Звучит как жалкое оправдание, рилли.

Самодокументируемые функции - миф.

Проптайпсы в реакте нужны для тестирования.
Аноним 05/08/17 Суб 10:14:25  1038344
>>1038341
проиграл
Аноним 05/08/17 Суб 10:20:48  1038347
>>1038343
>Что, написание лишнего символа "=" для строго сравнения сократит продолжительность твоей жизни?
Жопой читаем? Написал же русским по серому - везде, где в коде будет все-таки использоваться == вместо ===, придется приписывать пояснение, почему в данном случае сравнение с приведением типов не вызовет кузькину мать.
>Самодокументируемые функции - миф.
Самодокументируемая функция - функция, контракт которой ясен из нее самой. Так что да, в жсе они, конечно, миф, раз сигнатура-то, по сути, никакой информации не несет, не то что о типах, а даже о количестве аргументов.
Аноним 05/08/17 Суб 12:41:20  1038398
>>1037318
подписываюсь под каждым словом про комьюнити, да и в целом всё так и есть
js комьюнити - это как раз и есть канализация с пика, только еще булькающая
каждый пузырёк - новая либа или язык поверх js
Аноним 05/08/17 Суб 13:26:44  1038425
Установил babel-cli
в скриптах пишу "start": "babel-node ./server.js"
там сервак на экспрессе с es6
так вот первый раз запускается нормально, когда убиваю процесс в git bash, сервер остается висеть прослушиваемым пока не перезагружу комп
повторный npm run start выдает ошибка т.к. сервак уже висит
вот чо за хуйня, посмотрел у всех все нормально, погуглил ничего не нашел
Аноним 05/08/17 Суб 13:30:32  1038426
>>1038314
контекст сломают рано или поздно поэтому смысл его использовать. и пробрасывать пропсы через неск уровней и уродливый код который из этого следует мне не оч
Аноним 05/08/17 Суб 13:35:32  1038430
>>1038425
node -r babel-register ./server.js
Аноним 05/08/17 Суб 13:43:13  1038441
>>1038430
>node -r babel-register ./server.js
все равно такая же хуйня
заметил что когда в консоли прямо пишу "node ./server.js" все нормально работает, т.е. убиваю процесс и сервер падает
а когда эту же команду пишу через npm run start в скрипте "start": "node ./server.js", появляется такая вот хуйн
Аноним 05/08/17 Суб 14:37:30  1038486
>>1038426
> контекст сломают рано или поздно
...и полетят ВСЕ сторонние стейт менеджеры. Да, пейсбук предупреждает об этом явно, но вероятность брейкинг чейнджес откровенно мала.
По поводу красоты кода - это уже отдельная тема. В моем прожекте это нисколько не ухудшило читаемость, потому что я придерживаюсь определенных правил.
В корневом компоненте описываю начальный стейт и импортирую экшоны, джаст лайк ин редакс, все это дело аккуратно засосываю в контекст.
Далее, в компонентах уровнем ниже (эти компоненты являются корневыми по роутам) импортируется набор экшонов и стейт из контекста. А уже в каждый дочерний компонент из корневого передается два пропса - actions и store. Никакой путаницы, никаких инжектов стейта из контекста в компонентах на нижнем уровне.
Все работает без редакса, потому как для моих задач сторонний стейт менеджер это оверкилл.
Аноним 05/08/17 Суб 16:15:00  1038536
>>1037952
по реакту, на самом деле, лучше и проще официальной документации ты ничего не найдешь.
По редаксу можно видосы с лерн код или еще что-то на примере рабочего приложения. Redux/MobX и другие имплементации общего стораджа довольно полезные вещи (сам сейчас на реакте и редакс ппц как упрощает жизнь и делает код и взаимодействие компонентов понятнее)
Аноним 05/08/17 Суб 18:34:21  1038624
Ставлю на WebStorm тему Sublime, а она выглядит совсем иначе чем на скринах. Чё за хуйня? Хочу всё также как на самом Sublime Text 3.
Аноним 05/08/17 Суб 18:52:15  1038645
>>1038441
>npm run start
попробуй yarn
Аноним 05/08/17 Суб 18:57:23  1038648
>>1038486
понятно
Аноним 05/08/17 Суб 19:58:45  1038687
> Обеспечено inline-развёртывание и оптимизация операций Array.prototype.forEach;
Вай-вай. Заживем.
Как выучить джаваскрипт? Аноним 06/08/17 Вск 05:17:55  1038879
veselye-devushk[...].jpg (40Кб, 537x600)
Сап, посоны. Есть три стула:
1. Учить джаваскрипт по спираченным с торрента интенсивам htmlacademy.
Из плюсов: бесплатно, можно проходить не торопясь, с перерывами.
Из минусов: вне работы мой организм отказывается что-либо изучать новое, тяжело себя мотивировать смотреть видосы и делать задачи. Еще и автопроверки нет, как на джавараше.
2. Пройти тот же интенсив, но платно на htmlacademy.
Плюсы: возможно, таки узнаю много нового, но это не точно.
Минусы: бабло
3. Пройти платный курс на learn.javascript.ru
Плюсы и минусы те же.
Ну и возможно четвертый вариант, который предложит мне анон.

Сам уже работаю веб-программистом, но чувствую, что есть пробелы, ибо учил все на ходу, по мере необходимости.
Аноним 06/08/17 Вск 08:30:13  1038900
>>1038879
Что-то у тебя все стулья с хуями. Накачай себе разных книг и читай в свободное время. Гугли по работе все места, которые не понимаешь, эффект будет заметнее чем от курсов.
Аноним 06/08/17 Вск 09:24:05  1038909
>>1038879
>вне работы мой организм отказывается что-либо изучать новое, тяжело себя мотивировать смотреть видосы и делать задачи
Ну так правильно, потому что видосы и задачи - хуйня без задач (вот это я скаламбурил). Сразу бери и хуярь что-нибудь полезное и серьезное, по ходу дела разберешься во всем, и гораздо быстрее и лучше, чем если будешь сидеть дрочить себе полгода подзалупными задачками.
Аноним 06/08/17 Вск 10:28:41  1038918
>>1038879
Только книги, только хардкор.
И никаких задач. Только маняпроекты.
Аноним 06/08/17 Вск 10:35:41  1038919
Как на js будет выглядеть такая функция? Вызывается функция в которую вписываем вопрос. Вопрос задается до тех пор пока не будет ответа 'y' или 'n'. Ну и потом этот ответ возвращается и выводится.

def ask_yes_no(question):
____response = None
____while response not in ("y", "n"):
________response = input(question).lower()
____return response


answer = ask_yes_no("\nPlease enter 'y' or 'n': ")
print("Thanks for entering:", answer)
Аноним 06/08/17 Вск 10:51:21  1038921
>>1038919
https://jsbin.com/cuxasujiqo/edit?html,js,output
Аноним 06/08/17 Вск 11:21:44  1038928
>>1038921
kakoije ebanytiy yazik))))")))
Аноним 06/08/17 Вск 11:25:42  1038929
>>1038928
Тебе никто не мешает написать мутабельный цикл как в пиздоне. Просто это ни модна.
Аноним 06/08/17 Вск 11:27:44  1038931
Сап, ребят.
Я или поехал, или что.
С каких пор нельзя сделать Object.setPrototypeOf(Object.prototype, )??

Так всегда было, или это новые спеки? У меня от чего-то четкая уверенность (или ложные воспоминания), что раньше можно было удленять дефолтную цепочку.
Аноним 06/08/17 Вск 11:33:57  1038937
>>1038879
Парашекурсы интенсивы, блять, этож надо было такую хуйню придумать, просто пиздец - хуйня и не нужны. Применяя язык в манязадачах со свистоперделками ты забудешь всё нахуй через неделю.
Аноним 06/08/17 Вск 11:49:41  1038943
>>1038937
Просто тебе мамка не дала денег на эти шикарные интенсивы.
Аноним 06/08/17 Вск 11:55:47  1038945
>>1038919
function ask_yes_no(question) {
____let response = null;
____while (!['y','n'].includes(response))
________response = prompt(question).toLowerCase();
____return response;
}

let answer = ask_yes_no("Please enter 'y' or 'n':");
alert("Thanks for entering: " + answer);
Аноним 06/08/17 Вск 12:06:12  1038955
>>1038929
Там есть предел рекурсии или она будет ебашить пока не сожрет всю память? Предполагаем, что tail call elimitation нет.

Аноним 06/08/17 Вск 12:07:08  1038956
>>1038943
Я лучше куплю шикарный интенсив моему члену на интимсити.
Аноним 06/08/17 Вск 12:08:34  1038958
>>1038955
Если TCO нет, то треснет, очевидно. В хроме оптимизация вроде пока за флагом.
Аноним 06/08/17 Вск 12:16:46  1038959
>>1038958
Я думаю оно ебнется на глубине где-т тысяч 30 лье под водой, поэтому похуй.
Аноним 06/08/17 Вск 12:28:30  1038963
>>1038879
> Сап, посоны. Есть три стула:
> 1. Учить джаваскрипт по спираченным с торрента интенсивам htmlacademy.
> Из плюсов: бесплатно, можно проходить не торопясь, с перерывами.
> Из минусов: вне работы мой организм отказывается что-либо изучать новое, тяжело себя мотивировать смотреть видосы и делать задачи. Еще и автопроверки нет, как на джавараше.
> 2. Пройти тот же интенсив, но платно на htmlacademy.
> Плюсы: возможно, таки узнаю много нового, но это не точно.
> Минусы: бабло
> 3. Пройти платный курс на learn.javascript.ru
> Плюсы и минусы те же.
> Ну и возможно четвертый вариант, который предложит мне анон.
> Сам уже работаю веб-программистом, но чувствую, что есть пробелы, ибо учил все на ходу, по мере необходимости.
Ща бы купить видосов на 100 часов где пересказывают синтаксис.
Аноним 06/08/17 Вск 12:33:16  1038965
>>1038963
В интенсивах фишка в том, что наставники попу подтирают
Аноним 06/08/17 Вск 12:36:14  1038966
>>1038965
На hexlet интереснее: можно купить время ментора, который поможет закончить петпроэкт
Аноним 06/08/17 Вск 12:40:09  1038968
Могу за пивас давать пизды и объяснять непонятную хуйню.
Аноним 06/08/17 Вск 12:41:49  1038969
>>1038968
>Могу за пивас давать пизды
А она у тебя няшная?
Аноним 06/08/17 Вск 12:54:41  1038972
>>1038965
> В интенсивах фишка в том, что наставники попу подтирают
Ещё 10 часов рассказов о синтаксисе?
Аноним 06/08/17 Вск 13:01:52  1038975
>>1038972
Да. Если ты за 100 часов не понял.

В детстве родители нанимали репетитора по английскому. Молодую тян. В воспоминаниях об этих занятиях остался только образ груди выглядывающей из слегка расстегнутой спортивной куртки.
Аноним 06/08/17 Вск 13:02:26  1038976
>>1038900
Оке.
>>1038909
Думал об этом. Таки да, когда есть идея, мотивация будет как будто тянка поебаццо позвала.

>>1038918
Понял, спасибо.

>>1038937
>>1038963
Согласен. Да и по цене получается 80К за все курсы академии - как-то многовато. Я на джавараш в 2014 за 100$ весь курс купил, так там дохуя всего дается с задачами и теорией. А щас вот в веб перекатился, думал, найду аналоги, а хуй там. Буду пилить свой проектик тогда и дрочить по книгам.

Аноним 06/08/17 Вск 13:03:29  1038977
>>1038968
Можешь просто сидеть с суровым видом рядом, чтобы я не отвлекался на двощ и любую другую хуйню, пока не позанимаюсь нормально.
Аноним 06/08/17 Вск 13:08:55  1038980
>>1038965
> попу подтирают
Ну и чему ты научишься, ежели тебе попу подтирают? Мамка вон тебе до 12 лет подтирала и посмотри кем ты вырос?
Аноним 06/08/17 Вск 13:10:36  1038981
>>1038980
>до 12 лет
А почему не до 40 лет?
Аноним 06/08/17 Вск 13:18:38  1038987
>>1038977
Бери ноут и пиздуй из дома, чтобы без инета.
Аноним 06/08/17 Вск 14:27:09  1039023
Какую IDE лучше использовать вкатывающемуся в JS шарпоёбу, привыкшему к Visual Studio с ее IntelliSense? Студия кажется тяжеловатой для жс, Sublime и Atom иногда неправильно подсвечивают синтаксис и не могут в автодополнение.
Аноним 06/08/17 Вск 14:28:43  1039024
>>1039023
vs code
Аноним 06/08/17 Вск 14:42:54  1039039
Читая доки по редаксу, возникает ощущение, что проще сразу брать элм или пюрешку, чем пытаться на честном слове писать на нем.
Аноним 06/08/17 Вск 14:52:53  1039045
>>1039024
Два чаю, она охуенная.
Аноним 06/08/17 Вск 15:27:23  1039069
(function(){
//код
}());

такого рода синтаксис еще юзается? или модные let или чвойтоеще заменили?
Аноним 06/08/17 Вск 15:28:37  1039073
>>1039069
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Statements/import
Аноним 06/08/17 Вск 16:33:26  1039114
>>1039073
спасибо
Аноним 07/08/17 Пнд 02:58:47  1039808
>>1038956
двачирую этого дона, ресурсы надо распределять грамотно
Аноним 07/08/17 Пнд 03:00:26  1039809
>>1038921
скобки не нужны когда один параметр
07/08/17 Пнд 06:38:35  1039820
программирую через стакоферфлов

Антоны объясните плизки чзх чего оно через классы не хочет?
https://jsfiddle.net/xLqzL09k
https://jsfiddle.net/xLqzL09k/1/

еррор :
document.getElementByClassName is not a function
Аноним 07/08/17 Пнд 06:44:21  1039821
>>1039820
Тебе ж на чистом английском пишут: document.getElementByClassName - это не функция. Т.е. такой функции не существует. Потому что elements, ведь оно может возвращать много.
Аноним 07/08/17 Пнд 06:44:41  1039822
>>1039820
Тебе же написали, не существует такой функции. Что не понятного?
Аноним 07/08/17 Пнд 06:56:29  1039824
>>1039820
все разобрался
дело было в том что getElementByClassName не функция
Аноним 07/08/17 Пнд 13:46:39  1039988
>>1039824
Сделал его функцией?
Аноним 07/08/17 Пнд 13:54:21  1039990
Крч, создаю объект workers = {}, в нем создаю еще один объект workers[x]. В этом объекте создаю кучу листенеров.
workers[x] должен отработать последовательность действий.
Но иногда он фейлит и нужно запускать процесс с начала.
delete workers[x] не убивает листенеры. Вопрос: как убить все связанное со свойством объекта самым простым способом?
Аноним 07/08/17 Пнд 14:58:12  1040017
>>1039990
>delete workers[x] не убивает листенеры
Для удаления лиснеров существуют отдельные методы.
Аноним 07/08/17 Пнд 15:28:10  1040026
>>1040017
Спасибо, кэп.
Аноним 07/08/17 Пнд 17:40:32  1040117
>>1039988
нет использовал getElementById :--(
Аноним 07/08/17 Пнд 19:51:30  1040210
когда уже this.blah() заменят на @blah()?
@ -> this
@name -> this.name
Аноним 07/08/17 Пнд 21:57:47  1040298
>>1040210
> 2017
> js
> this
Аноним 07/08/17 Пнд 22:41:56  1040325
>>1040298
obj.x = function() { this.doSmth() }
как без this?
Аноним 07/08/17 Пнд 22:46:34  1040326
Подскажите учебник или что-то по Angular 2. Чисто в проде кинули на помощь фронту, надо быстро вкатиться.
Аноним 07/08/17 Пнд 22:55:27  1040331
>>1040325
Не пользоваться ООП объектно-ориентированной парашей? Не использовать функции без аргументов, которые мутируют хуй пойми что? Как тебе такое, а?А?А?
07/08/17 Пнд 22:57:17  1040333
антоны не стукайте плиз
https://jsfiddle.net/dxnz11q5/
скролл вниз - нормально выезжает
скролл вверх - после анимации пропадает, как и должно
скролл опять вниз - после анимации пропадает, как не должно
почему оно не удаляет листенер?
и может подскажите как сделать, чтобы при быстром скролле туда-сюда анимация продалжалась а не с самого начала тригирилась?
Аноним 07/08/17 Пнд 23:21:06  1040357
>>1040331
не вижу разницы для читаемости между:
function x(obj) { doSmth(obj) }
и предыдущим примером. хотя нет, this всеже понятнее. вот если this заменить на @, будет еще лучше.

они меняют obj, а не хуй пойми что.
Аноним 07/08/17 Пнд 23:56:25  1040375
Эй, жира-кун, а скока тебе платят? На хх.ру вакансии 200-240+
Аноним 08/08/17 Втр 00:02:56  1040378
>>1040375
что за хх.ру?
200-240 чего?
Аноним 08/08/17 Втр 00:20:06  1040381
>>1040378
хуев в жопу тебе
Аноним 08/08/17 Втр 00:39:07  1040390
есть два варианта. 1.Выводится html шаблон в котором сразу 500 img 2.Жабаскриптом добавляю по 1. Какой вариант быстрее? Почему?
Аноним 08/08/17 Втр 01:16:12  1040401
Подскажите плз аналог Browserstack только бесплатный, на вм и работающий на локалхосте?
Аноним 08/08/17 Втр 02:52:35  1040412
>>1040117
А мог бы просто исправить опечатку, в названии метода. getElementsByClassName
Аноним 08/08/17 Втр 04:09:30  1040424
>>1040333
бумп
ебусь 5 часов не могу понять в чем пробемла
Аноним 08/08/17 Втр 06:59:48  1040449
>>1040333
>почему оно не удаляет листенер?
С хуя ли не удаляет?
Ты вообще в курсе, сколько ты лиснеров вешаешь?
Повесь алерт в блок else и охуеешь от того, сколько раз у он тебя затриггерится.
Аноним 08/08/17 Втр 08:02:46  1040476
бляспасибо.jpg (101Кб, 1000x795)
>>1040449
от души спосибо я подебил эту хуергу через i = 1 i = 0 маме операция нужна не супер серьезная но денег нет она не может работаь несколько месяцев теперь я стал на ступень выше к джуну надеюсь как можно скорее смогу пойти на работу сам спасибо огромное!!!!!!
Аноним 08/08/17 Втр 08:59:03  1040486
>>1040378
Если это то ты, то видимо ты не из раисси. Мкай.
Аноним 08/08/17 Втр 11:37:44  1040546
>>1040357
Читаемость тут причем, императивный даун?
Аноним 08/08/17 Втр 13:15:14  1040610
>>1040546
ну а зачем мне сокращение this -> @?

кстати, ничто не мешает писать объекты, где метод который меняет объект, будет возвращать новую копию.
Аноним 08/08/17 Втр 13:21:27  1040612
>>1040610
>писать объекты, где метод который меняет объект, будет возвращать новую копию
Совсем ебанулся уже со своим хачкилем.
Аноним 08/08/17 Втр 15:35:30  1040701
>>1040610
> писать объекты, где метод который меняет объект, будет возвращать новую копию
Он начинает о чём-то догадываться. Осталось сделать последний шаг - избавиться нахуй от объектов.
Аноним 08/08/17 Втр 15:56:33  1040718
>>1040701
Избавился от объектов тебе за щеку, проверь.
Аноним 08/08/17 Втр 16:06:25  1040727
>>1040610
Бегом кантора читать, а до этого в тред ни ногой
Аноним 08/08/17 Втр 16:08:10  1040729
Анончик, поясни: подойдёт ли Angular 2 для фронта с ~12 полноценными шаблонами экранов (не компонентами)? Задачи типовые: вывод списков, слайдеры-хуяйдеры, карта.
Сложных компонентов вроде как нет, но предстоит заёбистая логика валидации, переходов и реста по кд.
Ранее пользовал ангуляр первый. Но все пишут, что АНГУЛЯР 2 ЭТО ГРОМОЗДКО И ОВЕРКОД, ПИЗДАРИКИ ГОТОВЫМ КОМПОНЕНТАМ, ТОЛЬКО ДЛЯ БОЛЬШИХ ПРОЕКТОВ.
Аноним 08/08/17 Втр 16:14:32  1040733
Как дебажить реакт+редакс? Хром дев тулз в рот ебали этот ваш jsx
Аноним 08/08/17 Втр 16:26:17  1040741
>>1040727
почему? какую главу читать в канторе?
вроде бы, я не новичек.
Аноним 08/08/17 Втр 16:33:31  1040753
>>1040733
Ставь соответствующие плагины к хрому.
Для редакса вон вообще таймлапс придумали
Аноним 08/08/17 Втр 16:47:27  1040762
14970885929200.jpg (43Кб, 540x541)
Кто мне может пояснить нахуя там
skipTracking и viewChangeCounter?
https://github.com/gothinkster/react-redux-realworld-example-app/blob/master/src/middleware.js
Аноним 08/08/17 Втр 17:26:17  1040794
Аноны, кто-нибудь писал юнит тесты в NodeJS? Запускаю тест - вываливает ексепшн - модуль не найдет. Хотя модуль есть, инсталлирован глобально. Не понимаю что за гавно такое.
Аноним 08/08/17 Втр 17:29:25  1040798
>>1040794
Ах, да, тест mocha-ой гоняю, вернее пытаюсь.
Аноним 08/08/17 Втр 18:21:54  1040827
Котаны, правильно ли я понимаю?
Вот мы создаем переменную с функцией:

var fnctn_one = function() {
return 'haha';
}

Потом создаем новую переменную и туда копируем первую:

var fnctn_two = fnctn_one;

Мы можем изменять вторую переменную как угодно, и первая меняться НЕ БУДЕТ? Правильно? Изменяться будет копия?
Аноним 08/08/17 Втр 18:46:00  1040841
>>1040827
fnctn_one/two хранят ссылки.
что такое ссылка, без программирования?
положи яблоко на стол и в тетрадке запиши: яблоко на столе.
добавь еще одну запись в тетрадь: яблоко на столе.
теперь затри первую запись, замени ее: есть еще одно яблоко в подвале.
от того, что ты затер запись, яблоко с стола не исчезло.
вторая запись все еще есть.

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

Аноним 08/08/17 Втр 19:25:09  1040858
>>1040741
> я не новичек
> не знает о парадигмах программирования абсолютно нихуя
Аноним 08/08/17 Втр 19:27:38  1040862
>>1040794
> модуль не найдет. Хотя модуль есть, инсталлирован глобально
Глобальная инсталляция в ноде только для утилит командной строки нужна. require парашу в каждый проект надо инсталлить локально.
Аноним 08/08/17 Втр 20:38:04  1040947
>>1040841
Тебе с такими объяснениями только в школе преподавать.
Аноним 08/08/17 Втр 23:06:08  1041056
ss (2017-08-08 [...].png (112Кб, 1896x918)
>>1037109
Норм сайтик, буду на работе развлекаться этой хуйней)
Аноним 08/08/17 Втр 23:27:14  1041064
https://habrahabr.ru/company/ruvds/blog/335144/
Порадовался. Будет им уроком, не хрен городить инфраструктуру уровня Java для языка, который двигает формочки. Дали вам <script src="...">, вот и не умничайте.
Аноним 08/08/17 Втр 23:36:54  1041070
>>1041064
Это ты еще про left-pad не слышал.
Аноним 08/08/17 Втр 23:40:37  1041072
>>1041070
Слышал, ну так им не привыкать сосать.
Аноним 08/08/17 Втр 23:45:08  1041075
>>1041072
Кстати, может тот обиженный программистишка и накоммитил малварь, чтобы отомстить.
Аноним 09/08/17 Срд 00:00:15  1041079
>>1040862
Благодарю.
Аноним 09/08/17 Срд 00:20:13  1041092
Ява для пидоров
Аноним 09/08/17 Срд 03:14:25  1041145
>>1041092
https://www.youtube.com/watch?v=AGcufKAdj0c
Аноним 09/08/17 Срд 14:50:23  1041368
>>1035855 (OP)
Имею список вида [id: 1, name: "Vasya", company: "KFC" ...]

Как мне достать элементы по типу key = value, чтобы было так
id = 1;
name = "Vasya";
company = "KFC" ?
Аноним 09/08/17 Срд 14:52:27  1041370
Selection459.png (37Кб, 718x439)
864ed78ac2884ab[...].png (88Кб, 1024x1024)
Аноним 09/08/17 Срд 14:58:19  1041380
Пацантре, подскажите. Мучу игрулю в которой будет диалоговая система. Вот сижу думаю как выстроить дерево диалогов, то есть само дерево диалогов я прекрасно понимаю как выстроить, меня интересует как реализовать "выбор". Пока придумал впихивать в текст диалога СПАНЫ или ХРЕФЫ с яваскриптом внутри. Чтобы оно появлялось в диалоговом окне, и на эти ссылочки жмякаешь, и вызывается функция с определенными аргументами чтобы там статы поменять и нужное продолжение диалога запустить. Вроде бы просто, да вот думаю что строю замок из костылей и велосипедов.
Аноним 09/08/17 Срд 15:03:28  1041386
>>1041380
Ну и?
Аноним 09/08/17 Срд 15:09:33  1041390
>>1041386
Как мне с помощью JS запихать работающий JS код на HTML страницу?
Аноним 09/08/17 Срд 15:11:35  1041392
>>1041390
Зачем запихивать ЖС код через ЖС, который уже подключен к этой хтмл странице?
Аноним 09/08/17 Срд 15:17:04  1041397
>>1041392
Ты долбоеб ебучий, написано же
Аноним 09/08/17 Срд 15:21:45  1041400
>>1041390
Делай из него стринг, пихай его в тег <script> и всобачивай через append какой-нибудь (но почему бы тебе самому ручками его в .html файле не вписать?)
Аноним 09/08/17 Срд 15:24:17  1041401
>>1041400
Ну так у меня бесконечное множество диалогов с различными выборами которые могут вызывывать различные функции, и всего одно диалоговое окно которое очищается после выбора варианта.
Аноним 09/08/17 Срд 15:35:31  1041407
>>1041380
eval же
Аноним 09/08/17 Срд 15:55:26  1041421
Спасибо за советы, и правда нету смысла городить evalы, пихать код в стринг. Просто создам несколько спанов с запасом, спрячу их, и когда будет выбор буду через функцию динамически их менять по всякому. Можно же спокойно вызов с функции с аргументами запихать в строку и через ИннерХТМЛ приписать к элементу
Аноним 09/08/17 Срд 15:57:50  1041423
image.png (79Кб, 545x296)
image.png (70Кб, 559x315)
image.png (99Кб, 781x304)
>>1041368
Аноним 09/08/17 Срд 16:31:12  1041448
суп фронты. такое запитание: а чем натюнить VSCode шоб он мог в рефакторинг - понимал где какие переменные пропали/появились, понимал область видимости и помогал отыскивать проблемы типа

adres, addres, adress, address, adderss ?

var и let обьявления ?
Аноним 09/08/17 Срд 16:44:11  1041456
>>1041380
>как реализовать "выбор"
Запили либо свой миниязык для диалогов, либо в каком-нибудь формате их складывай (xml/json/yaml/s-expr/etc)
Аноним 09/08/17 Срд 16:53:24  1041464
>>1041456
Да не вариант на самом деле. В игре эти диалоги слишком сильно зависят или влияют на различные переменные. Так что в итоге выйдет куча вызовов функций, куча проверок, и между ними ссылочка на контейнер с нужной фразой. Проще и понятнее держать все рядом. Ну это пока, потом может запилю мини велосипед чтобы смотрелось аккуратнее. Аналог ренпаевской системы например.
Аноним 09/08/17 Срд 17:16:08  1041473
пацаны, помогите плз... делаю кое-что на ноде, но столкнулся с проблемой
использую из npm библиотеку, в документации написано вот так

функция getState(callback)

spotify.getState(function(err, state){
/
state = {
volume: 99,
position: 232,
state: 'playing'
}
/
});


вопрос, как использовать, например, state.volume в другой функции? пробовал внутри функции присвоить

let huy = state.volume, но huy я не могу использовать за ковычками, undefined получается

я программирую не больше недели, как только пытался, не получилось. колбэки, офк, не знаю как работают. куда идти читать про это?
Аноним 10/08/17 Чтв 03:46:41  1041716
let hui;

spotify.getState(function(err, state){
/
state = {
volume: 99,
position: 232,
state: 'playing'
}
hui = state.volume;
/
});
Аноним 10/08/17 Чтв 04:29:22  1041718
Зделол свой первый пет-прожект на node, express, mongodb. Куда теперь там прикручивать реакт/ангуляр чтоб модно было? А то я чото ума не приложу.
Аноним 10/08/17 Чтв 09:47:42  1041782
>>1041448
Eslint?
Аноним 10/08/17 Чтв 11:11:30  1041821
Посоветуйте книгу для обучения, прогал на кумире и паскале АВС, решая простенькие задачки.
Или из шапки по порядку в самый раз?
Аноним 10/08/17 Чтв 12:12:28  1041857
Какая разница между NW.JS и Electron? Что лучше? Что выбрать? Почему?
Аноним 10/08/17 Чтв 13:47:13  1041918
На работе предлагают стать фулстеком на ноде, сейчас я фронтенд-макакен.
Соглашаться или нет?
Аноним 10/08/17 Чтв 13:52:41  1041926
>>1041857
>Что выбрать?
Electrino
>Почему?
Потому что использует нативный рендерер.
Аноним 10/08/17 Чтв 14:04:24  1041938
>>1041926
Ой мудак.
Аноним 10/08/17 Чтв 14:44:50  1041954
>>1041938
>Кукарекуууу.
Ясно.
Аноним 10/08/17 Чтв 15:08:47  1041963
>>1041718
Никуда.

Backend отдельно, frontend отдельно
Аноним 10/08/17 Чтв 15:38:06  1041981
Есть какая-то альтернатива хероку, куда можно залить свой говноблог на koa.js?
Аноним 10/08/17 Чтв 15:39:16  1041982
>>1041918
Если будут больше платить, почему нет? Сорта говна одни и теже.
Аноним 10/08/17 Чтв 15:47:06  1041983
>>1036330
А кто будет помогать и код ревьюить?
Аноним 10/08/17 Чтв 16:34:56  1042005
>>1041963
Но я хочу по фуллстэку угореть. С бэкэндом разобрался помогло то, что приходилось раньше работать с джавой и пхп, а как на это повесить фронт я чото даже не знаю, с какой стороны подобраться.
Аноним 10/08/17 Чтв 17:57:03  1042046
15017006188400.jpg (101Кб, 1200x1186)
Нормальный человек не будет марать руки о javascript
Аноним 10/08/17 Чтв 17:58:07  1042047
>>1042046
Да ладно тебе, многие вон и 1с-кой не брезгуют.
Аноним 10/08/17 Чтв 17:58:14  1042048
>>1042046
А обо что будет? О пхп? Или в пиздон? МОжет быть руби? Или может кложура? Какая разница на какой динамической параше писать?
Аноним 10/08/17 Чтв 18:01:37  1042053
>>1042047
Они не знают о существовании js.
>>1042048
Не жс, главное не жс.
Аноним 10/08/17 Чтв 19:14:42  1042092
>>1041981
Неебу что такое коажс, но если у тебя онли статика то
github.io?
Аноним 10/08/17 Чтв 19:33:34  1042101
>>1042092
а вот есть сервисы где не только для статики
Аноним 10/08/17 Чтв 21:02:35  1042150
>>1041448
webstorm
Аноним 10/08/17 Чтв 21:53:52  1042180
Ананас, почем сейчас стоит вчерашний джуниор в ДС-2? Интересуют зарплатные вилки в нетто выражении.
Аноним 10/08/17 Чтв 21:59:19  1042183
>>1042180
Меньше 50 не проси.
Аноним 10/08/17 Чтв 22:01:20  1042184
>>1042183
Вы охуели что ли?
Аноним 10/08/17 Чтв 22:01:51  1042185
>>1042183
Бакесов в час?
Аноним 10/08/17 Чтв 22:03:26  1042187
>>1042184
Почему охуели?

>>1042185
килорубасов в месяц
Аноним 10/08/17 Чтв 22:12:18  1042191
>>1042184
Если просить меньше, то ты подписываешься под тем что ты тварь дрожащая. Студентоте с 0 опыта 50 дают.
Аноним 10/08/17 Чтв 23:27:02  1042230
Блядь как в этой ебаной виндовс шрифты удалить? Хром ебаный тянет все время локальный шрифт, а не его аналог с гуглофона, локальный корявый пиздос. Удалиться не удаляется, потому что УЖЕ ИСПОЛЬЗУЕТСЯ блядь, перезагрузил, а вот хуй, они уже все сразу заняты и хуй удалил.
Аноним 11/08/17 Птн 00:47:02  1042262
Джуном получаю 900 баксов в месяц в ДС.
Американская компания, работаю с бекбоун.
Аноним 11/08/17 Птн 01:12:23  1042273
>>1042262
И что?
Аноним 11/08/17 Птн 01:25:44  1042281
>>1042262
как долго учил жс?
Аноним 11/08/17 Птн 02:10:42  1042296
>>1042281
Почитал книжку по жс, примерно месяц поделал задачки и начал искать работу.
Аноним 11/08/17 Птн 03:14:47  1042303
>>1042191
Охуеть, значит любой даун сможет так зарабатывать? И в чем прелесть программирования тогда.
Аноним 11/08/17 Птн 07:21:48  1042335
>>1042303
>50к
>зарабатывать
Аноним 11/08/17 Птн 08:22:26  1042339
>>1042101
Это вопрос? Да, есть. Платные. Бесплатные хероку-говна уровня. Нахуя для бложика не статика?
Аноним 11/08/17 Птн 09:05:11  1042344
>>1042335
> 150к
> зарабатывать
Аноним 11/08/17 Птн 10:20:25  1042386
>>1042344
>300к гривен
>зарабатывать
Аноним 11/08/17 Птн 10:25:42  1042391
>>1042386
Грывни это рубли деленные на 2.5, математик хуев.
А вообще в треде лучше никого не слушать - тут один джуны и капелька пре-мидлов, так что дельных советов не услышишь - надо идти на тематические форумные тусовки.
Аноним 11/08/17 Птн 10:28:25  1042393
>>1042391
Форумы для даунов застрявших в 2001
Аноним 11/08/17 Птн 10:30:47  1042399
>>1042393
Сейчас они имеют вид аля пикабушечки.
Типо вместо отедьлной темы - ПОСТ, и под ним в комментах сидят бурлят.
Хабр тоже не просто новостной агрегатор
Аноним 11/08/17 Птн 10:32:53  1042403
>>1042399
Лучше на гиттере найти уютненькую комнатку единомышленников. И квалификация повыше, и узкоспециализированную конфу найти не проблема, да и общение поактивнее будет.
Аноним 11/08/17 Птн 10:37:23  1042413
>>1042344
Сегодня видел на HN плач о том что 50к зеленых в год это джуновская зп.
Аноним 11/08/17 Птн 10:38:40  1042415
>>1042413
50к предлагают рабам из снг на первом этапе. -30% налогов, выходит примерно как в дс-x
Аноним 11/08/17 Птн 10:49:27  1042425
>>1042413
Для Bay area это копейки, например.
Аноним 11/08/17 Птн 10:53:24  1042430
>>1042415
Джуном без опыта 500$ на первой работе получал на руки.
Надо просто знать куда ломиться.
Я вообще первый годик по стартапам тусил, там проще с устровойством в разы.
А потом уже можешь на свою макака-галеру веслорабом устраиваться и гребсти с другими рабами.
Аноним 11/08/17 Птн 10:59:24  1042437
>>1042430
50к баксов в год если че
Аноним 11/08/17 Птн 12:04:17  1042460
>>1042437
Ну я понял, нечаянно реплай прикрепился.
Так если на старте сможешь сразу на ремоуте кому-то втюхаться то уже хорошо.
Я ж в первое время вообще одну страничку верстал месяц еще и как ракал и я хз ктоб такого долбоеба еще содержал кроме местных стартапов.
Аноним 11/08/17 Птн 12:42:15  1042474
Слушайте слушайте, есть проблема, я неплохо разбираюсь в js, сейчас дрочу react, с этим проблем вообще нет, но очень плохо могу в css, анимации, трансформации, всякие трюки, меня хватает на bootstrap для стилизации, насколько вообще критично фронту шарить в верстке, недели две ищу работу и очень много где требуют "хорошее знание css/адаптивная верстка/хуй пизда джигурда. Бросать все и учить css или искать нормальную контору, где этим занимается верстак?
Аноним 11/08/17 Птн 12:43:14  1042475
>>1042474
Я сами стили-то понимаю, чужой код понять смогу, но когда начинаю свой css писать, все идет по пизде.
Аноним 11/08/17 Птн 12:47:33  1042478
>>1042474
Ты же мордой занимаешься, не знать как морду пилить - как минимум хуйово.
Ну это не главное, но понимать как это работает надо, и по хорошему из версталы становиться жс макакой надо.
Ну в это въехать не сложно, так что для базы посиди на хабре почитай статьи по верстке. Главное чтоб ты въезжал как тебе сделать какой-то блок и как это сделать (костылями не костылями - но хоть как нибудь).
Это не сложно, так что быстро въедешь и базы вполне хватит, если близко с этим не работаешь.

Аноним 11/08/17 Птн 13:00:21  1042485
>>1042478
Спасибо, я понял, буду не отдельно свойства учить, а элементы страниц верстать
Аноним 11/08/17 Птн 14:14:43  1042542
>>1041782
ух ваще! спасибо. вот тока терь проблема. на моем проекте реакт, который пилится с 14 года, где про это даже не слыхали.

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

очень странно, чо я только ща узнал про этот стаф
Аноним 11/08/17 Птн 14:15:33  1042543
>>1042150
он не бесплатный, на работе мне бабла не дадут, а сам по себе я бомж, жлоб, ебал,
Аноним 11/08/17 Птн 14:15:41  1042544
2017-08-11-1415[...].png (89Кб, 696x686)
Обожаю реакт.
Аноним 11/08/17 Птн 14:31:43  1042551
Ребята, жс это не с++, на нем реально легко писать. Даже думать особо не надо. Есть заковыристые вещи, но сейчас ведь один реакт, можно правой пяткой набирать код и будет все ровненько.
Аноним 11/08/17 Птн 14:32:12  1042552
>>1042413
Но 50к в год это около 4к$, с вычетом налогов+оплатой жилья много ли остаётся? Зарплата среднего врача или фризеровщика. 70к$+ уже более менее хорошая зп чтобы жить в крупном городе.
Аноним 11/08/17 Птн 14:32:16  1042553
>>1042544
о, кстати, хороший вопрос: как гулять по стеку в рамках VSCode с учетом разбивки модулей, так чтобы стек движка не был настолько подробный? чтобы если что-то падало, небыло бы видно стека из минифицированного реакта? как в любом нормальном языке
Аноним 11/08/17 Птн 14:33:27  1042554
>>1042551
>легко писать
>думать не надо
>можно правой пяткой набирать
КАК ЖЕ Я НЕНАВЖУ JS
Аноним 11/08/17 Птн 14:39:25  1042557
>>1042551
>сейчас ведь один реакт
ангулар не осилил? тайпскрипт сложно дохуя?
Аноним 11/08/17 Птн 15:36:47  1042577
>>1042557
> ангулар не осилил? тайпскрипт сложно дохуя?
Что там осиливать?)) Ты правда считает что осилить жс фреймворк это какой то подвиг?
Аноним 11/08/17 Птн 15:58:10  1042589
сап сеньеры, через пару месяцев собес в <epam/> кто нить в курсе насколько жестко, вот думаю отказаться от их предложения прийти пообщаться т.к. кажется что не вывезу. могу попросить написать через год, а за это время sicp'ом и гоф'ом измазаться
Аноним 11/08/17 Птн 16:20:42  1042601
>>1042589
поешь? танцуешь? играешь на кожанном инструменте?

ты подумай, какие у тебя есть таланты или спроси у своего талант менеджера
Аноним 11/08/17 Птн 18:00:02  1042652
>>1042577
>Ты правда считает что осилить жс фреймворк это какой то подвиг?
Как видно по моему опыту, второй некоторые таки не осиливают.
Аноним 11/08/17 Птн 18:53:52  1042688
>>1042589
> отказаться от их предложения прийти пообщаться т.к. кажется что не вывезу
Совсем дебич?
> sicp'ом и гоф'ом измазаться
Ебать ты долбоёб, земля тебе пухом, братишка

Аноним 11/08/17 Птн 18:56:12  1042691
>>1042415
Блять ну не знаю, я получаю 24к бачей по текущему курсу и это считается нормальная мидловая зп в ДС. Джунов беру на почти в 2 раза меньше.
Аноним 11/08/17 Птн 18:57:33  1042692
>>1042460
> на ремоуте кому-то втюхаться
> ремоут
НЕВОЗМОЖНО
Е
В
О
З
М
О
Ж
Н
О
Аноним 11/08/17 Птн 19:00:42  1042698
>>1042691
Это после налогов. Накининь хотя бы и 13%, а лучше все 50, которые платит твой работодатель.
Аноним 11/08/17 Птн 19:30:25  1042714
>>1042544
propTypes?
Аноним 11/08/17 Птн 19:51:24  1042733
>>1042652
тайпскрипт?
а что там осиливать, микрософт дебики решили запилить классы и прочий ооп.
И все бы ничего, но компания эта уже себя показала и я бы побоялся использовать их говно в продакшене.
Аноним 11/08/17 Птн 20:08:32  1042753
>>1042544
что такое source maps
Аноним 11/08/17 Птн 20:18:37  1042766
>>1042543
ты и так уже зашкварен об фейсбук. еще и об индусофт зашквариваешься. а по поводу платный - да он 8 ебаных бачей стоит в мес, бомж ты блять. 8 бачей стоят пять минут работы любого бомжа. все работает из коробки без ебли с говноплагинами которые накостыляли другие бомжи из опенсорс "коммунити" и быстрее чем хромоговно. пропусти один смузи и купи себе иде и работай как профессионал а не ссаный хоббиист. используй продвинутые тулзы, не молоток ебаный с гвоздями
Аноним 11/08/17 Птн 21:31:15  1042824
>>1042589
да не, я понимаю что оно не особо в работе нужно около 3х лет на реакте верстаю да на буцтрапе программирую прост. и так не особо комфортно на собеседованиях себя чувствую, а если поднажмут, могу и на тупой хуйне как дите облажаться
Аноним 11/08/17 Птн 21:31:46  1042825
>>1042688
тебе
>>1042824
Аноним 11/08/17 Птн 22:27:19  1042855
>>1042753
Хуйяйпс. Это create-react-app, сурсмапы там есть.
Аноним 12/08/17 Суб 00:33:45  1042921
Буду учить ангуляр 2.0, какие подводные?
Аноним 12/08/17 Суб 00:34:55  1042922
>>1042921
Начнешь говорить странными словами и срать под себя.
Аноним 12/08/17 Суб 00:37:00  1042924
>>1042922
>странными словами
жяваскрипт не говно
>срать под себя
чек.
Аноним 12/08/17 Суб 00:56:40  1042926
>>1042924
>жяваскрипт не говно
Говно говняное, но скоро исправят http://www.mono-project.com/news/2017/08/09/hello-webassembly/
12/08/17 Суб 01:04:27  1042931
пойду к вам джуном на удаленку 23$\месяц
animenarutofanatuzumakinaruto@mail.ru
я не тролль
Аноним 12/08/17 Суб 01:20:04  1042933
>>1042931
У меня так фронтендщик умер
Аноним 12/08/17 Суб 01:28:24  1042935
>>1042933
не понял
Аноним 12/08/17 Суб 01:33:11  1042936
Вопрос про firefox developer tools.
Есть ли какой-нибудь способ сделать разбивку исходников в firefox devtools по папкам? Сейчас это выглядит как список всех js файлов, которые были загружены. А если используется, к примеру webpack, который генерирует sourcemap, то в devtools список всех модулей, которые были сгенерированы. Это крайне неудобно, можно сделать как в Chrome?
Использую Chrome давно, но хотелось бы получить какой-нибудь user experience от firefox, пока что на мой взгляд вообще не юзабельно для разработки. Возможно я просто что-то делаю не так. Firebug не предлагать, так как он уже вроде как устарел и не обновляется.
Аноним 12/08/17 Суб 01:34:54  1042937
>>1042921
Typescript тоже придется выучить. От него двоякое впечатление, кто-то от него радугой блюет, а кто-то как я, не оценил его возможностей.
Аноним 12/08/17 Суб 01:37:35  1042938
>>1042937
Он не нужен
Аноним 12/08/17 Суб 01:39:19  1042940
>>1042553
При чем тут VS Code? Тут в браузере упало. Если надо отлаживать под VS Code наверняка есть какие-то дополнения для него, хотя я хз вообще как ты это делаешь и зачем. Стек всегда полный, показывает трейс от и до все точки во всех функциях, через которые прошел упавший синхронный (а со специальным включенным параметром в Chrome и асинхронный) вызов функции. В любом нормальном языке список такой же. Не знаю считаешь ли ты Java нормальным языком, но там еще пизже показан трейс из вложений хуевой тучи абстракций, есть даже картинка как это все там выглядит, но искать я ее не буду.
Аноним 12/08/17 Суб 01:40:52  1042941
>>1042938
Для разработки под второй ангуляр он таки да, не обязателен. Но это тоже самое что писать под React с использованием одного только JS без JSX, то есть крайне неудобно. Хотя в целом соглашусь наверное, ошибки типизации идут от кривизны рук и отсутствия соглашений.
12/08/17 Суб 02:00:50  1042943
кто-нибудь использует только ванильный js и css?
Аноним 12/08/17 Суб 07:59:08  1042964
>>1042943
Я использую. Уже 15 лет как.
Аноним 12/08/17 Суб 08:44:58  1042972
>>1042964
я имею в виду без фреймворков вообще
куда ни посмотрю везде реакт\ангулар\жквере\нодежс
Аноним 12/08/17 Суб 09:17:35  1042977
>>1042972
Я же написал. 15 лет уже пишу.
Аnode.js это не фреймворк, а рантайм.
Аноним 12/08/17 Суб 10:03:17  1043000
>>1042977
>не фреймворк, а рантайм
Не программист, а говноед
Аноним 12/08/17 Суб 10:58:58  1043024
>>1042733
>компания эта уже себя показала
MS в плане исследований и новый направлений всегда хороши, а их технологии живут благодаря долгой поддержке. По сравнению с гуглом, это хорошие вещи.
Аноним 12/08/17 Суб 11:00:35  1043026
>>1042943
Зачем заново изобретать велосипед? Ты ведь сам придешь со временем к какому-нибудь простому фреймворку типо backbone/react чтобы снизить число копипастного кода.
Аноним 12/08/17 Суб 11:04:16  1043029
>>1043026
Двачую, переехал из Джавы, тут же уебался об ваше ебучее прототипное наследование, невозможность типизировать данные. Пару недель назад узнал про React и моя жизнь изменилась. Охуенная штука, зависимость есть. А еще и РЕДАКС!
Аноним 12/08/17 Суб 11:11:25  1043035
>>1042931
Линк на гитхаб давай.
Аноним 12/08/17 Суб 11:13:51  1043036
>>1043029
Пока не поздно посмотри на elm purescript ты все равно не осилишь, ибо жабомакака, редакс так вообще по сути под копирку с elm arch сделали
Аноним 12/08/17 Суб 11:35:55  1043044
>>1043035
гитхаба нет линка тоже
скажи что сделать сделаю
Аноним 12/08/17 Суб 11:40:04  1043045
>>1043044
Хули ты хочешь? Без своего кода просишься на удаленку. Кто тебя заочно возьмет так?
Портфолио набирай.
Аноним 12/08/17 Суб 11:41:17  1043046
>>1043044
Хороший план Мойша. Школьники на fl.ru ждут твоих предложений
Аноним 12/08/17 Суб 11:45:08  1043048
>>1043044
1) Делаешь аккаунт на гитхабе.
2) Берешь create-react-app
3) Делаешь калькулятор займов: два селектора (придумай опции сам), поле для ввода суммы, выбор срока, ридонли поле с результатом (формулу придумай сам)
4) Заливаешь полученный результат на жидхаб (если осилишь gh-pages, +бал)
Аноним 12/08/17 Суб 11:49:39  1043049
>>1043048
Бля, ну я такую хуйню для своих группашей платно на 1 курсе делал. Дай ему что-то посерьезнее.
Аноним 12/08/17 Суб 11:53:35  1043053
>>1043048
а куда кидать ето
Аноним 12/08/17 Суб 11:55:19  1043055
>>1043049
>>1043053
Ты же не хочешь, чтобы он убежал в слезах смотреть аниме дальше?
Аноним 12/08/17 Суб 12:12:26  1043062
Ребята, дам вам совет. Бросайте жс, начните учить что нибудь серьезное, типо java, c++, c#.
Ищите работу с ними джуноми за еду, потом фриланс. Хороший с++ фрилансер получает 4-5к долларов в месяц.
Аноним 12/08/17 Суб 12:14:59  1043064
>>1043048
А что можно осиливать в гитхаб пейджес, это же просто галочку в настройках репозитория поставить
Аноним 12/08/17 Суб 12:17:34  1043067
>>1043064
А теперь вспомни себя в тот день, когда "контроль версий" для тебя не значил ничего.
Аноним 12/08/17 Суб 12:19:04  1043070
>>1043067
Лол, я за 4 года работы в комманде сабмодулями и ребейзом пользоваться не научился.
Аноним 12/08/17 Суб 12:21:15  1043072
Я дико извиняюсь за ультра-нубский вопрос, но блять где вы, жс-пидорыгоспода проверяете свою писанину?
То есть вот я, свой богоподбный пистоновый код открываю в терминалецмд интерпретатором питона. Но что делать с жаба скриптом - ума не приложу.
Аноним 12/08/17 Суб 12:22:14  1043074
>>1043072
f12
node cli
Аноним 12/08/17 Суб 12:22:27  1043075
govnoed.webm (4123Кб, 352x240, 00:00:24)
Здарова, бандиты. Мне нужно запилить простенький сервис, который должен будт регистрировать аккаунт для пользователя, принимать от него данные и обрабатывать их. В интерфейсе нужны кнопки и карусельки, типа как у впаше при просмотре изображений. Я ничего особенно не знаю, кроме пистона, ну и по мелочи хтмл/цсс тащемта могу наверстать это быстро
Знающий анон, скажи, что мне понадобится для реализации этой ебатеки? Джанга, фласк? А может лучше НАСТЯ вообще что-то другое начать учить, типа джава скрипт или еще какой хуйни. Я вообще не не шарю в вебе.
Аноним 12/08/17 Суб 12:32:57  1043080
>>1043072
Алсо как делают жскрипт, который сработает если закинуть его в адресную строку браузера?
Делал свое говно даже в одну строку, все равно не пашет. открывается гогольсерч который показывает результаты поиска по моему говнокоду, лол
Аноним 12/08/17 Суб 12:43:49  1043088
>>1043072
Все питонщики такие мудаки и не умеют пользоваться браузерами?
Аноним 12/08/17 Суб 12:44:41  1043090
>>1043088
Я не питонщик, приятель. Я хэлловорлдщик.
Аноним 12/08/17 Суб 12:51:12  1043094
>>1043090
В любом современном, не маргинальном браузере, есть консоль. Открывается по f12. Если тебе нужно окружение браузера.

Тобой описанный питоновский REPL, есть точно так же в ноде, если тебе нужно окружение ноды. Просто запускаешь ноду в своем терминале, точно так же как и питон, и вот тебе твой REPL.

Про вопрос с кодом в адресной строке, есть такая URL-схема, как javascript.
example
>javascript:alert('тыхуйбля')
Аноним 12/08/17 Суб 12:53:11  1043096
>>1043094
>javascript:alert('тыхуйбля')
имей ввиду, что, например хром (как остальные не знаю), не даст тебе просто так взять и скопипастить это в адресную строку. Поэтому схему писать надо ручками.
Аноним 12/08/17 Суб 14:30:11  1043123
>>1043072
NodeJS поставь и хеллоуворлдь
app.js:
console.log('Hello world!');

node app.js

Не слушай пидоров с их вонючими браузерками. Вебпараша нахуй не нужна.
Аноним 12/08/17 Суб 14:33:21  1043128
>>1043123
> Вебпараша нахуй не нужна
Из 2007 капчуешь?
Аноним 12/08/17 Суб 14:34:25  1043130
>>1043123
>Вебпараша нахуй не нужна
Что ты тогда в вебе сидишь, мудак? Иди нахуй на улицу гулять.
Аноним 12/08/17 Суб 14:42:17  1043131
>>1043128
>>1043130
Смотрите-ка как мощно вебдауны рвутся. Неспособны осилить ничего, кроме своей реакт-хуякт-вебпараши, оценить жс в разрезе дизайна ЯП, только и могут, что полыхать, лол.
Аноним 12/08/17 Суб 15:12:27  1043139
>>1043131
>Неспособны осилить ничего
Ты прекрати делать подобные выводы о людях, основываясь на собственной компетенции.
Аноним 12/08/17 Суб 16:09:17  1043188
>>1043131
С чем будем сравнивать?
Аноним 12/08/17 Суб 16:14:27  1043191
>>1043188
Тебе, очевидно, не с чем сравнивать.
Аноним 12/08/17 Суб 16:42:55  1043199
>>1043062
>серьезное,
>типо java, c++, c#
Конпилируемые параши с обязательными паблик-статик-фабриками-синглтонов, чтоб макаки не охуевали в кандалах. Из-под барского сапога писать — это тебе не массив с числом складывать в рантайме и получится строка, какие уж тут шутки. Барин хороший, барину видней.

>>1043131
>оценить жс в разрезе дизайна ЯП
Ну дык попробуй оценить, конпилятор ты окаменелый, дизайн языка, который может произвольно выполняться из произвольного источника на клиенте и никого не убить при этом. Да ещё чтоб он был при таких рисках настолько простой, что был бы доступен любому автору, решившему наполнять Веб и складывать массив с числом для решения бизнес-задач, а не только элитному отборному байтоёбу без жизни, зато с охуенными познаниями в дизайне языков, о которых всем нужно рассказать и детектировать бутхурт, пытаясь спрятаться в строгоконпилируем скорлупке от реального мира и своего в нём места.
Аноним 12/08/17 Суб 16:54:07  1043205
11811design.png (33Кб, 380x440)
>>1043048
зашел на fl.ru там отзыв от 299 р оставить можно
https://www.fl.ru/projects/3371248/kalkulyator-rascheta-na-sayt.html#hiddenOfferInfo
получилось:
https://besplatniuidnusskiuhost.000webhostapp.com/
https://github.com/o78/1/blob/master/fl.html
до этого делал еще один калькулятор на пхп и мскл и линкатер
потихоньку в реакт вкатываюсь
гит прекольный кстати его через командную строку там делать нужно я на гентоо сижу мне так даже удобнее
Аноним 12/08/17 Суб 17:31:29  1043224
asdwqqwqqwdwqqq[...].png (48Кб, 801x783)
Не понимаю, помогите. Как в данном случае вообще работает возвращаемый объект?

1.У него нет названия, он не сохранен ни в какую пеерменную или свойство внешней функции. Это вообще роли не играет?

2. Почему методы этого объекта считаются методами внешней функции? С какой радости мы имеем право писать вот это counter.getNext() и даже получать вменяемый результат? В моем понимании эти методы относятся к обозначенному "анонимному", хз как его еще назвать, объекту. Или return их присваивает внешней функции?
Аноним 12/08/17 Суб 17:35:17  1043225
>>1043224
ооп головного мозга?

У тебя есть объект, часть полей которого являются методами. Да это анонимный объект. Нет не нужно объявлять класс для этого.
Аноним 12/08/17 Суб 17:46:23  1043230
>>1043225
>ооп головного мозга?
Нет, я слишком нуб для такого, только начал учить. Что такое поля?
Аноним 12/08/17 Суб 17:55:54  1043236
e1u08igw.jpg (33Кб, 500x508)
>>1043230
Ну карочи объект это типа розеткус пикрелейтед.
У него есть поля (дырдочки). Поля могут быть разного типа, числа, строки, функции, другие объекты и т.п.
Можно на лету добавлять новые или удалять старые. Так и живем.
Аноним 12/08/17 Суб 18:01:29  1043239
>>1043205
Ну так шо, ты согласен работать за 1.5к/месяц?
Аноним 12/08/17 Суб 18:08:28  1043242
>>1043236
А-а-а, понял, спасибо.
Аноним 12/08/17 Суб 18:16:55  1043247
>>1043224
>Это вообще роли не играет?
Нет, важно то, что этот объект доступен для обращения через переменную counter.

>Почему методы этого объекта считаются методами внешней функции?
Методы возвращенного объекта не считаются методами "внешней" функции. Функция просто возвращает объект с такими полями "методами". Она точно так же могла возвращать любое другое значение, строку, число, что угодно еще. Самой функции от этого не тепло не холодно.
>С какой радости мы имеем право писать вот это counter.getNext()
Мы имеем на это право после того, как определили такое поле в возвращенном объекте. counter же и есть тот самый возвращаемый объект.

>даже получать вменяемый результат
Этот пример написан, чтобы продемонстрировать как работают скоупы. Благодаря этому механизму и получается вменяемый результат. Вызов функции makeCounter создает контекст ее выполнения. В нем объявляется и инициализируется переменная currentCount. В ней же при каждом вызове создается и возвращается новый объект, который мы в дальнейшем используем как counter. Поскольку и переменная currentCount и возвращаемый объект были созданы в одном контексте, методы возвращаемого объекта могут обращаться к этой переменной. Это как если бы возвращаемый объект "захватил" контекст вызова функции в котором он был создан и продолжал его "удерживать" пока существует сам. Так переменная currentCounter связывается с возвращаемым объектом.
Аноним 12/08/17 Суб 18:27:12  1043250
>>1043247
Спасибо за подробности, анончик, я чувствую что сейчас ебанусь. Надо сделать перерыв...
Аноним 12/08/17 Суб 18:28:28  1043251
2017-08-12-1828[...].png (18Кб, 1860x131)
>>1043250
Аноним 12/08/17 Суб 20:08:38  1043295
>>1043247
Я снова тот анон с вопросами, который теперь немного успокоился. В общем, все понятно, кроме того как... ммм... В общем, смотри, правильно ли я понял?

У нас есть функция. Если она ничего не возвращает, то она равна undefined. Но в нашем случае она возвращает объект, в котором есть методы. Это не значит, что эти методы теперь принадлежат внешней по отношению к данному объекту функции. НО! Как я понял, сам факт вызова этой функции возвращает этот объект и эээээтоооо... Это как будто мы просто вызвали объект? В смысле, если как если бы вообще никакой функции не было, а мы просто создали пустой объект и вызвали его, типа, покажи че там у тебя. Но поскольку объект не пуст, а с методами, мы можем и методы вызвать. А право писать counter.getNext() мы имеем потому, что counter.некий_метод это то же самое, что просто_объект_а_не_функция.некий_метод? Разница в том, что если бы мы просто создали объект, он не имел бы собственного лексического окружения и работал бы только с глобальными переменными, а если оформить через функцию, то переменную currentCount можно скрыть. Да? Я правильно понял?
Аноним 12/08/17 Суб 20:16:04  1043299
>>1043295
Т.е. сам факт возврата объекта из функции означает, что при её вызове мы, по сути, работаем с этим самым объектом?

Надеюсь ты понимаешь суть вопроса, а то я могу как мудак спрашивать. Уточни если что.
Аноним 12/08/17 Суб 20:20:25  1043300
Заставить бы вас всех уебков асм выучить, да разобраться как вообще компьютер устроен, чтобы вопросов тупых не задавали.
Аноним 12/08/17 Суб 20:21:33  1043302
>>1043199
> Ну дык попробуй оценить
Детектор почини, дегенератина, жс один из моих любимых языков.
Аноним 12/08/17 Суб 20:26:16  1043305
>>1043300
Я бы с радостью. Если покажешь где учить.
Аноним 12/08/17 Суб 20:34:43  1043307
>>1043300
Жеэсеры только по видяхам учиться могут и только, если у препода розовые очки, зеленый галстук и ебанутая фиолетовая прическа.
Аноним 12/08/17 Суб 20:34:59  1043308
>>1043239
С контрактом, трудовой и отчислениями в пенсионку. Возьмете на таких условиях джуном?
Аноним 12/08/17 Суб 20:40:19  1043311
>>1043305
Таненбаум.
>>1043307
https://www.youtube.com/watch?v=UIUlFQH4Cvo&list=PLoJC20gNfC2gpI7Dl6fg8uj1a-wfnWTH8&index=1
Аноним 12/08/17 Суб 20:40:46  1043312
>>1043308
Ты про мрот слышал? Кому ты нужен, налогов столько за тебя платить.
Аноним 12/08/17 Суб 20:57:54  1043317
>>1043299
>Т.е. сам факт возврата объекта из функции означает, что при её вызове мы, по сути, работаем с этим самым объектом?
Если я правильно понял твой вопрос, то не совсем так. Обрати внимание на
https://developer.mozilla.org/ru/docs/Web/JavaScript/Guide/Working_with_Objects
>Создание новых объектов
>Использование инициализаторов объекта
Запись вида {...} создает новый объект. Это значит что каждый раз, когда будет вызываться внешняя функция makeCounter, будет создаваться +1 новый объект и он будет возвращаться как результат выполнения. Главное здесь, что конструкция {...} создает каждый раз новый объект.

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

В этом примере в самом деле нет ничего особенного просто функция возвращает просто значение. Она так написана, что это значение является создаваемым внутри функции объектом, но оно опять же могло быть чем угодно. То, что делает этот пример примечательным, это использование скоупа для "хранения" переменной currentCount.
Довольно часто можно увидеть такой прием на практике. Например, модный молодежный redux через это работает.
https://github.com/reactjs/redux/blob/master/src/createStore.js#L247
Для понимания нужно просто разделять саму функцию как набор инструкций для совершения каких-либо действий и контекст ее выполнения. Контекст создается каждый раз, когда функция вызывается, внутри этого контекста каждый раз инициируется переменная currentCount и там же создается новый возвращаемый объект.
Опять же поскольку и переменная и объект разделяют в этом момент один контекст, "методы" объекта могут обращаться к переменной currentCount.

Если ты что-то другое имел в виду, то уточни, пожалуйста.
Аноним 12/08/17 Суб 21:04:48  1043322
>>1043224
return и в африке return. просто то, что возращает функция. выглядит некрасиво все же
Аноним 12/08/17 Суб 21:12:44  1043325
>>1043224
хотя интересно, что без ретерн эта хрень не работает Эврика! Так вот как делается ооп в жс. надо просто ретерн со скобочками перед методами ставить. ну спасибо что научил
Аноним 12/08/17 Суб 21:24:01  1043329
>>1043322
> return и в африке return.
> ограниченное мышление
https://www.haskell.org/hoogle/?hoogle=return

Аноним 12/08/17 Суб 22:41:15  1043385
Сап братва, у меня тут хуй застрял между зубами, никак снять не могу, помогите плиз.
изучаю нод джс, а точнее адаптер монгоосе. Так вот, есть у меня некая схема https://pastebin.com/6yVUtj2j , мне вот что интересно, вот есть допустим интерфейс, в котором есть поле для ввода, и я хочу, чтоб сабмит этого поля добавлялся в массив по ключу ebaliMamkuOdmena в виде объекта
{_id: id,
body: text,
timestamp: new Date(),
ktoEbal: userName}

прочитал документацию, но никак не смог понять как это среализовать, помогите плиз
Аноним 12/08/17 Суб 22:43:45  1043389
>>1043322
>2017
>возвращать объекты из функций вместо божественных Promise-ов
Аноним 12/08/17 Суб 22:54:46  1043400
Устроим перепись долбоебов? Кто из вас без подглядывания в гугл знает что такое TLB?
Аноним 12/08/17 Суб 23:03:58  1043411
>>1043400
>TLB
умник блять нашелся
Аноним 12/08/17 Суб 23:11:33  1043418
>>1043389
>2017
>использовать промизы вместо async/await
Аноним 12/08/17 Суб 23:13:29  1043421
>>1043418
А это не одна хуйня?

мимо-диезо-господин-с-async/await-Task<>-Cancellation-уже-лет-7-как
Аноним 12/08/17 Суб 23:15:32  1043424
>>1043418
>2007
фикс
Аноним 12/08/17 Суб 23:17:05  1043425
>>1043224
>1.У него нет названия, он не сохранен ни в какую пеерменную или свойство внешней функции. Это вообще роли не играет?
Название есть у переменной, объект это СОДЕРЖИМОЕ этой переменной. Точно такое же, как 123 или "Hello world!", например.

> 2. Почему методы этого объекта считаются методами внешней функции? С какой радости мы имеем право писать вот это counter.getNext() и даже получать вменяемый результат? В моем понимании эти методы относятся к обозначенному "анонимному", хз как его еще назвать, объекту. Или return их присваивает внешней функции?
У тебя counter - это переменная, в которой хранится ссылка на объект. Запись counter.getNext() означает:
1) получить объект, который хранится в переменной counter;
2) вызвать метод (поле-функцию) getNext() у этого объекта.
Аноним 12/08/17 Суб 23:20:39  1043432
>>1043421
Пользуясь аналогиями, промизы - это GOTO, async/await - это циклы WHILE и FOR. Хотя работает одинаково, но второй вариант читабельнее.
Аноним 12/08/17 Суб 23:26:52  1043438
>>1043432
Какая-то хуевая аналогия, цикл на goto почти так же читается, в некоторых языках вообще рекурсия вместо циклов и ничо. А вот continuations с запоминанием и возвращением в контекст нихуя блять не делаются в принципе, если язык их не поддерживает. Только коллбек хелл.
Аноним 12/08/17 Суб 23:27:29  1043439
>>1043317

Да, я другое имел в виду. Сначала скажу предысторию.

Я начал сначала учить верстку, хтмл/цсс, сверстал свой сайтик и тд, понял что этого мало и решил учить джаваскрипт. Т.е. программирование для меня - это нечто новое, и все что я знаю из айти на сегодня - это хтмл/цсс. Наверное, ты тоже знаешь цсс? Если да, тебе знакома такая вещь как селектор с некоторой вложенностью. Например, есть такой код хтмл:

<div class="blabla_1">
<div class="ololo">
<div></div>
</div>
<div class="ololo"></div>
<div class="ololo"></div>
</div>

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

.blabla_1 .ololo div {
color: green;
}

Очевидно: в элементе с классом .blabla_1 лежит элемент с классом ololo в котором лежит некий блок div.

Вот это то к чему я привык. И сейчас я вижу функцию, в которой есть объект с методами, но это выглядит так будто мы вызываем методы, которые принадлежат функции как объекту, т.е. в моей голове ломается условный "селектор". Вот что должно было быть написано, что бы запись counter.getNext() не сломала мне мозг:

var currentCount = 1;

var counter = {

getNext: function() {
return currentCount++;
},

set: function(value) {
currentCount = value;
},

reset: function() {
currentCount = 1;
}
} //просто объект с методами




//ИЛИ




function makeCounter() {
var currentCount = 1;
}

makeCounter.getNext = function() {
return currentCount++;
};

makeCounter.set = function(value) {
currentCount = value;
};

makeCounter.reset = function() function() {
currentCount = 1;
};
//Мы записали в функцию методы как в объект и они теперь принадлежат ей.


В таком случае все ясно если думать как врестальщик: есть объект counter? Есть. Пишем селектор: counter. В нем есть метод? Есть. Вложенность - через точку, пишем: counter.getNext()
Держим в уме, что этот метод может вызваться только в этом объекте, т.е. селектор обладает ооооочень высокой специфичностью. И тут ВНЕЗАПНО мы делаем анонимный объект, пишем "селектор" через функцию и все это как-то работает! КАКОГО ХУЯ!!!!!!!!!!!!!!!!!!!!!!!!!

Вот я и пытаюсь понять, в какой момент мы подменили объект на функцию. Как я понял, и понял, скорее всего, неправильно, это то что return внутри функции логически "вытягивает" содержимое объекта и ложит непосредственно в функцию и даже начинает её объектом_Васей, а не функцией_Сирожей.


Ты не мог бы шаг за шагом расписать что происходит при написании этой херни и в момент вызова? Просто чтоб я один раз увидел. Я знаю, что уже всех заебал, но правда хочу понять что происходит
Аноним 12/08/17 Суб 23:36:04  1043449
>>1043425
>Название есть у переменной, объект это СОДЕРЖИМОЕ этой переменной. Точно такое же, как 123 или "Hello world!", например.

Но ведь мы можем туда вписать десяток таких объектов без имен. Как оно поймет, который именно мы имеем в виду?


>counter - это переменная, в которой хранится ссылка на объект

Тот же вопрос. С точки зрения css такой селектор не может работать т.к. выдаст слишком много результатов, т.е. он недостаточно специфичный. Вот это я написал>>1043439
Аноним 12/08/17 Суб 23:40:45  1043450
Если у вас есть еще настроение мне это объяснять, пишите, я обязательно прочитаю. Пока потихоньку буду раздуплять статью про работу с объектами на сайте Мозиллы и потом спать. Я реально тупой сейчас и плохо соображаю, но есть мотивация на это потратить столько времени, сколько нужно, пока не пойму. Подписался на тред, что называется.
Аноним 12/08/17 Суб 23:41:51  1043452
>>1043439
Ты про замыкания вообще читал?
Аноним 13/08/17 Вск 00:06:37  1043459
>>1043312
А нахуй ты с такой работой нужны, которую никуда не запишешь?
Аноним 13/08/17 Вск 00:27:22  1043461
>>1043452
Читал.
Аноним 13/08/17 Вск 00:28:46  1043462
>>1043459
Пиши в резюме что хочешь, никто не проверяет.
Аноним 13/08/17 Вск 00:29:56  1043463
>>1043452
Вот что такое замыкание по версии сайта лерн джаваскрипт:
>Замыкание – это функция вместе со всеми внешними переменными, которые ей доступны.

ВНЕШНИМИ, ты понял? А я не понимаю кка работает внутренняя единица, в данном случае объект внутри функции.
Аноним 13/08/17 Вск 00:31:06  1043465
Я знаю про то что сначала ищутся переменные во внутреннем лексическом окружении, если нет такой - на уровень выше, там нет - еще выше пока не найдет или не найдет и даст ошибку.
Аноним 13/08/17 Вск 00:32:34  1043466
>>1043463
>>1043465
Йобаный свет, да почитай ты уже как машина ирл вызов процедур выполняет, с аргументами на стеке, вот это все. Пиздец какой-то.
Аноним 13/08/17 Вск 00:33:47  1043467
>>1043462
Хорошо.
В таком случае вопрос остается таким же. Зачем тратить время на компанию, которая платит гроши, официально ты в ней не значишься, когда в резюме можно писать что угодно?
Не проще ли перепрыгнуть этап с дешевой компанией и сразу искать нормальную?
Аноним 13/08/17 Вск 00:35:39  1043468
>>1043466
Успокойся. Выпей водички. Я уже сказал, что прочту статью.
Аноним 13/08/17 Вск 00:39:13  1043470
>>1043439
Я кажется понимаю, что ты имел в виду. Проблема в том, что css и js принципиально разные типы языков. Я не на столько силен в формальных формулировках, кто знает лучше, пусть поправит. Css то, что называют декларативным языком, js императивным.
Работая над css ты задаешь набор правил, что должно быть на странице описывается селектором и как оно должно выглядеть стилями. При этом не обязательно на странице будут элементы, которые соответствуют всем селекторам в твоих таблицах стилей. Элементы могут динамически появляться и исчезать, но это не важно, потому что таблица стилей описывает набор правил по которым нужно находить элементы и применять к ним стили, а не состояние страницы.

Императивные языки нужно читать иначе, они описывают поэтапное решение проблемы шаг за шагом. Если таблицу стилей можно начать читать с любого места, может не всегда это будет удобно, но так или иначе можно в конце концов получить всю необходимую информацию, то чтобы понять код на императивном языке нужно проследить последовательное выполнение инструкций от начала до конца. А поскольку сферическое в вакууме выполнение инструкций смысла имеет немного, нужно еще отследить, как изменяется состояние программы при помощи этих инструкций.
Выглядит это в твоем примере примерно так:
1. Объявляется функция с именем makeCounter. С помощью этого имени можно ее "вызвать" то есть попросить js выполнить набор инструкций, описанных внутри этой функции в соответствии с правилами языка. На самом деле можно сделать еще много разных вещей, но сейчас это не важно.
2. Когда функция будет вызвана с этой строки начнется ее работа. Здесь объявляется переменная currentCount и ей присваивается значение 1. Это будет происходить каждый раз, когда будет вызваться функция. 1, 10 или 1 000 000 раз, не важно.
4. Используется оператор return. В момент выполнения функция возвращает значение, которое идет следом. Еще здесь используется {, начало конструкции, создающей новый объект. Это значит, что результатом работы функции будет созданный с помощью конструкции {...} новый объект.
5. В объекте определяется поле getNext, оно ссылается на функцию, которая будет вызываться при обращении к этому полю.
6. Тот же оператор return. В этот раз он будет возвращать значение переменной currentCount. Доступ к значению currentCount имеется благодаря правилу работы областей видимости переменных.
То же самое и для остальных полей возвращаемого объекта.

19. Отсюда начинается выполнение программы на скрине. Это первая инструкция в цепочке от начала до результата. здесь переменной counter присваивается значение, возвращаемое функцией makeCounter. makeCounter возвращает то, что определено при помощи оператора return(4), то есть новосозданный объект. В момент вызова makeCounter() контекст выполнения программы, то есть цепочка инструкций, переходит во внутрь функции makeCounter, то есть будут выполнены строки 2-16. После достижения оператора return контекст выполнения возвращается на строку 19, где переменной counter присваивается возвращенное функцией значение.
21. Выводится алерт с текстовым значением, возвращаемым getNext. Вернет оно то, что определено в операторе return, то есть значение currentCounter. Попутно currentCounter увеличивается на единицу.
22. Повторяется то же самое.
... дальше в принципе опять то же самое, за исключением того, что обращаются еще и к другому полю объекта.

Короче, программу на js нужно читать от начала до конца, отслеживая куда заведет нить выполнения инструкций и как выполнение каждой инструкции изменит состояние программы, значение переменных или, например, состояние браузера. И когда ты хочешь обратиться к чему-либо в программе ты должен убедиться, что это позволяет текущее состояние программы, например, что функция объявлена, а у объекта есть требуемое тебе свойство.
Аноним 13/08/17 Вск 00:45:44  1043474
>>1043467
Какая кампания, маня? В кампании ты нахуй не кому не сдался. Я тебе по доброте душевной предлагаю упражняться за деньги, а ты выебываешься. Не хочешь, ну и сиди сычуй дальше, нахуй ты кому всрался.
Аноним 13/08/17 Вск 01:12:19  1043486
А еще меня бесит, что по завершению выполнения каждой функции операции с DOM нельзя поставить другую функцию. Приходится timeout делать
Аноним 13/08/17 Вск 01:17:16  1043489
скажите. мне на клиенте асинхронные функции и промизы надо использовать или это удел ноджсовцев-бэкендеров.
Аноним 13/08/17 Вск 01:21:44  1043491
>>1043489
Только продолжения, только хардкор!
Аноним 13/08/17 Вск 01:27:19  1043492
>>1043470
вот это простыня.
>>1043466
байтоеб порвался найс
Аноним 13/08/17 Вск 01:29:08  1043493
>>1043489
При работе с аяксовыми запросами конечно же нужно.
Аноним 13/08/17 Вск 02:51:21  1043505
>>1043449
Который вписали в текущий момент, очевидно же.
В CSS переменных нет, там селектор связывается с определенным элементом раз и навсегда, это константа.
Аноним 13/08/17 Вск 02:54:20  1043506
>>1043449
Вообще, что бы не кукарекали байтоебы, на примере этого анона хорошо видно, почему императивные языки хуже и сложнее для понимания по сравнению с функциональными, не имеющими изменяемых данных.
Пора выкинуть JavaScript на помойку, заменив его на PureScript.
Аноним 13/08/17 Вск 04:31:57  1043524
>>1043239
да офк
Аноним 13/08/17 Вск 04:32:36  1043525
>>1043524
>>1043239
куда писать?
Аноним 13/08/17 Вск 09:45:08  1043548
>>1043486
открой для себя dom mutation events
Аноним 13/08/17 Вск 09:46:06  1043549
>>1043505
>В CSS переменных нет
Как там в 2008ом?
Аноним 13/08/17 Вск 10:14:04  1043555
>>1043506
Если человек не в состоянии осилить как работают переменные и что такое стек, то от монад у него чердак поедет.
Аноним 13/08/17 Вск 10:45:24  1043563
Блять не могу у Кантора понять строку в уроке.
Решение заключается в превращении obj.className в массив при помощи split. После этого в нем можно проверить наличие класса, и если нет – добавить.

сама строка:
var classes = obj.className ? obj.className.split(' ') : [];

што блять? тут же нет условия, что бы делать или-или. Ну похуй, перепишем в if.

if (var classes = obj.className) {
obj.className.split(' ')
} else [] /////што блять?

Как это работает? Пардон я тупой просто
Сам урок, первая задача
https://learn.javascript.ru/array-methods










Аноним 13/08/17 Вск 10:46:05  1043564
>>1043555
Двачую этого.
Аноним 13/08/17 Вск 10:47:14  1043565
149618885213657[...].png (79Кб, 487x380)
>>1043563
Аноним 13/08/17 Вск 10:56:01  1043568
>>1043563
иди на завод долбаеб
Аноним 13/08/17 Вск 11:04:43  1043573
>>1043474
если что это писал какой-то другой не понятно почему и для чего выползщий анон, лол
animenarutofanatuzumakinaruto@mail.ru
Аноним 13/08/17 Вск 14:13:35  1043699
>>1043470

Огромное спасибо, анончик! Теперь все ясно окончательно, правда. Конечно, статью я тоже буду читать. Теперь я немножко менее дебил, благодаря твоим стараниям.
Аноним 13/08/17 Вск 14:58:04  1043732
pizda.jpg (53Кб, 535x528)
>>1043308
теперь мне этот анон не отвечает и на мыло так и не написал все из-за тебя теперь точно поеду в польшу туалеты мыть ты доволен???
Аноним 13/08/17 Вск 15:55:56  1043771
>>1043732
Я нихуя не понял.
Вот это >>1043205 твоё?
Аноним 13/08/17 Вск 15:59:00  1043776
>>1043771
мое
за 1.5к готов 24\7 дрочить че угодно только не связанное с сексом плиз
Аноним 13/08/17 Вск 16:01:07  1043777
>>1043776
Верстать умеешь? flexbox понимаешь?
Аноним 13/08/17 Вск 16:10:21  1043783
image.png (404Кб, 1239x496)
Бамп отсосу хипстоблядей.
Аноним 13/08/17 Вск 16:11:46  1043785
>>1043777
умею но опыта почти нет
в ццс что такое флексбокс знаю
с колонами верстал только на бутстрапе
Аноним 13/08/17 Вск 16:20:15  1043793
>>1043785
Отписал тебе за щеку, проверяй.
Аноним 13/08/17 Вск 18:46:35  1043935
Ньюфаг в Nodejs в треде
Как отрубить выдачу ошибок в теле ответа? Использую экспресс+монгуз, и если, к примеру, пытаюсь кастануть к ObjectId неподходящую строку, то он вываливает в респонс следующую строку:
CastError: Cast to ObjectId failed for value "WRONGOBJECTID" at path "_id" for model "MyModel"
Не знаю, экспресс ли это так или монгуз ругается, но отрубить надо.
Аноним 13/08/17 Вск 18:51:41  1043939
>>1043935
Ну так обрабатывай эту ошибку в месте её возникновения как тебе нужно, а не пробрасывай дальше.
Аноним 13/08/17 Вск 18:56:02  1043942
image.png (6Кб, 447x92)
>>1043939
Как? Обращение к БД у меня внутри middleware, пикрил.
Оборачивание в try не помогло, замена next(err) на просто next() тоже.
Аноним 13/08/17 Вск 19:05:35  1043946
>>1043942
>>1043939
Окей, заменил next(err) на res.send(""), стало лучше. Но как-то в целом можно отключить вывод ошибки прямо в респонс? Запилить еще один мидлвейр в конец, который при наличии ошибок в предыдущих выдает 500?
Аноним 13/08/17 Вск 19:09:13  1043952
>>1043946
У тебя один общий обработчик ошибок, который и отправляет ошибку в теле ответа. В нем и допиши отдельную обработку CastError, к примеру, вместо её отправки.
Аноним 13/08/17 Вск 19:20:15  1043962
>>1043952
Ага, разобрался с этим теперь, благодарю.
Аноним 13/08/17 Вск 19:35:01  1043977
>>1043563
>var classes = obj.className ? obj.className.split(' ') : [];

Это тернарное условие.
Оно эквивалентно

>var classes;
>if (obj.className) {
>....classes = obj.className.split(' ')
>} else {
>....classes = [];

Говном тебя облили заслужено. Как ты добрался до методов массива, ловко пропустив описание литерала этих самых массивов, ветвлений и в том числе этот самый тернарный оператор - не ясно. Ясно лишь то, что ты все делаешь не так. И либо мудак, либо слишком сильно в себе уверен, что равносильно тому же самому.
Начни сначала.
Аноним 13/08/17 Вск 19:37:30  1043980
ПЕРЕКАТ
https://2ch.hk/pr/res/1043979.html
https://2ch.hk/pr/res/1043979.html

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 554 | 31 | 137
Назад Вверх Каталог Обновить

Топ тредов
Избранное