М.Двач / Программирование

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

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

9 Кб, 1052x1052

JavaScript #∞ 11 Апр, 15:43 #971814 В конец треда | Веб

Ссылка на прошлый тред: >>961365 (OP)

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

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

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

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

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

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

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.

Ответы972197972673972785973224974300974622975470975720976023977946977988978771980932

11 Апр, 15:46 #2 #971818

абажаю члены

Ответы971819971825

11 Апр, 15:47 #3 #971819

>>971818
Вы ошиблись, ruby-тред в другой стороне.

Ответы971825

11 Апр, 15:57 #4 #971825

>>971818
>>971819
>ЖСер говорит, что Руби для пидоров
Кекнул

Ответы971831

11 Апр, 16:02 #5 #971831

>>971825
Во-первых, не руби, а раби.
Во-вторых, не для пидоров, а для безработных нищенок.

Ответы971896971907

11 Апр, 16:47 #6 #971896

>>971831
>раби

http://dictionary.cambridge.org/ru/словарь/англо-русский/ruby

11 Апр, 17:17 #7 #971906

Жиза?
Был у меня друг один. Всё на JavaScript писал. И клиента и бэкенд и десктоп даже. И базы данных на джаваскрипте делал и игрушки клепал. Говорил удобно, быстро, клёво. Всё работает, всё устраивает.
Ну, потом его в дурку сдали конечно…

Ответы971911

147 Кб, 600x600

sage 11 Апр, 17:19 #8 #971907

>>971831
>раби

11 Апр, 17:29 #9 #971911

>>971906
Баян

11 Апр, 18:11 #10 #971941

https://www.youtube.com/watch?v=8p1uLKYAwEw

- Что это такое?
- Это современный Javascript и сейчас я научу тебя программировать
- Я же верстальщик
- Ставишь на комп ноду и npm
- Ставишь ...
- Затем ставишь ... и пишешь ... config
- Ставишь ...
- Я попытался вспомнить как верстал свои первые странички
- Это лучший язык программирования, а ты даже не слушаешь
- Дальше webpack, пишешь два конфига
- Один под продакшен, второй под dev
- На dev'e не забываешь поставить webpack.dev.server и настроить ...
- На проде не забудь бить код на чанки, uglify, critical CSS
- Инициализируешь git

Анон, что он говорит в местах где у меня стоят многоточния?

Ответы971948971950974784

11 Апр, 18:27 #11 #971948

>>971941
Почитай тут:
https://habrahabr.ru/post/312022/
И ответ тут:
https://habrahabr.ru/post/313234/

Ответы971960

11 Апр, 18:30 #12 #971950

>>971941
>- Что это такое?
>- Это современный Javascript и сейчас я научу тебя программировать
>- Я же верстальщик
>- Ставишь на комп ноду и npm
>- Ставишь yarn и ...
>- Затем ставишь babel и пишешь babel config
>- Ставишь eslint и экстендишь конфиг от ...
>- Я попытался вспомнить как верстал свои первые странички
>- Это лучший язык программирования, а ты даже не слушаешь
>- Дальше webpack, пишешь два конфига
>- Один под продакшен, второй под dev
>- На dev'e не забываешь поставить webpack.dev.server и настроить hot reload
>- На проде не забудь бить код на чанки, uglify, critical CSS
>- Инициализируешь git

Только два места непонятно.

Ответы971952971953971960

11 Апр, 18:37 #13 #971952

>>971950
ставишь yarn и prettier
ставишь eslint и экстендишь конфиг от airbnb

Ответы971960

11 Апр, 18:37 #14 #971953

>>971950
>>- Ставишь eslint и экстендишь конфиг от airbnb

95 Кб, 1280x354

11 Апр, 18:40 #15 #971956

А вообще вот оригинальный пост

Ответы972070

11 Апр, 18:45 #16 #971960

>>971948
>>971950
>>971952
Спасибо

11 Апр, 19:40 #17 #971994

Вчерашний ретард опять выходит на связь.
https://github.com/C2FO/fast-csv
var ws= fs.createWriteStream('PlayerStats.csv');
csv.write ([
["Name","Team", "Position","Apps"],
[name, team,position,apps]
], {headers:true, delimiter: ';'})
.pipe(ws);
Так создаю и записываю данные в файл. Как мне дописать в уже существующий PlayerStats.csv новые строки вида [name, team,position,apps] (начиная с пустой строки)
У меня выходить только перезаписать существующий файл изменяя уже имеющиеся данные.

Ответы972004972019

11 Апр, 20:15 #18 #972004

>>971994
Я думаю так и надо, лил. Читаешь все в массивчик, потом пишешь новый файл. Лучшее решение просто.

Ответы972012972013

11 Апр, 20:28 #19 #972012

>>972004
иммутабельность, все дела)

11 Апр, 20:29 #20 #972013

>>972004
У меня будет данных на 400 строк, каждая из которых будет добавлять по очереди друг за другом, алсо время от времени эту таблицу будет нужно обновлять и заполнять по новой. В таком случае твой способ выглядит не самым удобным. Хотя информация я принял.
Но не неужели просто добавление новой строки в csv файл так сложно реализовать?

Ответы972020

Dmitry 11 Апр, 20:33 #21 #972019

>>971994
>Писать файлы джаваскриптом
Кек

Ответы972215

11 Апр, 20:33 #22 #972020

>>972013
Я вообще не понимаю нахер нужен пакет для записи в csv файл. Ты планируешь использовать там какие-то странные строки с запятыми или кавычками?

Ответы972038

11 Апр, 20:54 #23 #972038

>>972020
Нет, но мне нужно хранить данные в удобном формате с возможностью что-то изменять/дописывать вручную.
Алсо с этими данными нужно будет потом работать и производить мат. расчеты на их основе.
Csv показалось удобным форматом под это дело.

Ответы972046

11 Апр, 21:03 #24 #972046

>>972038
Я к тому что csv файл пишется кодом уровня
print(a); print(','); print(b); print('\n');
Соответственно и дописывается кодом такой же сложности, просто открытием файла в режиме append. Другое дело если тебе в середине что-то менять надо - тогда лучше пакет использовать. Но там же просто: прочитал, засунул в массив, дописал/изменил, сохранил.

11 Апр, 21:25 #25 #972070

>>971956
Оу это же мой пост

Ответы974619

12 Апр, 00:53 #26 #972197

>>971814 (OP)
Конфа в слаке ещё жива? А в телеграме?

Ответы972363

12 Апр, 02:02 #27 #972215

>>972019
Как дела? Что нибудь выучил? Куда нибудь устроился?

12 Апр, 09:09 #28 #972281

>>971974
>а что должно быть из коробки в библиотеке для вьюх ? какой библиотеки и для чего тебе не нашлось ?
Как для библиотеки для вьюх все есть, но как основы для серьезного проекта, там маловато всего, а точнее нихуя и хуй бы с ним, если бы комьюнити писало что-то полезное, так нет, кинешься, а типовые задачи(например, мне нужна была либа для работы с табличными данными, огромными данными) не решены, и пишешь сам все. Это минус. На ангуляре таких проблем не было. например.

12 Апр, 12:21 #29 #972339

bower уже не обязательно использовать? есть npm пакет для bootstrap.
http://stackoverflow.com/questions/26773767/purpose-of-installing-bootstrap-through-npm

я посмотрел package.json файлы для bootstrap и еще одного npm пакета, у них есть аттрибуты: main, style -- пути к стилям и js.
как с помощью gulp скопировать эти main, style в мою public директорию?

или это устарело? везде вебпак советуют. есть для новичков современное руководство?

Ответы972340972342972364

12 Апр, 12:24 #30 #972340

>>972339
main, style - т.е. что не прописывать node_modules/bootstrap/dist/bootstrap.css, а что-то вроде:package.main

руководство по организации, а не по вебпак.

12 Апр, 12:27 #31 #972342

>>972339
Зависит от того на сколько сложен твой js. Если у тебя больше верстка, то галп норм. А так всякие модули-компонентики собирать, обрабатывать уже лучше вебпаком, да. Он потому и называется module bundler, в отличие от галпа, который просто task runner. Ты их вообще при желании можешьмсовместить, лол

Ответы972364

12 Апр, 12:35 #32 #972344

Господа, кто-нибудь сталкивался с написанием унифицированного набора экшнов и редьюсеров для нескольких сущностей с CRUD-операциями?

После при инициализации редьюсера для конкретного компонента берется готовый набор, подставляются названия и готово.

Взлетит такое?

12 Апр, 13:41 #33 #972363

>>972197
В слаке жива. В телеграме не очень.

12 Апр, 13:43 #34 #972364

>>972339
>>972342
Осильте шапку хотя бы. Гальп и вебпак - совершенно разные вещи. Зачастую вебпак запускают через гальп. Их постоянно используют вместе.

Ответы972380

12 Апр, 14:07 #35 #972380

>>972364
Осиль прочитать еще раз мой ответ, умник.

12 Апр, 14:39 #36 #972389

Что-нибудь за полгода изменилось с безопасностью приложений на электрон/нв.жс?

Ответы972412

12 Апр, 14:49 #37 #972397

Помогите пожалуйста дябилу.
https://pastebin.com/P7GyvrYc
у меня есть список нод
nodes = ["ddd", "aaa",...];
у них есть статус и он проверяется посредством выполнения скрипта
мне нужно получить список всех нод со статусом
я написал в менеджере метод (getNodeStatus()), который дергает скрипт и выполняет функцию переданную в successAction (Executor это моя обертка для выполнения скриптов).
все нормально работает, но я не понимаю как мне вернуть мои статусы
>status => { return status; }
вот сюда они доходят, я выводил их в консоль
но return я так понимаю возвращает их вникуда и на выходе у меня ничего нет
как сделать чтоб по-нормальному было?

Ответы972972

12 Апр, 15:20 #38 #972412

>>972389
А что там было не так?

12 Апр, 18:01 #39 #972487

Подскажите, где Brackets хранит пользовательские расширения в Windows 10.

12 Апр, 20:48 #40 #972598

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

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

Ответы972661

12 Апр, 20:53 #41 #972601

>>967538 (OP)
Вкатываюсь в первую работу с жс и вебом.
На какой стул сесть: ангуляр2+пхп, либо метеор+реакт, либо фронт на первом ангуляр.
По деньгам лучше всего платят во третьей конторе.
По метеору я 0, но тимлид убеждал что ничего не стоит вкатиться в него.

Ответы972604972862

12 Апр, 21:10 #42 #972604

>>972601
Я бы выбирал либо 1 либо 2 с личным приоритетом на 2.

12 Апр, 21:49 #43 #972661

>>972598
убейти миня.

15 Кб, 429x121

12 Апр, 22:02 #44 #972673

>>971814 (OP)
Котаны, на чём можно сделать такую карусель? Желательно без jQuery, и не особенно тяжёлую.

12 Апр, 22:06 #45 #972676

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

Ответы972677972683

12 Апр, 22:08 #46 #972677

>>972676
https://en.wikipedia.org/wiki/React_(JavaScript_library)

>Initial releaseMarch 2013; 4 years ago

Ты хотел сказать набрал популярность он год назад

Ответы972680

12 Апр, 22:10 #47 #972680

>>972677
и ведь никогда не знаешь, какое говноподелие внезапно взлетит до хайпа.

12 Апр, 22:15 #48 #972683

>>972676
Старичек. Хайп реакта с 2015. Год - это про хайп вью.

56 Кб, 601x601

61 Кб, 604x525

13 Апр, 02:25 #49 #972777

Боже, помогите дауну
лёрн жаваскрипт рекурсия.
Как блядь ебаная хуйня фибоначчи вычисляется то тут? Всё остальное с рекурсией понятно.
Допустим, я беру fib(16) и получается 987.
Как эта поношенная блядь вычисляет это говно поэтапно?
16-1 + 16 - 2 = 29 +
15-1 + 15 - 2 = 27 и так далее?
или как? Что происходит я не пойму, я сначала подумал что вызов функции просто закольцовывает действие, а не подразумевает собой цифру.
Гандонство ебаное, все задания нормально делал сам, долез до этой выблядской ебалы, сначала хуй понял в чем суть ряда этого ебаного, потом нихуя не мог нормально написать код и в конце концов чувствую себя конченным дегенератом из-за того, что не смог сам решить это говно.
Неужели есть 14-15 летние выблядки для которых с первого раза решать эту поебалу легко? Сначала ведь очень близко написал, но ответы хуелу выдавали, боже.
Есть ли какой-то склад пидорского ума, что ли, чтобы это легко давалось или это просто говняная практика как и всё остальное? Я НЕ ВЕРЮ ЧТОБЫ КТО-ТО СДЕЛАЛ ЭТО ГОВНО СРАЗУ БЛЯДЬ

Ответы972786

13 Апр, 03:33 #50 #972785

>>971814 (OP)
блядь что за нахуй ? 6 лет учу жс/html/css
eloquent javascript
cunt'ора три книги
секреты ниндзя
все гниги ю донт ноу жс включая ес6
не имею высшего не могу никуда устроится, хиккую.
скоро со съемной хаты погонят
а тут бля сообщения в духе народ я устроился в офис на 300к/сек как добавить класс к элементу на ноджс

Ответы972787973336

13 Апр, 03:36 #51 #972786

>>972777
Чувак, все дело в рекурсивных гномах.
Они магическим образом вычисляют fib(16-1) и fib(16-2) а потом ты складываешь эти два числа.
А вообще ты правильно их разгадал. Пока никто не видит, эти рекурсивные гномы друг друга в очко пежат. У них это называется tail call, можешь загуглить картинки.

13 Апр, 03:41 #52 #972787

>>972785
Бро, а ты не думал, что нужно в контору на собеседование сходить, а не сутками над мамкиным борщом сычевать? А?а?А?

Ответы972789

13 Апр, 03:53 #53 #972789

>>972787
мухосрань же, крепостное право совсем недавно отменили. В местных конторах надо либо modX либо WP либо 1С знать

Ответы972867

13 Апр, 04:01 #54 #972792

Я вообще заметил что в программировании везде повторяются одни и те же сперва неочевидные фишки типа создания новой переменной и присваивания в нее нового результата. Первое просто что вспомнилось мне, новичку.
Сколько вообще таких вот подводных нужно знать для хорошей работы ?
var max = 0;
var maxName = "";
for (var name in salaries) {
if (max < salaries[name]) {
max = salaries[name];
maxName = name;

13 Апр, 12:04 #55 #972862

>>972601
>Метеор
Реакт это заебок, конечно, но вот с этой парашей я бы не связывался. Сейчас работаю с ним, наблюдая паралельно его предсмертные судорги. Могу долго рассказывать, что там плохо, но ограничусь пока простой рекомендацией держаться подальше.

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

Ответы972872979441979457

13 Апр, 12:24 #56 #972867

>>972789
upwork же, делай фотку, делай портфолио, пиши какой ты охуенный и бери заказы, js самый лучший язык для фриланса

Ответы973309

13 Апр, 12:49 #57 #972872

>>972862

Думаю что еще пару лет как минимум реакт будет всё ебать, а потом подкатится какой-нибудь React Fiber
В любом случае все самое многообещающее так или иначе использует наработки реакта, даже тот же Вуе (который многие хвалят но я еще не тыкал)
От ангуляра у всех баттхёрт. Второй может вытянет но ощущение что шанс проебан и им надо очень постараться чтобы завоевать доверие снова.

Я лично планирую дальше использовать реакт и потыкать Вуе

Ответы972877972909

13 Апр, 13:08 #58 #972877

>>972872
>От ангуляра у всех баттхёрт. Второй может вытянет но ощущение что шанс проебан и им надо очень постараться чтобы завоевать доверие снова.
А что там? Что там? Я последние полгода на реакте работаю, пока доволен, но раньше со вторым сталкивался, вроде норм был. Что случилось?

Ответы972878972886

13 Апр, 13:11 #59 #972878

>>972877
Там еще от первой баттхерт не остыл.

13 Апр, 13:26 #60 #972886

>>972877
https://meebleforp.com/blog/36/angular-2-is-terrible

Ответы972897

13 Апр, 13:38 #61 #972897

>>972886
>Angular’s ngFor uses a microsyntax. I’ve never seen another templating language that needs a DSL for for loops.

Кекнул.

13 Апр, 13:53 #62 #972909

>>972872
>а потом подкатится какой-нибудь React Fiber
так он уже, с 16 версии будет
Ошибок уже нет, только варнинги
http://isfiberreadyyet.com/

13 Апр, 15:21 #63 #972954

Вкатываюсь в js (серьезно), до этого учил пользовался bower, npm и ковырял первый ангуляр на курсеровском курсе, как я понял сейчас все это устарело, собираюсь осваивать такой стек тулзов, gulp, webpack, babel, yarn (npm как я понял тоже уже устарел) react и Vue в качестве фреймворков. Все правильно делаю?

Ответы972957

13 Апр, 15:25 #64 #972957

>>972954
Нет, js устарел, учи WebASM/

Ответы972958

161 Кб, 600x600

13 Апр, 15:29 #65 #972958

>>972957

Ответы972967

13 Апр, 15:54 #66 #972967

>>972958
пусть свой фреймворк напишет

13 Апр, 16:01 #67 #972972

>>972397
Бамп.
Мне удалось нагуглить проблему, но смущает ее решение. А именно установка сторонней библиотеки для этого (npm install async).
Честно сказать, немного в шоке, что рядовую задачу нельзя решить встроенными средствами, это вообще нормально?
Вообще у меня были кое-какие догадки запилить это через EventEmitter, но я не написал, просто хотел удостоверится, что тут мне это и посоветуют. Но на stackoverflow не нашел, чтобы кто-то такое предлагал.

13 Апр, 17:29 #68 #973038

Как вернуть then после dispatch который не делает реквестов?

1799 Кб, 509x710

13 Апр, 18:11 #69 #973065

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

Ответы973075

356 Кб, 1280x1417

13 Апр, 18:31 #70 #973075

>>973065
На js можно сервер сайд пилить на ноде

Вообще пикрил

13 Апр, 20:31 #71 #973169

ненавижу ваш js. ненавижу тех, кто придумал понятие фул стек программист

Ответы973183973210

13 Апр, 20:49 #72 #973183

>>973169
https://habrahabr.ru/company/Voximplant/blog/275229/

13 Апр, 21:37 #73 #973210

>>973169

вангую ты просто не можешь в самоорганизацию

13 Апр, 21:54 #74 #973224

>>971814 (OP)
Сап двоще, расскажи про фронтенд. Это норм, если я зная хтмл и цсс на уровне нарисовать список и сделать его зеленым, знаниями чистого JS, про который написано в книжке с носорогом, возьму React и буду его дрочить. Или есть подводные?
Что посоветуешь анон?

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

Ответы973225

13 Апр, 21:57 #75 #973225

>>973224
Если реально изучил Фленагана, то да, норм

Ответы973227

13 Апр, 22:01 #76 #973227

>>973225
У меня просто такое ощущение, что я таким образом упущу что-то важное

Ответы973229

13 Апр, 22:08 #77 #973229

>>973227
Упустишь, обязательно упустишь. И не раз. Со временем наверстаешь.

13 Апр, 22:14 #78 #973233

Сап, котаны
Строю проект, там используются слайдеры для задания параметров поиска, в стиле google material design, но проблема в том, что они глючат на мобилках, а также значение из них нельзя получить сразу при изменении, кто знает есть ли подобные слайдеры, которые хорошо работают на мобилках и без этого бага
http://vk.finder.ecsv.org.ua/search

Ответы973241

13 Апр, 22:30 #79 #973241

>>973233
О, ты дизайн сменил. Я помню тебя из /b.

Ответы973242

13 Апр, 22:33 #80 #973242

>>973241
Да, в принципе переписал все заново

14 Апр, 00:10 #81 #973276

А тут ноду кто-нибудь юзает, из бд лучший варианг - это монга?

Ответы973277

14 Апр, 00:14 #82 #973277

>>973276
Ноду не юзал, но как вариант хорошая связка это PostgreSQL + Mongo/Redis
В PostgreSQL хранить данные которые не часто записываются. Вроде данных юзеров и какой нибудь истории/архива
А в Mongo/Redis всякие счетчики, временные данные, кэш, результаты промежуточных вычислений и т.д

Ответы973278

14 Апр, 00:16 #83 #973278

>>973277
Понятно, просто думаю, раз уж вкатываюсь в js, может сразу в full stack метить, на одном языке все писать неплохо должно быть.

Ответы973283

14 Апр, 00:23 #84 #973283

>>973278
Ну хз, юзаю 3 языка и вполне неплохо чувствую себя.
Можешь выучить любой более-менее серьезный серверный язык, а JS юзать для клиентской части. Лично мне так проще, один язык серверный, другой на клиенте, чтобы не смешивать все в кучу

14 Апр, 01:31 #85 #973309

>>972867
им и перебиваюсь точнее fl.ru не охота с наскоку просрать репу

14 Апр, 02:56 #86 #973322

Пишу парсер данных с веб страницы. Чтобы получить доступ к данным надо передавать Request Headers, в которых есть динамическая переменная, без которой нихуя не работает. Это model-last-mode. Объясните что за шляпа и с чем её едят. Как парсить её для каждом конкретной страницы?

Ответы973326973335

14 Апр, 03:27 #87 #973326

>>973322
Алсо, если просто парсить хедерсы- её там нет.

14 Апр, 05:02 #88 #973335

>>973322
скачал на комп html страницу-исходник, на которой и подгружаются все эти данные аяксом со страницы, которой я отправляю хедерсы и нашёл там:

<script type="text/javascript"
$.ajaxSetup({
headers: { 'Model-last-Mode': 'yEDXSuK4yI8xJCVG0IW+sxp0Yvp2WmyxDuVo+ibRMxI=' } });
</script>

Тот самый хедерс, который нужен для запроса на страницу с инфой.
Каким образом я могу его выдрать отсюда? запись выглядит как json, но json parse вроде не подходит т.к сама страница в другом формате

Ответы973444

14 Апр, 05:17 #89 #973336

>>972785
Это прибыльнее пыхпыха? Почему его не выучишь?

14 Апр, 08:30 #90 #973352

Js программист без знания php имеет ценность?

Ответы973353973356

14 Апр, 08:31 #91 #973353

>>973352
Да

14 Апр, 08:47 #92 #973356

>>973352
Ноу, без пхп в нашем мире вот вообще никак. Все кто не знает пхп не специалисты и ценности не представляют. Такие дела))

Ответы973358973371

14 Апр, 08:48 #93 #973358

>>973356
Добавь табличку сарказм

Ответы973360973373

14 Апр, 08:59 #94 #973360

>>973358
Это не шутка.
Добро пожаловать в Россию.

157 Кб, Webm

14 Апр, 09:20 #95 #973368

Кто разбирается в html5 и имеет опыт, подскажите, пожалуйста.

Хочу сделать йоба-эффект как на сайте айфона 7 с помощью привязки видео к скроллу. Типа, когда скроллишь до какого-то места, параллельно видео тоже мотается само.

Сделал прямо на <video> (по этому принципу: https://codepen.io/anon/pen/GxDJg ), но у меня таких видосов несколько, поэтому подлагивает, запросов в секунду в три раза больше. Вопрос: как сделать оптимизированней, чтобы не лагало? Что быстрее будет работать, напрямую элемент <video>, или рендерить источник видоса на <canvas>?

На сайте Эппла вроде кэнвас используется, но их реализацию я пока так и не понял (код разбирать надо).

14 Апр, 09:34 #96 #973371

>>973356
Ссу тебе в рот, полтора года разрабатываю проекты на джс + реакт/ангуляр. Не касаюсь пыхоговна даже в перчатках палкой. По деньгам норм.

Ответы973372973373973407

14 Апр, 09:37 #97 #973372

>>973371
Гоните его, насмехайтесь над ним.

14 Апр, 09:44 #98 #973373

>>973358
Наверное все же надо было добавить, да >>973371

59 Кб, 1920x1080

14 Апр, 10:57 #99 #973394

Ребята, помогите с задачей.
Есть два поля.
В одном слова вводятся.
Во втором числа.
И выводиться слово столько раз, сколько число во втором поле.

Ответы973397973449

14 Апр, 11:02 #100 #973397

>>973394
В какое поле сам отобразишься, в какое мать отобразишь

154 Кб, 956x486

14 Апр, 11:07 #101 #973399

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

Ответы973414973488

14 Апр, 11:25 #102 #973407

>>973371
Норм это сколько, +- 100к?

Ответы973412

14 Апр, 11:31 #103 #973412

>>973407
80 по вашим и я не из парашки.

Ответы973489974798

14 Апр, 11:33 #104 #973414

>>973399
Потому что он долбоеб и не понимает, что такое замыкание. Хуесос считает замыканием то как он его применяет, а не само замыкание. Пиздец, еще и учебники строчат. Шли его нахуй.

Ответы973433973488

14 Апр, 12:39 #105 #973433

>>973414
Ну это учебник от O'Reilly поэтому я склонен доверять материалу, возможно я просто неправильно понял автора, вот и попросил уточнить.

Ответы973437

14 Апр, 12:48 #106 #973437

>>973433
В переводе часто порят ошибки, базарю. Читал Крокфорда в переводе, вот так же смутился из-за какой-то фразы. Открыл оригинал, а там фразу перевели натурально ОБРАТНО ПО СМЫСЛУ ФРАЗЕ ОРИГИНАЛА. Так что найди английскую версию и чекни че там.

14 Апр, 13:19 #107 #973444

>>973335
кинь ссылку на страницу, возможно 'Model-last-Mode' указывается при загрузке страницы каким то серверным языком

Ответы973480973481

14 Апр, 13:22 #108 #973447

В чём прикол Yarn помимо кэширования пакетов?

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

Ответы973450973457

14 Апр, 13:23 #109 #973449

>>973394
Берешь значение из первого поля, разбиваешь строку на слова, потом для каждого разбитого слова, как пример можешь юзать это

String.prototype.repeat = function(times) {
return (new Array(times + 1)).join(this);
};
var s = "yoba;".repeat(3);

14 Апр, 13:33 #110 #973450

>>973447
говорят, шустрее работает. сам не пробовал, мне и на npm норм

14 Апр, 13:41 #111 #973457

>>973447
Это сейчас конечно вброс некомпетентности на вентилятор будет, но я как-то разворачивал здоровый проект на рабочей машине и нпм постоянно падал с какими-то ошибками - то ему прав не хватало, то то, то сё. Дело было к ночи, подумал я -чем черт не шутит и натравил ярн на проект. Все поставилось с первого раза, начал колбасить. После этого свичнулся и начал жить.

14 Апр, 14:16 #112 #973480

>>973444
https://www.whoscored.com/Players/83532/Show/Harry-Kane

Ответы973666

14 Апр, 14:17 #113 #973481

>>973444
Данные подгружаются отсюда:
https://www.whoscored.com/StatisticsFeed/1/GetPlayerStatistics?category=summary&subcategory=all&statsAccumulationType=0&isCurrent=true&playerId=83532&teamIds=&matchId=&stageId=&tournamentOptions=&sortBy=Rating&sortAscending=&age=&ageComparisonType=&appearances=&appearancesComparisonType=&field=Overall&nationality=&positionOptions=&timeOfTheGameEnd=&timeOfTheGameStart=&isMinApp=false&page=&includeZeroValues=true&numberOfPlayersToPick=

Сюда и нужно передавать этот model-last-mode

199 Кб, 950x738

14 Апр, 14:32 #114 #973486

Вот ещё непонятка, но тут возможно просто я тупой. Почему внутренняя функция в функции setTimeout запускаются после всех итераций цикла? Ведь по логике оно должно выполняться каждую итерацию?

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

Ответы973490973493

14 Апр, 14:33 #115 #973488

>>973399
Это не замыкание потому что данная функция вызывается в своей же лексическом контексте, о чем автор тебе и пишет. Если бы ты возвратил эту функцию и вызвал в другом лексическом контексте, то тогда это было бы замыкание.
>>973414
а ты сам долбаеб

Ответы973493973507973518

14 Апр, 14:35 #116 #973489

>>973412
Я тоже не из рашки. Но ты же понимаешь что для такого стэка это копейки или джуниорская зп?

Ответы973509973519

14 Апр, 14:38 #117 #973490

>>973486
Потому что setTimeout - это специальная функция, которая по сути является врапером для web api.
Для того чтобы понять это надо понять что есть такое event loop. Гугли event loop и смотри видео https://www.youtube.com/watch?v=8aGhZQkoFbQ

Ответы973494

14 Апр, 14:40 #118 #973493

>>973486
https://github.com/azat-io/you-dont-know-js-ru/blob/master/scope & closures/ch5.md#Циклы--замыкание - кстати вот ссылка на данный текст.

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

Ответы973497

14 Апр, 14:41 #119 #973494

>>973490
Пиздец, я ещё JS нихуя не знаю и не понимаю что такое модули, а в ебаной книге уже какие-то примеры ебанутые с подобными вещами. Хотя подразумевается что это книга для тех людей которые даже не понимают что такое замыкания...

Ответы973498

14 Апр, 14:46 #120 #973497

>>973493
а ты не зеленый часом?
в том примере, функция находит переменную в контексте ИСПОЛНЕНИЯ (не лексическом контексте), который находится выше в стеке, то есть в том, который и вызвал эту функцию. Замыкания - это совсем другое. Тебе надо взять другую книгу или прочитать ещё раз.

Ответы973504

14 Апр, 14:48 #121 #973498

>>973494
Если можешь в английский, то в данном курсе подробно это описано https://www.udemy.com/understand-javascript/learn/v4/overview
Куда лучше чем тот высер, что ты читаешь, так ещё и переведенный.

Ответы973504

14 Апр, 14:53 #122 #973504

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

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

Ответы973515

14 Апр, 14:56 #123 #973507

>>973488
Замыкание это функция со своим лексическим окружением, так что долбоеб ты. Любая функция имеет его, про стрелочные только точно не скажу. Съебал нахуй. Еще один уебан, который путает применение замыканий и их сущность. Пздц.

Ответы973518973521

14 Апр, 14:57 #124 #973509

>>973489
20000 грн? Ебу дал? Вполне годная мидловская зп.

Ответы973520974816

14 Апр, 15:00 #125 #973515

>>973504

Советую побыстрей учить английский, потому что ссаный русский крайне не совместим с программированием. Когда ты оперируешь терминами на английском, то всё становится куда понятней.

Ответы973530

14 Апр, 15:01 #126 #973518

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

Ответы973524

14 Апр, 15:02 #127 #973519

>>973489
Я другой анон, но ты троллишь или в манямире? Сейчас в джспарашу вкатиться легче, чем когда-либо. Педаль свой говнокод левой пяткой, а тулзы его превратят сами в идеал стиля и производительности. Думать уже не надо, основные архитектурные решения за тебя приняли, сиди программируй мышкой. Это я к чему - сейчас в джс джуниорская зп - это плевок в лицо.

14 Апр, 15:04 #128 #973520

>>973509
Это оче мало, это совсем не 80к деревянных. Тебе нужно поискать больше с таким-то опытом.

Ответы973523

14 Апр, 15:05 #129 #973521

>>973507
не стоит вскрывать эту тему.
функция не может иметь замыкание, т.к. замыкание - это и есть функция, только не просто функция, а которая имеет ссылки на внешние переменные.

14 Апр, 15:06 #130 #973523

>>973520
Не ебу сколько там у хуесосов сейчас валюта. Мне 20ки на все хватает, никаких проблем + скорое повышение зп, так что все ок - жопа в тепле, проект интересный, чего дергаться?

Ответы973527

14 Апр, 15:06 #131 #973524

>>973518
>ЛО
Ленинградская область?

14 Апр, 15:12 #132 #973527

>>973523
Ты в Киеве? Своя хата? Жопа жопой, тепло теплом, но я с таким же опытом пришел и 40к попросил, дали без вопросов.

Ответы973535

14 Апр, 15:14 #133 #973530

>>973515
Стараюсь, но у меня не очень быстро это получается ибо я даун какой-то, слишком много времени трачу чтобы понять простейший материал.

Ну вот что вычитал в Итоге в конце статьи, наверное более правильное понятие замыкания: Замыкание — это когда функция может запомнить и иметь доступ к своей лексической области видимости даже тогда, когда она вызывается вне своей лексической области видимости.
Хотя Кантор для простоты вещей вроде говорит как-то иначе, но я думаю что всем похуй на формулировку, главное понимать что функции имеют ссылки на свои области видимости даже если вызываются где-то в жопе, вот и всё.

Ответы973531

14 Апр, 15:20 #134 #973531

>>973530
Да, именно так.

14 Апр, 15:22 #135 #973534

Пацаны, вот мне надо отправить ажаксом json на другой домен со своего юзерскрипта в мозиле.
Метод get не подходит, так как джейсон иногда бывает слишком длинным.
Реально ли это как-то postом сделать?

Ответы973540

14 Апр, 15:26 #136 #973535

>>973527
Не в Киеве, в Хуевом, что-то ты пиздишь за 40-к с полутора годами стажа на джс или в Киеве реально крутые зп, потому как знакомые крутые джависты с 6+ лет не получают столько.

Ответы973546

14 Апр, 15:38 #137 #973540

>>973534
Да

Ответы973542

14 Апр, 15:40 #138 #973542

>>973540
Резонно спрашиваю: как?

Ответы973545

14 Апр, 15:42 #139 #973545

>>973542
post-ом же

14 Апр, 15:45 #140 #973546

>>973535
Хочешь нотариально заверенный скриншот банковского счета? Пиздец, про крутого джависта, который даже 1.5 зелени не получает это страшилка какая-то.
Ну опыта у меня два года было, но я честно сказал, что первые полгода только верстал. То есть в сухом остатке 1.5 на джс. Но у меня даже не средняя температура по больнице. Я откуда взял эту цифру - зашел на джинни, посмотрел, сколько просят с мои опытом. Баксов 200 отминусовал, потому что была нпуверенность в своих силах. Сейчас думаю зря даже.

Ответы973551

14 Апр, 15:52 #141 #973550

Кто-то считать не умеет?
20к гривен - это меньше штуки баксов. Правильно говорят, что джуновская зарплата. Я меньше полугода проработал 14к получаю.
И 80к рублей - это не 20к гривен, а где-то 37к.

Ответы973553974798

14 Апр, 15:52 #142 #973551

>>973546
>1.5 зелени
Вот на этом моменте я понял что спиздел и считать нужно учиться снова. Знакомый джавист поднимает 2+ евро. Но то джава + тимлид + синьор помидор, как на джс можно 1000 мидлов брать - не верю нихуя, в 700 поверил бы, но 1000, хм, делать меня задуматься.

Ответы973553973560973566

14 Апр, 15:53 #143 #973553

>>973551
>1000 баксов мидлоМ
selffix
>>973550
>Я меньше полугода проработал 14к получаю
Ага, сегодня на репетицию митол-группы идешь? Дохуя что-то для вчерашнего джуна. В 10к еще поверю. Пиздишь.

Ответы973556973562

14 Апр, 15:57 #144 #973556

>>973553
Мне врать не зачем. 550 usd. Аутсорс. Больше говорить не буду, а то дианон.

Ответы974798

14 Апр, 16:04 #145 #973560

>>973551
На 1.5 тысячи, реально пиздец у тебя с валютами, бро.

14 Апр, 16:06 #146 #973562

>>973553
Норм для аутсорса, в аутстафе нормальном и того больше бывает.

14 Апр, 16:15 #147 #973566

>>973551
Алсо проведи исследование с зарплатным вмджетом на доу - заметно, что основной рост зп происходит на втором и третьем году карьеры. После 4-5 лет зарплата вообще растет едва ли не у единиц.

77 Кб, 1024x768

14 Апр, 17:00 #148 #973605

Есть ли в треде джуниоры которые подрабатывают фрилансом на каких-либо сервисах? Зарабатывая при этом чисто на еду, но всё таки зарабатывая, есть ли такие?

Ответы973613973634

14 Апр, 17:11 #149 #973613

>>973605
Что тебя интересует?

Ответы973622

14 Апр, 17:27 #150 #973622

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

Ответы973648

14 Апр, 17:41 #151 #973634

>>973605
Только вкатился недавно в веб-кодинг, на фрилансе не работал, но работаю удаленно, одна работа постоянная, правда там оплата маленькая так как сейчас задач мало. Вот недавно вторую нашел, через группу вк
Поговорили по скайпу, все обсудили. Закончил первые 2 задания и вот буквально в течении пару часов сегодня получу оплату.
Так и живем. Там в общем разработка модуля общей стоимость 8к рублей

Ответы973638

14 Апр, 17:43 #152 #973638

>>973634
Когда вкатывался на первую в портфолио был лишь один Open Source проект: http://czvl.org.ua
Сейчас же довольно много могу чего показать

14 Апр, 17:54 #153 #973648

>>973622
Ну я джуном на апворке зарегался. Работу чисто джсную сложно найти с небольшим скиллом, но много разного говна где джс в том числе нужно пердолить. Например у меня был проект, где ангуляр на клиенте прикрученный к богомерзкому вордпресу. Минимальные примеры кода на гитхабе лучше иметь, могут чисто ради приличия затребовать, хотя заказчики такого говна редко понимают, что ты там наговнокодил. Денег не много, но баксов на 7 в час можно найти, если не даун.

Ответы973654

14 Апр, 17:58 #154 #973654

>>973648
Вот недавно хотел вкатиться на Upwork, чтобы доп. работа была, скиллы есть, портфолио есть, тест нужный прошел на 4 из 5
Рассылаю всем сообщение с этим всем. Но никто не отзывается. Может дело в том, что я это сообщение рассылаю одинаковое всем подряд?Лень каждый раз заново строчить.

Ответы973661

14 Апр, 18:06 #155 #973661

>>973654
Рассылай активнее, там на несложные проекты большая конкуренция. Выхватывай баззворды и пиши в сообщениях, что вот с этой штукой я много работал (конечно лучше иметь представление о ней, если пишешь). Если долго никто не будет отзываться - демпингуй, всяко лучше хоть пару проектов за еду сделать, чем сидеть с пустым профайлом.

14 Апр, 18:06 #156 #973662

Есть одна вакансия (на Джанго), указано, что плюсом является знакомство с nodejs. Знаю ЖС на уровне минимального редактирования дом-дерева на jquerry + делал некоторе уроки на nodeschool

Вопрос: Анон подкинь мне тренировочное задание на nodejs чтобы можно было этим похвастаться. Сам думаю сделать вебсокет чат для начала (хотя вроде как звучит изи) , вдруг ты еще что подскажешь.

Ответы973671

14 Апр, 18:09 #157 #973666

>>973480
Слушай, а регуляркой не получиться выдрать?
Вроде этой
var last_mode_header_name = 'Model-Last-Mode'
var pattern = last_mode_header_name + "': '(.*)' }")

Ответы973681

14 Апр, 18:13 #158 #973671

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

Ответы973677

14 Апр, 18:19 #159 #973677

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

Звучит неплохо!

Ответы973687

14 Апр, 18:21 #160 #973681

>>973666
чет все проебалось
ну ладно, вот ссылка на готовый regexp
https://regex101.com/r/IwqUH5/2

Ответы973821

14 Апр, 18:23 #161 #973687

>>973677
https://www.sitepoint.com/face-detection-nodejs-opencv/

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

14 Апр, 18:33 #162 #973694

https://learn.javascript.ru/closures#возврат-функции - почему функция makeCounter ВООБЩЕ запоминает значение currentCount ? Т.е если я вызову makeCounter()(), то всегда будет показывать единицу, но если присвоить эту функцию (точнее получается что внутреннюю) в какую-то переменную, то currentCount не будет удаляться после выполнения функции? Это как-нибудь объясняется дальше по урокам Кантора или нет?

Ответы973699973700

14 Апр, 18:44 #163 #973699

>>973694
Уже сам нашел ответ, который упустил: "Они независимы, потому что при каждом запуске makeCounter создаётся свой объект переменных LexicalEnvironment, со своим свойством currentCount, на который новый счётчик получит ссылку [[Scope]]."

14 Апр, 18:46 #164 #973700

>>973694
В дополнении опять же к этому посту должен сказать что на мой взгляд, Кантора стоит читать по 2-3 раза, обращая внимание на всякие мелочи, ибо он их особо не выделяет жирным шрифтом (зато какую-нибудь хуйню - выделяет). И не всегда материал с первого раза запоминается даже если после теории выполнил какие-то задания.

14 Апр, 22:37 #165 #973821

>>973681
И что это? Я такую хуйню и так вижу в тексте, скачивая страницу, как мне проще достать это из неё?

Ответы974132

15 Апр, 12:47 #166 #973957

Ох, читаю элокент, протипное наследование - это конечно что-то с чем-то, в реально практике я надеюсь с ним не нужно сталкиваться и все прикрыто библиотеками с новой class нотацией создания объектов?

Ответы973964

15 Апр, 13:01 #167 #973964

>>973957
>протипное наследование - это конечно что-то с чем-то
Я сначала тоже так думал, но разобравшись там оказалось все просто.

Ответы973970

15 Апр, 13:17 #168 #973970

>>973964
Да надо привыкнуть походу, после питона/джавы пугает та простота, с которой можно любому объекту записать или переписать любые свойства и методы прямо в рантайме

15 Апр, 16:29 #169 #974060

Нужна хелпа, как заставить webpack-dev-server сохранять файлы при их изменении на диск?
Пока использую 2 параллельно запущенные задачи (webpack-dev-server, webpack:watch). Но это не очень удобно. А вместе через одну задачу работает только либо watch, либо dev-server, в зависимости что раньше запустилось.

15 Апр, 18:03 #170 #974097

Вопрос мимокрокодила-быдлана:

Если я прочитаю основной курс отсюда https://learn.javascript.ru/
и разберусь со всеми задачами по ходу дела,

то же сделаю и с этим учебником https://karmazzin.gitbooks.io ,

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

Ответы974100974202

15 Апр, 18:08 #171 #974100

>>974097
Главное задания все делай, особенно во втором учебнике, сам его прохожу, но до этого си учил, питон и джаву и я скажу, учебник клевый, но не для начинающих.

15 Апр, 19:23 #172 #974129

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

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

15 Апр, 19:28 #173 #974132

>>973821
Ахах, так ты не знаешь?
Вот читай про эту мощную штуку https://learn.javascript.ru/regular-expressions-javascript
Потом сможешь выдирать все что угодно и откуда угодно

Ответы974133

15 Апр, 19:33 #174 #974133

>>974132
Там все очень просто, допустим валидировать email таким паттерном можно

(?:(?:\r\n)?[ \t])(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
)+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:
\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(
?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[
\t]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\0
31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\
](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+
(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:
(?:\r\n)?[ \t])))|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)
?[ \t]))\<(?:(?:\r\n)?[ \t])(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\
r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[
\t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)
?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]
)))(?:,@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[
\t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])
)(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
)+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))))
:(?:(?:\r\n)?[ \t]))?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+
|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r
\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:
\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t
]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031
]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](
?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?
:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?
:\r\n)?[ \t])))\>(?:(?:\r\n)?[ \t]))|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?
:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?
[ \t]))"(?:(?:\r\n)?[ \t])):(?:(?:\r\n)?[ \t])(?:(?:(?:[^()<>@,;:\\".\[\]
\000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|
\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>
@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"
(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t]
)(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?
:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[
\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))|(?:[^()<>@,;:\\".\[\] \000-
\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(
?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))\<(?:(?:\r\n)?[ \t])(?:@(?:[^()<>@,;
:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([
^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\"
.\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\
]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))(?:,@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\
[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\
r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\]
\000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]
|\\.)\](?:(?:\r\n)?[ \t])))):(?:(?:\r\n)?[ \t]))?(?:[^()<>@,;:\\".\[\] \0
00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\
.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,
;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?
:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t])
(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[
^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]
]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))\>(?:(?:\r\n)?[ \t]))(?:,\s(
?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(
?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[
\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t
])))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t
])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?
:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|
\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))|(?:
[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\
]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))\<(?:(?:\r\n)
?[ \t])(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["
()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)
?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>
@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))(?:,@(?:(?:\r\n)?[
\t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,
;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t]
)(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))):(?:(?:\r\n)?[ \t]))?
(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(?:
\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[
"()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t])
))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])
+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\
.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))\>(?:(
?:\r\n)?[ \t]))))?;\s)

15 Апр, 19:33 #174 #974133

>>974132
Там все очень просто, допустим валидировать email таким паттерном можно

(?:(?:\r\n)?[ \t])(?:(?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
)+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:
\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(
?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[
\t]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\0
31]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\
](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+
(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:
(?:\r\n)?[ \t])))|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)
?[ \t]))\<(?:(?:\r\n)?[ \t])(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\
r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[
\t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)
?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]
)))(?:,@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[
\t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])
)(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t]
)+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))))
:(?:(?:\r\n)?[ \t]))?(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+
|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r
\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:
\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t
]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031
]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](
?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?
:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?
:\r\n)?[ \t])))\>(?:(?:\r\n)?[ \t]))|(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?
:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?
[ \t]))"(?:(?:\r\n)?[ \t])):(?:(?:\r\n)?[ \t])(?:(?:(?:[^()<>@,;:\\".\[\]
\000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|
\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>
@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"
(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t]
)(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?
:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[
\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))|(?:[^()<>@,;:\\".\[\] \000-
\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(
?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))\<(?:(?:\r\n)?[ \t])(?:@(?:[^()<>@,;
:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([
^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\"
.\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\
]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))(?:,@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\
[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\
r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\]
\000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]
|\\.)\](?:(?:\r\n)?[ \t])))):(?:(?:\r\n)?[ \t]))?(?:[^()<>@,;:\\".\[\] \0
00-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\
.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,
;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|"(?
:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t])))@(?:(?:\r\n)?[ \t])
(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t])(?:[
^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\]
]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))\>(?:(?:\r\n)?[ \t]))(?:,\s(
?:(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(
?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[
\["()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t
])))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t
])+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?
:\.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|
\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))|(?:
[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".\[\
]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))\<(?:(?:\r\n)
?[ \t])(?:@(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["
()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)
?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>
@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))(?:,@(?:(?:\r\n)?[
\t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,
;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\.(?:(?:\r\n)?[ \t]
)(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\
".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))):(?:(?:\r\n)?[ \t]))?
(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\["()<>@,;:\\".
\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t]))(?:\.(?:(?:
\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z|(?=[\[
"()<>@,;:\\".\[\]]))|"(?:[^\"\r\\]|\\.|(?:(?:\r\n)?[ \t]))"(?:(?:\r\n)?[ \t])
))@(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])
+|\Z|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t]))(?:\
.(?:(?:\r\n)?[ \t])(?:[^()<>@,;:\\".\[\] \000-\031]+(?:(?:(?:\r\n)?[ \t])+|\Z
|(?=[\["()<>@,;:\\".\[\]]))|\[([^\[\]\r\\]|\\.)\](?:(?:\r\n)?[ \t])))\>(?:(
?:\r\n)?[ \t]))))?;\s)

Показать весь текст

15 Апр, 21:32 #175 #974202

>>974097
Ок, еще вопрос:

Оба примера выше взяты из пасты в шапке. Но там указано ооочень много книг. Что и в каком порядке учить? Напоминаю, я совсем не знаком с программированием.

Ответы974340974347

78 Кб, 1337x891

15 Апр, 22:02 #176 #974215

как на jsfiddle сделать вкладку result сукаю...........

16 Апр, 07:33 #177 #974300

>>971814 (OP)
Здравствуй, программач.
Сорян, что влезаю в этот уютный тред с нубским вопросом почти не по темею Если так- перенаправь в нужный тред. Но тем не менее.
Есть один мэйл ру. В почте есть сраный рекламный баннер слева, который уже нифига не блочится аддблоком.
Нанл инспектировать через браузер, что за эту срань отвечает. Вроде как некий скрипт //js.imgsmail.ru/mail/e/utf/ts/1492094275/ru_RU/images/js/ru/build/v2.js, добавление которого в адблок не принесло никаких результатов. Пожалуйста, подскажи, как эту срань убрать- портит весь внешний вид.
Браузер огнелис. сможет ли какой-нибудь ю-матрикс это говно выпилить?
Благодарю за внимание и терпимость.

Ответы974303974312

16 Апр, 08:40 #178 #974303

>>974300
Поставь stylish и убери банер стилями.

Ответы974326974364

16 Апр, 09:28 #179 #974312

>>974300
Поставь ублок. В нем выбери фильтры. Если и это не поможет, пипеткой уберешь любой рандомный элемент.

Ответы974326974364

16 Апр, 10:22 #180 #974326

>>974303
>>974312
Благодарю, буду пробовать.

Ответы974364

16 Апр, 10:53 #181 #974340

>>974202
Так вы ответите, кто-нибудь?

16 Апр, 11:09 #182 #974347

>>974202
Первым читать learnjavascript, либо если совсем-совсем ньюфаня, то JavaScript for Kids (не шучу)
После Кантора надо поделать всякие мини штуки (javascript30 в помощь) и почитать что-нибудь по es2015+ поплотнее (например exploring es6, exploring es2016-es2017)
После садишься за вещи типа node, gulp, webpack
И потом выбираешь фреймворк: React/Angular/Vue и пишешь уже на нем, погружаясь в экосистему.
После этого уже можешь начинать упарываться всякой функциональщиной если будет желание или смотреть в сторону сервера (express, koa, sails) или здесь подставь все что хочешь...

Ответы974372

16 Апр, 11:12 #183 #974349

>всякой функциональщиной

Это ты про immutable.js?

16 Апр, 11:29 #184 #974364

В общем продолжение >>974326
>>974312
Ублок не помог. Пипетка элемент видит, но вот незадача: при каждом обновлении страницы скрипт генерирует новое имя для баннера вроде ###e0Q1G-3h. Таким образом, постоянно блочить его невозможно.
>>974303
Поставил, нашел стили для маилсру, которые, по идее, должны убирать все лишнее. Однако, не робит. В т.ч. при отключенных адблоке и ублоке.
Написать свой- пожалуй, для этого следует знать джаву. Увы, с программированием как-то не срослось.
Уматрикс эту штуку не берет. В общем, основательно программеры мейлру напердолили.

Ответы974376

16 Апр, 11:46 #185 #974372

>>974347
Большое спасибо тебе, анончик!

16 Апр, 11:56 #186 #974376

>>974364
.selector_name {
display: none !important
}

не помогло что ли? не поверю

Ответы974378974380

16 Апр, 11:59 #187 #974378

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

@-moz-document domain("e.mail.ru") {

#leftcol-banners {opacity: 0!important; pointer-events:none!important;}

.b-datalist__head__item_rb > div[class^="b-rb"], .b-letter__head__rb > div[class^="b-rb"] {margin-top: -33px!important;}

/Директ в отчёте об отправке/

.message-sent__hr.message-sent__hr_big, message-sent__hr.message-sent__hr_small,

#preload_banner_1, .message-sent__ads, .message-sent__wrap:nth-of-type(4), .js-helper.direct-state

.js.imgsmail.ru/mail/e/utf/ts/1492094275/ru_RU/images/js/ru/build/v2.js:26

.js.imgsmail.ru/mail/e/utf/ts/1492094275/ru_RU/images/js/ru/build/v2.js:21

.js.imgsmail.ru/mail/e/utf/ts/1492094275/ru_RU/images/js/ru/build/ajs.js:2

{display: none!important; opacity: 0!important; pointer-events:none!important; height: 0!important;}

Ответы974403

16 Апр, 12:01 #188 #974380

>>974376
Пардон, поторопился с отправкой.
Так вот, тема возможна к выбору на странице, но результатов, увы, не приносит. Как сама оригинальная тема автора, так и мои попытки что-то такое интуитивно напердолить.

Ответы974388974403

16 Апр, 12:14 #189 #974388

>>974380
Писец ты меня озадачил. Я не поленился даже вложенность посчитал - так они ее меняют при генерации

Ответы974403

26 Кб, 286x645

16 Апр, 12:35 #190 #974403

>>974388
>>974380
>>974378

Короче попробуй поставить tempermonkey и написать следующее в скрипт
http://jsbin.com/vazahudayi/edit?js

Ответы974409974435

16 Апр, 12:44 #191 #974409

>>974403
точнее tampermonkey

16 Апр, 13:58 #192 #974435

>>974403
Благодарю за помощь, братюнь.
а аддон работает с версией лисы от 46 и выше. А тут 43. Ороро. Похоже, пришло время обновить браузер

16 Апр, 14:44 #193 #974444

Играюсь с Angular2. Пытаюсь получить в компоненте элемент DOM по классу, используя jQuery, но оно возвращает undefined. Подскажите как работать с DOM, а конкретно, необходимо вернуть высоту элемента.

Ответы974453

16 Апр, 15:34 #194 #974453

>>974444
разобрался с @ViewChild

16 Апр, 17:18 #195 #974479

Сижу тут, крудошлёплю. Есть простенький сервис, сделанный на коленке, с почти RESTful api (asp.net web api). Хочу нахуярить для него админку SPA на js. Без фреймфорков.
Инфы вообще нарыть не смог. Фронтом в жизни не занимался. Помогите, пожалуйста.

Ответы974483

16 Апр, 17:25 #196 #974483

>>974479
>SPA на js. Без фреймфорков
Привет велосипедистам

Ответы974487

16 Апр, 17:29 #197 #974487

>>974483
Цель: собственный (махонький такой) фреймворк-велосипед чтобы общаться существующим РЕСТ-ом. Я ж студент. Велосипеды — моя жизнь.

Ответы974578

16 Апр, 21:02 #198 #974578

>>974487
https://github.com/hyperapp/hyperapp
Как на счет такого фреймворка размером в 1кб?

174 Кб, 1533x961

16 Апр, 21:11 #199 #974581

Возник вопрос, возможно глупый, но все же задам его.
Как я понимаю до появление новомодных фреймворков на js, были приложения например на RoR, который формировал хтмл на сервере и отправлял клиенту, потом появились ангуляры и реакты, которые работают на клиенте, снижают нагрузку с сервера, а теперь есть фреймворки основанные на фронтенд фреймворках, которые рендерят хтмл опять на сервере(next.js/nuxt.js), ибо бандлы получаются большими, что нехорошо для медленного мобильного интернета и лучше в плане сео. И вот собственно вопрос. Нахуя?

Ответы974601

21 Кб, 408x425

16 Апр, 21:17 #200 #974583

https://youtu.be/et8xNAc2ic8

16 Апр, 22:21 #201 #974601

>>974581
>И вот собственно вопрос. Нахуя?
У меня вот другой овпрос.
Насколько я понимаю, JS жутко простая вещь.
В виду чего, наличие к нему "фремворков" немного обескураживает.
Js в бравзере это итак фреймворк. Что там еще фремворкать?

Ответы974603974621

16 Апр, 22:23 #202 #974603

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

Ответы974606

16 Апр, 22:25 #203 #974606

>>974603
плюс вещи вроде es2015 браузерами еще нативно не поддерживаются. а там столько охуенностей, что обратно возвращаться не захочешь.

Ответы974698

16 Апр, 23:00 #204 #974619

>>972070
Больной, вернитесь в палату.

16 Апр, 23:03 #205 #974621

>>974601
>JS жутко простая вещь
>Js в бравзере это итак фреймворк
ЖСаны, у нас тут залётный.
Ты ещё успеешь охуеть, насколько этот жс простой.

Ответы974637974641974697

16 Апр, 23:03 #206 #974622

>>971814 (OP)
>JavaScript
Доставьте статью с хабра о бесполезности жса.

16 Апр, 23:35 #207 #974637

>>974621
двачую

16 Апр, 23:39 #208 #974641

>>974621
>ЖСаны, у нас тут залётный.
>Ты ещё успеешь охуеть, насколько этот жс простой
Ну, я парочку простых сайтиков(веб приложений, как щас модно) на нем сделал, общаясь с сервером через xml.
Там же логика вся элементарная, скрыть нарисовать кнопочку изменить размер цвет эдемента вписать текст в елемент итд.
Тоесть, Js в бравзере и так на уровне визуального редактора форм в шарпе кокомнибудь. И даже лучше местами.

Ответы974650

16 Апр, 23:56 #209 #974650

>>974641
>общаясь с сервером через xml.
Соболезную

Ответы974689

17 Апр, 01:14 #210 #974689

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

Ответы974695

Dmitry 17 Апр, 01:30 #211 #974695

>>974689
json быстрее, правильно xml хуесосят.

Ответы974708

Dmitry 17 Апр, 01:31 #212 #974697

>>974621
Еще один даун не осиливший монад.

Ответы975226975236

Dmitry 17 Апр, 01:32 #213 #974698

>>974606
ES7 уже нативно поддерживается, покайся.

17 Апр, 01:42 #214 #974708

>>974695
>json быстрее, правильно xml хуесосят.
Тупой вопрос.
Как запросить\отослать json с сервера из JS в бравзере?

Ответы974717

Dmitry 17 Апр, 02:11 #215 #974717

>>974708
JSON.parse/stringify

Ответы974719

17 Апр, 02:16 #216 #974719

>>974717
>JSON.parse/stringify
А данные как получить с сервера?

Ответы974748974751974783

17 Апр, 07:42 #217 #974748

>>974719
Фетчем)

Ответы974880

17 Апр, 07:59 #218 #974751

>>974719
Не отвечайте этому шизику, у него какой-то свой чудный мир из поней и говна.

Ответы974880

22 Кб, 381x276

17 Апр, 10:54 #219 #974783

>>974719

Ответы974880

17 Апр, 10:57 #220 #974784

>>971941
Братишки, я герой этого ролика. У меня бэкграунд дизайнера, в том числе в полиграфии, хуже меня не было. Я начал верстать, освоил gulp, jade(pug), sass и тд. И теперь почти не включаю фотошоп, т.е. дизайн-верстка теперь один процесс. У меня огромный гап в области JS, я потихоньку начал вкатываться. И знаете чего не понимаю, нахуя мне вообще JS, как я буду зарабатывать 300к в секунду? Для меня JS это подключить owlcarousel.js, нампример. Какие профиты для таких верстал как я?

Ответы974785974789

17 Апр, 11:03 #221 #974785

>>974784
Когда начнешь верстать что-что сложнее ленинградки для рашко биза - поймешь

Ответы974791

17 Апр, 11:08 #222 #974789

>>974784
Никаких - иди верстай.

Ответы974791

17 Апр, 11:19 #223 #974791

>>974785
>>974789
Парни, че вы как пидоры отвечаете. Вы подсобите, епта. Как перестать верстать на HTML, а начать по-модному react-хуякт, angular-хуиляр.

Ответы974793

sage 17 Апр, 11:21 #224 #974793

>>974791
Прочитай "выразительный javascript" - книгу, все встанет на свои места, только задания делай.

https://karmazzin.gitbooks.io/eloquentjavascript_ru/index.html

Ответы974794

17 Апр, 11:21 #225 #974794

>>974793
сажа приклеилась

17 Апр, 11:35 #226 #974798

>>973556
>>973550
>>973412
Пиздец.
Я с 4 годами опыта JS + PHP + Oracle получаю ебучие 45к рублей, пребывая в перманентной депрессии. Наверное, пора по собеседованиям походить, а лучше уёбывать.

Ответы974807

17 Апр, 11:53 #227 #974801

Мимипроходил. Сисадмин, нихера не секу в вебе вашем почти. Поэтому объясните так что бы дибилу было понятно.
Есть набор данных. Термин = Определение. Хочу что бы страница со списком терминов, кликаешь на элемент списка и появляется его определение.
На php спокойно бы запилил, но вот есть такая ультрагодная вещь как github pages, а там как я понял только js.
Собственно вопрос - как из массива терминов автоматом запилить список и с помощью каких функций можно осуществить вывод конкретного определения на страницу?

356 Кб, 1280x1417

17 Апр, 12:09 #228 #974807

>>974798

17 Апр, 12:17 #229 #974816

>>973509
Лолблять, это ж днище
У меня, ссаного верстальщика, зп 25к грн выходит, думал перекачусь во фронтенды - будет выше

Хотя если для фронтенда с опытом 20 - нормальная миддловская зп, то всё грустно
Хотя, может ты не из Киева?

17 Апр, 13:10 #230 #974845

Какой есть аналог Math.random, выбирающий целые числа из списка?
Не стукайте сильно

Ответы974871

17 Апр, 13:30 #231 #974871

>>974845
https://pastebin.com/A6tA0x2n
t. несчастный с зарплатой 45к.

17 Апр, 13:39 #232 #974880

>>974748
>>974751
>>974783
Ну, просто.
Есть XMLHttpRequest.
А json чем ловить? Что за фетч?

Ответы974971

17 Апр, 14:54 #233 #974971

>>974880
https://pastebin.com/NiXj5ZKT

Ответы974977

17 Апр, 15:04 #234 #974977

>>974971
Добра.

17 Апр, 16:49 #235 #975065

Котаны, помогите реактивному ньюфане. Нигде в документации не могу найти информацию о том, дожидается ли ReactDOM.render(), пока DOM загрузится, или нужно оборачивать это в $(document).ready

Ответы975082975154975234975289

17 Апр, 17:09 #236 #975082

>>975065
Меня аж типнуло

Ответы975087

17 Апр, 17:18 #237 #975087

>>975082
Что, прости?

Ответы975094

17 Апр, 17:24 #238 #975094

>>975087
Передернуло от вопроса и чуть нервный тик не появился.

Ответы975096

17 Апр, 17:26 #239 #975096

>>975094
От текста или от сути вопроса? Я платину спросил, что ли?

17 Апр, 19:16 #240 #975154

>>975065
Ты туториал пройти можешь?

17 Апр, 20:56 #241 #975226

>>974697
>монад
Проиграно. Что за унылый форс?

17 Апр, 21:02 #242 #975234

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

17 Апр, 21:03 #243 #975236

>>974697
А что там осиливать? Налил и пей

17 Апр, 22:04 #244 #975289

>>975065
Не дожидается, конечно.
Ты правильно про $(document).ready написал, потому react как и любая другая библиотека не работает без jquery.

Ответы975354

18 Апр, 00:19 #245 #975354

>>975289
Да ты шо! Еще, небось, DOMContentLoaded и ивент лиснеры тоже только в джиквери есть. Браузер, должно быть, без джиквери даже не запустится. Говорят, даже в центральный процессор встроен маленький хардварный джиквери.

Ответы975400

18 Апр, 00:28 #246 #975357

Хочу послать лучи поноса мозилле с их Webextensions. Для того чтобы ввести поддержку файрфокса в своем расширении пришлось переписать часть кода под спагетти-промисы и теперь я не до конца понимаю что и как у меня там происходит. Алсо эти пидоры больше месяца не аппрувят расширение в своем сторе, при этом если оно не подтверждено, ставить его могут только те у кого файрфокс ниже(!) версии 43. Уебки.

18 Апр, 02:21 #247 #975373

Здрасьте. Крудошлёп вернулся в тред.
XMLHttpRequest

Вот сидишь, пишешь фронт для реста на asp.net web api.

И если запросы асинхронные, то гарантировано ловишь еблом ексепшн. Вот, что происходит, когда запрашиваешь несуществующий ресурс:
1. АСП не находит твой ебучий ресурс. И шлёт 404
2. XMLHttpRequest.send() в случае 404 пытается, кажется, что-то достать из поля, которое в этом случае null и высирает.
3. + АСП на 404 ответ не крепит заголовков для поддержки cors, от этого жс ещё больше высирает
4. сидишь обосранный

Тут три стула.
Реализовать для моего сервера метод Head, чтобы проверять на 404 (стул с хуями).
Делать асинхронные запросы, которые, вроде, позвляют делать проверки (или нет). (мистический стул)
Трайкетчить метод, который высирает ексепшн и так обрабатывать 404 от сервера (стул с пиками).

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

Ответы975392975401

18 Апр, 07:04 #248 #975392

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

Ответы975393

18 Апр, 07:14 #249 #975393

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

18 Апр, 08:02 #250 #975400

>>975354
Ты только что заруинил очевидный сарказм.

18 Апр, 08:03 #251 #975401

>>975373
>если запросы асинхронные, то гарантировано ловишь еблом ексепшн
Ну это уже говнокод как есть.

18 Апр, 09:55 #252 #975424

Сап, кто-нибудь слышал про такую либу для редакса, что-то я не сильно понял чем она мне упростит жизнь, зато вижу как усложнит. Может у кого есть опыт?
https://github.com/acdlite/redux-actions

18 Апр, 11:37 #253 #975470

>>971814 (OP)
Зачем нужны прототипы? Я сколько не использую js, мне в реальной жизни они ни разу не пригодились.

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

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

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

Ответы975471

18 Апр, 11:41 #254 #975471

>>975470
Более того протипирование нарушает логику.

Если обычно мы создаём объект и на его основе потомков, то прототипирование используется в любом месте кода и очень легко превратить код в спагетти напрототипировав уже существующие объекты.

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

Ответы975472

18 Апр, 11:42 #255 #975472

>>975471
Короче пишите юзаете ли вы прототипы и как вы себе это оправдываете? Как живёте в мире со своей совестью?

Ответы975478975480

18 Апр, 11:57 #256 #975478

>>975472
У меня тайпскрипт, мне похуй на прототипы

18 Апр, 12:00 #257 #975480

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

18 Апр, 12:30 #258 #975486

Немного не по теме, но в общем есть у меня переменная, ее жс меняет, мне надо в лесс захуярить. Я делаю это как padding-top: @pt * 1px Иначе блядь между пикселем и цифрой пробел будет. Этот способ работает, но блядь выглядит даунски, это норм или есть норм решение? Переменная с пикселями придти не может

Ответы975488

18 Апр, 12:35 #259 #975488

>>975486
>JS меняет переменную! шок! сенсация!
показать всё что неотлажено!

Ответы975489

18 Апр, 12:39 #260 #975489

>>975488
Лесс переменную. Лучше решение годное кинь.

Здарова, я ебучий ньюфаг 18 Апр, 12:50 #261 #975498

Хочу научиться писать на js, не знаю с чего начать, что можете посоветовать?

Ответы975502975508

18 Апр, 12:56 #262 #975502

>>975498
JS for kids, javascript.info

Ответы975504

18 Апр, 12:59 #263 #975504

>>975502
Спасибо

18 Апр, 12:59 #264 #975508

>>975498
Нормальный язык выбрать не смог?

Ответы975509975510

18 Апр, 13:02 #265 #975509

>>975508
Ну учу еще с++

Ответы975513

18 Апр, 13:03 #266 #975510

>>975508
Какие нормальные есть?

18 Апр, 13:07 #267 #975513

>>975509
С++ всегда будет актуальным, учи его.

18 Апр, 13:38 #268 #975523

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

13 Кб, 1051x79

18 Апр, 14:39 #269 #975557

Подскажите, на странице есть такая ошибка. Непонятно, где именно она возникает. Знаю только то, что если фильтры подключаются (ползунки всякие), то ошибка там и есть. Как найти строку где идет обращение к undefined? Все блядь одни ссылки на либы.
Мимо не фронтендер, попросили помочь.

Ответы975572

18 Апр, 15:20 #270 #975572

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

18 Апр, 18:49 #271 #975720

>>971814 (OP)
Сап джаваскриптач, объясни пожалуйста - нахуя в событиях onClick пишут что-то вроде onClick="func(args); return false/true"? Зачём там что-то возвращается?

Ответы975752976104

18 Апр, 19:15 #272 #975752

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

front-end architect на галере

Ответы976024

59 Кб, 525x700

18 Апр, 23:21 #273 #976023

>>971814 (OP)
>javascript

18 Апр, 23:21 #274 #976024

>>975752
У меня от тебя КОРОТКОЕ ЗАМЫКАНИЕ.

18 Апр, 23:36 #275 #976044

Поясните, почему в юзерскриптах не работают функции, кроме main?

Пример тестового кода, ничего не выводится:

function main() {
var x = myFunction(4, 3);
alert(x);
}

function myFunction(a, b) {
return a * b;
}

Но если всё сделать в main, то алерт появляется. Это какое-то анальное ограничение greasemonkey или что?

Ответы976069

19 Апр, 00:30 #276 #976069

>>976044
Всё, разобрался, это, видимо, из-за grant было.

19 Апр, 01:17 #277 #976096

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

Ответы976209

19 Апр, 01:30 #278 #976104

>>975720
return false отменяет действие браузера по умолчанию, например переход по ссылке.

Джава 19 Апр, 06:49 #279 #976141

бамп

19 Апр, 06:50 #280 #976142

бамп

19 Апр, 07:23 #281 #976144

Нужен прогер, для разработки и дальнейшей работы над мобильным приложением.
Опыт работы обязателен.
Мои контакты soni~%gvebaANUSyany>0dexPUNCTUMr& /u
Зарплата от 500зеленых в месяц. В перспективе рост зп
В письме рассказать немного о себе, о своих проектах и т.п., сколько готовы уделять время работе, возраст.

19 Апр, 09:05 #282 #976166

Ребзя, а че там с WebAssembly? Я так и не понял, что это за херня. Есть годный материал на русском?

https://www.youtube.com/watch?v=8p1uLKYAwEw

Ответы976203976481

Аноним 19 Апр, 09:18 #283 #976170

Кто-нибудь шарит, как перехватить загружаемый html отредактировать и запихать обрато в браузер

Ответы976209

19 Апр, 10:45 #284 #976203

>>976166
>Я так и не понял, что это за херня
Вот смотри, есть курятина - js код, интерпретатор в браузере это перемелывает сначала в пюрешку(байткод), а потом выполняет(кушоет).
webasm - это сразу пюрешка, её не нужно перемалывать, а можно сразу кушоть.

Ответы976722

19 Апр, 10:49 #285 #976209

>>976096
>до какого урока смотреть?
Как перестанешь что-либо понимать.
>>976170
>как перехватить загружаемый html отредактировать и запихать обрато в браузер
Шта, вопрос уровня как выебать овцу если у меня вместо хуя вагина

Ответы976368

Аноним 19 Апр, 16:54 #286 #976368

>>976209
Улиент загружает страницу, но вместо того чтобы сразу исполнять ее в браузере и строить дом, клиент анализирует ее вручную или автоматически, редактирует и затем загружает в браузере. Ясно?

52 Кб, 514x448

19 Апр, 17:43 #287 #976389

Объясните нубу плз про дескрипторы. Геттер-функция это та с помощью которой мы можем назначить свойству функцию, но она как бы будет сразу возвращать значение, без вызова через скобки. А сеттер это та функция которая считывает значение с свойства (записывая его в свой параметр value) и после этого выполняется. Правильно ли я всё понял?.

Ответы976437

6126 Кб, 300x400

19 Апр, 18:44 #288 #976425

Пацаны не допираю чуток, надо чтоб нажал на кнопку, она рагорелась (это я сделал), а когда снова нажал, она сделалась обратно (не ебу как), куда копать?

Ответы976455

Аноним 19 Апр, 18:57 #289 #976437

>>976389
Геттер вызывается когда получаешь значение чего то console.log(a) читается как console.log(a.get()) аналогично с сеттерами
a = 5 читается как a.set(5)

Ответы976451

19 Апр, 19:14 #290 #976451

>>976437
Ну я разве не тоже самое написал?

Ответы976465

19 Апр, 19:15 #291 #976455

>>976425
Что-то вроде этого: https://jsfiddle.net/tk6Lodmg/
Только я не понял, что значит "рагорелась".

Аноним 19 Апр, 19:32 #292 #976465

>>976451
А что объяснять тогда?

Ответы976476

19 Апр, 19:55 #293 #976476

>>976465
Просто хотел чтобы кто-то подтвердил мои слова. Типо правильно ли я всё написал или нет.

Ответы976479

Аноним 19 Апр, 19:59 #294 #976479

>>976476
Когда хочешь получить значение вызывается геттер, из него можно вернуть любое обработанное значение. Сеттер то же самое, может вообще не присваивать ничего.
>но она как бы будет сразу возвращать значение, без вызова через скобки
Но она вызывается как раз и вернет она то что у нее в return

19 Апр, 20:01 #295 #976481

>>976166
Ненужный кал, двумя словами.

Ответы976504

19 Апр, 21:04 #296 #976504

>>976481
> адепт jquery в треде

Ответы976514976587

19 Апр, 21:19 #297 #976514

>>976504
А может от вьюшник, или реакто-бог или ангуляро-боярин?

Ответы976587

19 Апр, 23:10 #298 #976571

https://learn.javascript.ru/object-methods#ссылочный-тип - почему здесь написано что точка возвращает не функцию, а значение специального «ссылочного» типа Reference Type, которое как раз и содержит контекст для this.

А далее в главе https://learn.javascript.ru/bind#пример-потери-контекста - пишут, что "Это произошло потому, что в примере выше setTimeout получил функцию user.sayHi, но не её контекст." Так какого же хуя это произошло если точка должна передавать контекст и всё должно работать нормально, в чем дело то?

Ну допустим точно хранит контекст специально для скобок "()" и передаёт его им. Так почему она не хранит этот самый контекст когда мы передаём функцию в другую функцию или когда записываем в другую переменную? Че за хуйня. Совсем неосилятор я чет.

19 Апр, 23:31 #299 #976587

>>976514
>>976504
Причем тут это блять? От фреймворка вебасм нихуя не зависит. Он просто долбоёб.

20 Апр, 00:09 #300 #976616

Анон, мне нужен шел консоль на странице html, типа как тут https://www.codecademy.com/courses/learn-the-command-line/lessons/navigation/exercises/your-first-command где её взять?

Ответы976631

20 Апр, 00:33 #301 #976631

>>976616
планкер можно встроить вроде

Ответы976641

20 Апр, 00:53 #302 #976641

>>976631
Тебе про корову говорят, а ты про козу.

40 Кб, 817x262

20 Апр, 03:50 #303 #976686

Почему Кантор в этом примере пишет в скобках у метода apply - (context, arguments) ? Т.е понятно что значение context передаётся через внешнюю функцию, а arguments нахуя? Ведь получается что тогда эта функция запустится с аргументом - "arguments", который вообще выдает ошибку, разве нет?

Ответы976707

20 Апр, 07:01 #304 #976707

>>976686
https://www.google.com/search?q=js+arguments+object

Ответы976944

20 Апр, 08:22 #305 #976722

>>976203
то есть его компилировать придется?

Ответы976761

20 Апр, 10:19 #306 #976761

>>976722
Да, можно будет отдавать браузеру сразу байткод.

Ответы976965

20 Апр, 17:09 #307 #976944

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

Ответы977147

20 Апр, 17:46 #308 #976965

>>976761
а как это работает? нужно где-то для каждой платформы скомпиленный код держать что ли?

Ответы977039

20 Апр, 21:03 #309 #977039

>>976965
> для каждой
Для какой блять платформы?

Ответы977064

20 Апр, 21:55 #310 #977064

>>977039
Нинтендо 360, сега мастер сд, сега сатурн, генесис, плэйстэйшн 1,2,3,4 ...

простите, не удержался

20 Апр, 23:16 #311 #977088

https://learn.javascript.ru/bind - не пойму чет отличаются методы .bind от .call? Оба используются для передачи контекста?

Т.е мы делаем некую обертку-клон как .call или .apply, чтобы можно было вызывать функцию где-либо без потери контекста из точки. Но при этом можно просто вызывать user.sayHi.apply(user) ? Зачем тогда писать эту сложную функцию обертку если можно просто всегда прописывать так? Просто ради красивого кода?

Ответы977092

20 Апр, 23:23 #312 #977092

>>977088
Вроде немного понял, .bind возвращает именно функцию, а не выполняет её. Т.е мы заранее привязываем контекст к функции, которую ПОТОМ будем вызывать. Всё отличие по сути в том что bind это обёртка для того чтобы заранее передать контекст для функции которая потом будет вызвана, а .call и .apply это методы которые тут же выполняют функцию с указанным контекстом. Хз, правильно ли я всё понял.

Ответы977094

20 Апр, 23:28 #313 #977093

Какие ещё годные учебники есть вроде Кантора, хотелось бы обучаться сразу по нескольким, чтобы изучать один и тот же материал, но разными словами (мне кажется так понимание будет лучше) . Ну и естественно чтобы задания были. Кроме Выразительного Javascript есть ли что-то ещё подобное?

Ответы977095

20 Апр, 23:30 #314 #977094

>>977092
Ну да, фишка бинд, что можно сделать функцию, с частично примененными аргументами ака каррирование

20 Апр, 23:31 #315 #977095

>>977093
Фленагана можешь глянуть

Ответы977108

21 Апр, 00:11 #316 #977108

>>977095
Есть только издание 2015 года. Это ничего страшного? Хотелось бы сразу что-то на пример ES6 или похуй вообще?

Ответы977113

21 Апр, 00:14 #317 #977113

>>977108
es6 = ECMAScript 2015

Ответы977114

21 Апр, 00:15 #318 #977114

>>977113
Там это есть короче

21 Апр, 01:29 #319 #977147

>>976944
А в чем дело было?

Ответы977372

21 Апр, 10:36 #320 #977193

Посоны, как у вас там с Нодой дела в плане количества вакансий? Меньше не становится?

Ответы977228

21 Апр, 13:16 #321 #977228

>>977193
Нода это вчерашний день. Грозятся на мороз выкинуть если не начну Go изучать.

Ответы977230

21 Апр, 13:24 #322 #977230

>>977228
А можно как нибудь сразу в завтра перешагнуть не шкварясь об го?

Ответы977233

21 Апр, 13:30 #323 #977233

>>977230
Ну разве что в отпуск уйти на лет десять. Года два назад "А может на рельсах ебанём?" ещё бы сработало, а нынче вот нет. Го хотят. Хотят скейлить под хайлоад магазины цветов и лендинги.

Ответы977238

21 Апр, 13:42 #324 #977238

>>977233
Нода так-то тоже на хайлоад тянет, относительно го, да и разрабов на нее проще найти, js многие знают. покормил

Ответы977242

21 Апр, 13:50 #325 #977242

>>977238
Ты думаешь я траллакаю, а я правда говорю. На мороз, конечно, не выгоняют ещё (пока), но разговоры заводятся за го постоянно. Жс-то никуда не уходит на клиенте, ui няшный на реакте всегда писать надо, хоть под скалу. Но я ведь чувствую, что разговоры всё чаще заводиться будут про го, пока из серии наблюдений, мол вон ребята на го это написали, а вот тут как круто всё работает. Вы только посмотрите какой они rpm крутят. Гарантирую, что к концу придётся писать уже. Благо язык простой, думаю проблем не будет.

Ответы977261977276

21 Апр, 14:30 #326 #977261

>>977242
А сейчас у вас на чем бэкенд?

Ответы977265

21 Апр, 14:38 #327 #977265

>>977261
Относительно небольшой банкинг на джаве, средних размеров веб хуерга в виде магазинчиков разных мастей - рельсы (кроме одного большого, там тоже джава), приложения дашбордового типа обычно на ноде. В целом рельсы и нода довольно смешанная группа, на сносном уровне приходится знать оба стака, языки-то ладно, но инфрастуктуры и там и там гора ебаная. Я прям уверен, что к концу года будем писать на го и магазинчики и приложения на го. Банкинг, конечно, трогать не будут пока, но если пойдёт, то и джаваниггеров запрягут переписывать.

Ответы977267

21 Апр, 14:45 #328 #977267

>>977265
Ну мне кажется банкинг на го писать - сомнительно, у го нет по сути ничего кроме производительности, которая до джавы даже не дотягивает, и простоты, нет инфраструктуры, очень странно, если будет так, как ты описываешь, ладно там api писать для spa.

Ответы977285

75 Кб, 540x960

21 Апр, 14:51 #329 #977269

Сырцы, смотрю сейчас видео от Wes Bos, чувак на ванильке лепит всякие чудеса. Проблема в том что у него там fetch запрашивает json файл со списком городов, у меня этот файл не работет, не подключается. Так вот, накидайте json файлов в тырнетах к которым можно поключиться и попробывать поработать, а то гуглю хуету только выкидывает.

Ответы977273

21 Апр, 14:57 #330 #977273

>>977269
https://jsonplaceholder.typicode.com/
Как ты живешь с такими навыками гуглинга?

Ответы977282

21 Апр, 15:01 #331 #977276

>>977242
А разговоры про го, вангую, менеджеры заводят, которые сами код не пишут, а только хабру и прочую хуергу читают?
И откуда ресурсы на переписывание вообще? Никогда подобной хуйни не встречал на практике, чтобы прямо переписывали, какие-то критичные части-да, но не всё с нуля.
У меня на работе из того, где нужна скорость написано на крестах и работает в виде нативных модулей к ноде. Кстати, главный умный крестовик, что-то пробовал на го писать, пришёл к выводу, что говно и забросил.

Ответы977285

52 Кб, 758x585

21 Апр, 15:08 #332 #977282

>>977273
ЕЕЕ, спасибо. Браток, можешь пробить этот адресок, https://gist.githubusercontent.com/Miserlou/c5cd8364bf9b2420bb29/raw/2bf258763cdddd704f8ffd3ea9a3e81d25e2c6f6/cities.json
он рабочий или я просто имбицил?

Ответы977289

21 Апр, 15:10 #333 #977285

>>977276
>>977267
Да язык простой очень, я сам правда дальше нескольких хелоуворлдов не заморачивался, но в принципе терпимо. Уебанства конечно хватает, без всяких map, reduce, filter, etc чувствуешь себя как инвалид ебаный, но кого это заботит как ты себя чувствуешь.
> А разговоры про го, вангую, менеджеры заводят, которые сами код не пишут, а только хабру и прочую хуергу читают?
Так и есть.
>И откуда ресурсы на переписывание вообще?
Я утрировал конечно, что запрягут джаваниггеров переписывать. Да и меня мало их болото заботит, а новые проекты очень вероятно будем писать на го. Наш умный крестовик ничего не говорил про го, да и ему похуй вообще. Мужику сорокет, двадцать в кодинге, к нему джависты как-то плакаться пришли, что-то у них на андройде что-то не стыковалось с вебом, не знаю подробностей, но пришли они просить какое-то решение на эрланге. Он в прямом смысле за пол дня сел и накатал им всё как надо, ребята до потолка прыгали. Но он такой меланхолик, что ему похуй вообще. Скажут на го писать, он спорить не станет, за вечер освоит и будет писать. И мы будем.

Ответы977302977329

21 Апр, 15:17 #334 #977289

>>977282
http://jsbin.com/pidedodoqi/edit?js,console
Всё работает.

Ответы977292

21 Апр, 15:22 #335 #977292

>>977289
А у меня в браузере вот такую хуету показывает
net::ERR_NAME_RESOLUTION_FAILED

Ответы977295

21 Апр, 15:29 #336 #977295

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

21 Апр, 15:33 #337 #977302

>>977285
>Скажут на го писать, он спорить не станет, за вечер освоит и будет писать. И мы будем.
И меня заставят. Блядь, как же это печально, какая же у меня дикая фрустрация и бессильная что-либо изменить злоба от этого го.

21 Апр, 16:13 #338 #977329

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

Ответы977337

21 Кб, 399x336

20 Кб, 475x282

21 Апр, 16:36 #339 #977337

>>977329
Choose your weapon.

Ответы977426

21 Апр, 17:25 #340 #977372

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

21 Апр, 19:03 #341 #977426

>>977337
Дилдо где?

Ответы977428

21 Апр, 19:09 #342 #977428

>>977426
За щекой проверь и в анусе

Ответы977434

21 Апр, 19:38 #343 #977434

>>977428
Нашел в жопе у парня, спасибо

21 Апр, 20:46 #344 #977456

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

21 Апр, 23:07 #345 #977516

https://jsfiddle.net/ewrdpLab/1/
Не понимаю, почему нельзя сохранить инфу из ajax-запроса в глобальную переменную, почему первый алерт делает то что должен, а второй выдает undefined

Ответы977521

21 Апр, 23:25 #346 #977520

http://plnkr.co/edit/O7MdSdZhtWQXnOssIhcB?p=preview
Нихуя не пойму, вот если прописать перед функциями this.loginOk.bind(user), this.loginFail.bind(user) то всё работает, но не пойму почему без этого не работает? И как вообще происходит срабатывание этой функции?
1) checkPassword() вызывает функцию ask() и передаёт ей параметры.
2) loginOk.bind(user) возвращает обертку функции loginOk которая вызывается в контексте user.
3) Но нахуй this прописывать? Но ведь если я припишу this , то по логике эта обертка (bind) будет запускаться в контексте ask(), т.е текущего или нет?

Ответы977522

21 Апр, 23:36 #347 #977521

>>977516
Сначала undefined?

21 Апр, 23:36 #348 #977522

>>977520
Т.е насколько я понимаю просто передавая loginOk.bind(user), loginFail.bind(user) , то функция ask() начинает запускать их в своем контексте. А когда указывается this, то они вызываются в контексте объекта, в котором собственно и вызываются? Но разве функция checkPassword() сама по себе не является объектом? Ведь получается this должен передавать именно этот объект, а не какой-то внешний, разве нет? Вроде блять прочитал 2 раза эту тему про this, понимаю что контекст this присваивается из того места, откуда была вызвана эта функция, но вот такие случаи почему-то в уроке не проговариваются.

Ответы977531

21 Апр, 23:52 #349 #977531

>>977522
checkPassword запускается с контекстом user. Т.е. this внутри нее user. Ты хочешь передаваемые функции прибить к user, поэтому пишешь bind this. Т.к. там просили не привязывать к user напрямую вдруг ссылка изменится.

Ответы977553

22 Апр, 00:38 #350 #977553

>>977531
>Т.е. this внутри нее user
Ну это понятно, но почему вызывая внутри функции checkPassword() функцию ask() и передавая этим параметрам this - он не становится объектом checkPassword()? Возможно я недопонял тему, но this вызывается именно в контексте обычного объекта, а не объекта-функции?

22 Апр, 00:39 #351 #977554

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

75 Кб, 958x496

22 Апр, 00:46 #352 #977555

А если не ставить this перед точкой, т.е просто loginOk.bind(this) то как будет происходить последовательность? Т.е я понимаю что произойдёт ошибка, выдаёт что loginOk in not defined. Кто именно не находит эту переменную, функция ask() или checkPassword() ?

Ответы977564977582977613

22 Апр, 01:35 #353 #977564

>>977555
Блять, сука, пиздуй читать про ооп в js и не задавай тупые вопросы уровня laba3

Ответы977577

22 Апр, 01:56 #354 #977577

>>977564
читаю кантора, принципы ооп у него уже идут после этой темы, сорян

22 Апр, 03:01 #355 #977582

>>977555
Сам тоже только учусь, поэтому могу быть не прав, но ворде как checkpassword. Ask тут только инициализируется, она пока типа не при чем. Это как если бы ты вместо this.password написал бы просто password. Получил бы тоже ошибку плана "че за пассворд, не знаю такого".

А биндишь ты для того, что эти твои методы не теряли контекст , когда вызываются изнутри ask. В функциях обычно this=undefined.

22 Апр, 08:09 #356 #977613

>>977555
Ты не с той стороны думаешь.
Еще раз.
Ты вызываешь checkPassword. Если с user. впереди то this внутри это user. Если без, то при use strict undefined, иначе глобальный объект.
Далее внутри вызывается ask с передачей параметров.
Мы все еще находимся внутри checkPassword, поэтому this такой же какой мы определили выше. ask тут вообще не при чем в данный момент, она просто вызывается получая параметры.

Ответы977628

22 Апр, 10:46 #357 #977628

>>977613
>Если без, то при use strict undefined, иначе глобальный объект.

никакого undefined там не будет, переменная просто не будет найдена. Undefined лишь тогда когда функция вызывается без контекста какого-либо объекта.

Ответы977632977640

22 Апр, 10:58 #358 #977632

>>977628
Переменная не найдена - это и есть undefined, если чо

Ответы977659

16 Кб, 442x310

22 Апр, 11:42 #359 #977640

>>977628
> лишь тогда когда функция вызывается без контекста какого-либо объекта
> Если без, то при use strict undefined, иначе глобальный объект

Именно это и имелось ввиду. Видимо плохо написал.

22 Апр, 12:03 #360 #977646

Допустим я хочу окунуться в мир жаваскрипта и сделать какую нибудь йоба 2д игру, что посоветуете из фреймворков движков там вот это все?

Ответы977648

22 Апр, 12:04 #361 #977648

>>977646
>что посоветуете из фреймворков движков там вот это все?
погуглить

Ответы977650

22 Апр, 12:08 #362 #977650

>>977648
Нет такого фреймворка, зачем врешь?

22 Апр, 12:27 #363 #977659

>>977632
переменная не найдена это is not defined

90 Кб, 886x654

22 Апр, 12:38 #364 #977669

Это снова ваш дебил не понимающий this.
Вот например this (выделил стрелочкой), контекст определяется тем, где вызвана эта функция. Получается что эта функция вызывается в контексте функции ask(), у которой значение this = undefined, правильно? Иначе если нет, тогда почему именно здесь возникает ошибка?

Ответы977731977746

22 Апр, 14:05 #365 #977731

>>977669
у твоей анонимной функции которая оборачивает то место куда ты стрелочкой показываешь и которая будет вызвана на 66 строке this будет undefined.

Ответы977759

22 Апр, 14:37 #366 #977746

>>977669
>у которой значение this = undefined, правильно?
Значение this будет ссылаться на глобальный объект, именно в этом контексте вызывается твоя функция. В случае браузера на Window, либо на global в случае ноды.
>почему именно здесь возникает ошибка
Скорее всего из-за того, что в твоем глобальном контексте не определен loginDone.

Ответы977756977759

22 Апр, 14:50 #367 #977756

>>977746
Не будет там никакого глобального объекта при use strict. Еще больше путаешь беднягу!

Ответы977759

22 Апр, 14:55 #368 #977759

>>977731
>>977746
>>977756

Ну я это и написал как бы... можно было бы просто сказать что Да, ты прав. А то я начал читать и чуть не запутался опять =D

22 Апр, 15:27 #369 #977781

лол с js.
у меня есть 25к документов. их нужно обработать.

docs.forEach(doc, function(doc) {
... addDoc(doc).then(function(indexes) {
...... console.log("blah")
...... // do something with indexes
... })
})

вот что получается:
памяти сожрал 1гб, ни одного вывода "blah" не увидел. не стал ждать и прибил процесс.

как же быть? рекурсивно, вот так:
function load(i) {
... let doc = docs
... addDoc(doc).then(function(indexes) {
...... // do something with indexes
...... load(i + 1)
... })
}
смешно, тому что не просто. 25к записией и не схватил stackoverflow, хвостовая рекурсия что ли есть?

Ответы977785

sage 22 Апр, 15:34 #370 #977785

>>977781
т.е. addDoc возвращает new Promise.
ладно, хуй знает как промисы работают.
нет хвостовой оптимизации. попробовал простую рекурсивную ф-у и схватил stackoverflow.

Ответы977843

68 Кб, 896x492

22 Апр, 15:56 #371 #977812

Ну вот тогда опять первый пример (скрин). Почему this.loginOk.bing(this) находит этот самый loginOk (с помощью первого this), ведь функция также вызывается в контексте ask() ?

Ответы977835

22 Апр, 16:44 #372 #977835

>>977812
На 22 строке функция ask еще не вызвана, ты тут просто передаешь ей параметры. На 22й строке this = user, именно поэтому все находится как надо. Далее, когда управление переходит в ask (условно на 4ю строку) , ok представляется собой следующее: function() {alert this.login + 'вошел на сайт'} c привязанным контекстом this = user. То же самое касается fail.

Хз, если все еще не доходит, я рекомендую тебе пока забить и просто читать дальше. Со временем в голове все устаканится как надо.

Ответы977870

22 Апр, 17:14 #373 #977843

>>977785
кажется понял. пример:
new Promise((resolve) => {
.. console.log("I'm here")
.. resolve()
}).then(() => console.log("Resolved."))
console.log("Hello")

вывод:
I'm here
Hello
Resolved.

когда вызываем resolve(), то он не вызывает then(() => ...) сразу. если бы было так, то вывод был бы в другом порядке.
как я понял, при вызове resolve(), добавляется сообщение в очередь событий. про события:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop
пока не завершится обработка собития, другие события не выполняются. поэтому, в предыдущем примере, обработчики не выполнялись во время docs.forEach.

Ответы977858

sage 22 Апр, 17:38 #374 #977858

>>977843
вот так понятнее, что используется очередь событий:

let promise = new Promise((resolve) => resolve())
promise.then(() => console.log(1))
console.log("a")
promise.then(() => console.log(2))

вывод:
a
1
2

22 Апр, 18:16 #375 #977870

>>977835
Просто как-то странно осознавать что передавая готовой функции параметры (т.е запуская ask() ) - она по какой-то причине не запускается (ну видимо потому что внешняя функция checkPassword() ещё не вызвана и поэтому не вызывает свою внутреннюю. Ну в общем ладно, пойду ещё раз всё переварю в голове и буду дальше учить. Хотя уже 2й день ебусь с этими задачами и в голове всё равно каша.

Ответы977909

22 Апр, 19:00 #376 #977909

>>977870
Ничего не понял из того что ты написал, но попробую еще раз поэтапно, на основе последнего скрина:
1) Мы за кадром вызываем user.checkPassword(), верно?
2) Управление переходит на 22 строку, где идет инициализация вызова ask, с передачей соотв.параметров. Перечислим:
question = "Ваш пароль?"
answer = '12345'
ok = function() {alert this.login + ' вошел на сайт'} , с привязанным контекстом user (то бишь внутри этой функции this = user, а значит this.login будет равняться user.login)
fail = function() {alert this.login + ' ошибка входа'} , с привязанным контекстом this = user
3) Перескакиваем на 4 строку. Начинает работать ask, т.к. мы только что ее вызвали, с указанными выше аргументами.
4) Дальше идут твои проверки и соотв. вызов ok или fail, которые выведут адекватную инфу, потому что this у них равняется юзеру. Конец.

Ответы977925

22 Апр, 19:12 #377 #977925

>>977909
>ok = function() {alert this.login + ' вошел на сайт'} , с привязанным контекстом user (то бишь внутри этой функции this = user, а значит this.login будет равняться user.login)

Это контекст, внутри ФУНКЦИИ привязывается через bind.

А я не понимал всё это время, почему самый первый this (перед точкой) имеет ссылку на объект, ведь значение this присваивается только на момент ВЫЗОВА функции, но функция ask() при этом не вызывается. И т.к this находится в параметрах ask(), я думал что этот контекст должен присваиваться только после запуска этой функции и не иметь отношение к функции checkPassword(), ну ибо вызов ask() вложен в неё и я думал это как-то по другому здесь будет работать.

22 Апр, 19:31 #378 #977946

>>971814 (OP)
>Ссылка на прошлый тред: >>961365 (OP) (OP)
>
js боль

41 Кб, 1165x251

22 Апр, 21:04 #379 #977988

>>971814 (OP)
Посоны, запилил юзерскрипт https://pastebin.com/ZciW5CXQ, который в gmail показывает точное время вместо формата "месяц день". Как букмарклет скрипт работает. Работает и как скрипт, добавленный через tampermonkey если в качестве параметра addeventlistener указать DOMNodeInserted, но при этом выбрасывает ошибку Uncaught RangeError: maximum call stack. А если в качестве параметра использовать DOMContentLoaded (что я и хочу в результате использовать) то вообще не работает. Почему? Может кто-нибудь объяснить поведение скрипта при DOMNodeInserted и DOMContentLoaded?

Ответы978854

23 Апр, 00:51 #380 #978128

Аноны, реально ли выучить этот язык с 0, если с подобным вообще знаком не был? Какие подводные?

Ответы978133

23 Апр, 01:02 #381 #978133

>>978128
Не не реально, все программисты с рождения все знают.

23 Апр, 01:19 #382 #978148

А по фриланс заказам с JavaScript как обстоят дела?

Ответы978225

23 Апр, 07:54 #383 #978225

>>978148
Учи php тогда

sage 23 Апр, 13:45 #384 #978350

Сап, вопрос к работающим анонам
Предположим вас берут на проект, там фрилансерами из индии и снг нахуячено много нечитаемого кода. Как поступать? Переписывать, оставлять так, как вообще разобраться в нем?
Написано на backbone, но так что кажется будто я вообще впервые backbone вижу.

Ответы978371

23 Апр, 13:50 #385 #978354

Превратится ли весь код на JavaScript в legacy, когда релизнется WebAssembly?

23 Апр, 14:00 #386 #978371

>>978350
>Переписывать
у нас за такие слова убивают нахуй

Ответы978380

sage 23 Апр, 14:06 #387 #978380

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

23 Апр, 21:35 #388 #978720

Я к вам из фронтенд треда. Дело такое: я распиздяй, который не работя и располагая большим количеством свободного времени решил себя занять изучением чего-нибудь, чтобы мозг не атрофировался+мало ли, может работу найти.
Начал по шапке фронтенд треда HTML/CSS + JS.
Сейчас есть четкое осознание, что верстка меня люто-бешено бесит, и учить ее дальше желания никакого нет. А вот JS- это любопытненько.
Есть ли смысл забить на верстку, начать учить Node.js с целью может быть когда-нибудь вкатиться в бэкенд, или для такого как я это нереально?
Если все же реально, то за что браться после Кантора? Сразу за node.js или как?

Ответы978728978729

23 Апр, 21:58 #389 #978728

>>978720
Фронтендер-джун без умения верстать нахуй никому не нужен. Бекендер-джун на одной только ноде тоже.
Вёрстка бесит лентяев-неосиляторов, в 2017-м верстать в десятки раз проще, чем в 2007-м. Вообще, если ты только начал свой вкат в IT, а тебя уже что-то "люто-бешено бесит", то это повод призадуматься.
мимо-бекендер-умеющий-адаптивно-верстать

Ответы978733

23 Апр, 22:00 #390 #978729

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

23 Апр, 22:14 #391 #978733

>>978728
Я уже и сам понял, что фронтенд- не мое.
Если все же попробовать вкатиться в бекенд, что мне нужно кроме ноде?

Ответы978838

59 Кб, 604x321

23 Апр, 22:32 #392 #978743

Долбанный javascript, как сверхзвуковой самолет, за ним не угонишься. Как вы постоянно учите эти бесконечные фреймворки???? Или фреймворки простые?
И самый пиздец, что в перспективе js серьезно потеснит все остальные языки.

Ответы978748

23 Апр, 22:36 #393 #978748

>>978743
Последние несколько лет ничего кардинально нового не выходило. Как сидели на реакте, так и сидят.

Ответы978754

23 Апр, 22:42 #394 #978754

>>978748
А как реакт достает данные из mysql? Посредством похапэ или ноды?

Ответы978778978837978846

23 Апр, 23:03 #395 #978771

>>971814 (OP)
хоспаде, у меня щас глаза вытекут от бэкенда на ноде.
пхпшник

23 Апр, 23:06 #396 #978772

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

23 Апр, 23:16 #397 #978778

>>978754
Чего угодно

24 Апр, 00:17 #398 #978837

>>978754
Ты ебанутый? Мускул находится в недрах сервера, а реакт - библиотека мало того, что для фронта, так еще и тупо для view-части, схуяли-насрали они как-то вообще должны между собой общаться?

24 Апр, 00:17 #399 #978838

>>978733
Фронтенд )

Я вообще сомневаюсь, что на ноду берут не фул стеков, потому что она учавствует только, как апи, а вся движуха с данными уже проиходит на фронте в реактах/ангулярах

А так mongo, sql и тд базы данных

24 Апр, 00:21 #400 #978846

>>978754
ajax запрос к серверу, сервер(node/php/python) делает запрос к базе, получает ответ, формирует json, отдает клиенту, react вставляет данные в шаблон html, профит, если где-то ошибся, поправьте.

Ответы978851

24 Апр, 00:25 #401 #978851

>>978846
Но сам react при этом в ajax не умеет, нужно jquery или еще чем пользоваться, вроде fetch популярная либа.

Ответы978941

24 Апр, 00:34 #402 #978854

>>977988
bump blyad

24 Апр, 07:38 #403 #978941

>>978851
Фэч не либа, а стандарт, просто ставят всякое для старых браузеров.

Ответы978978

70 Кб, 700x467

24 Апр, 07:55 #404 #978942

Слоник вкатился.
Посоны, есть короч одно web-приложение (если можно так назвать). Тестировалось на денвере.
Состоит из клиентской части - на стороне клиента JS считает всю тригонометрию с рендерингом и рисует картиночка в canvas. И серверной части, где собственно и происходит вся оставшаяся математика.
Пользователь с сервера получает два массива себе в браузер, в каждом массиве по 20 элементов (скажем так, координаты, целые числа, могут быть отрицательными). После всей отрисовки пользователь жмякает кнопочку и на сервер Аяксиной улетает некоторое значение (индекс). На сервере происходит немношк срань, но пришлось искать некий компромисс. В текстовом файле (serialize) хранится массив на 20 тыщ элементов, каждый из элементов этого массива - в свою очередь вложенный массив на 20 элементов (те самые, которые пихаем в Json-строку и отправляем клиенту). Когда от клиента получаем индекс, с соответствующим ему элементом массива делаем некоторые действия, пихаем обратно в файл и выдаем клиенту новых два массива. Чому не SQL? У клиента есть еще одна ОСОБАЯ КНОПОЧКА, которую ТЕОРЕТИЧЕСКИ он должен жмякать после некоторого (неопределенного, в зависимости от того, что там JS отрисует) числа нажатий на обычную кнопочку. После нажатия на ОСОБУЮ КНОПОЧКУ на сервере происходит вся магия. Достается весь этот 20-тыщ-элементов-массив, делится на 200 маленьких массивчиков по 100 элементов, каждый в свою очередь делится пополам. Сортируется вся эта поебота. Создается временный массив, куда некоторые (в зависимости от...) из элементов маленьких массивчиков складываются, хм, надо тут еще придумать, как из каждого массивчика элементы между собой обменивать. В общем вся эта хуйня смешивается, считается, пихается из временного массива обратно, еще раз сортируется, пихается обратно в файл. Ну и пользователю опять выдаем два массива. Всё заебись работает. Но это у меня работает, томущо знаю, когда на ОСОБУЮ КНОПОЧКУ надо жать. Но вот я некоторые функции в приложении еще реализую и на хабру выложу - мне первые же 10 пользователей сайт ушатают. Даже если сто раз объясню, куда и в каком порядке нажимать - на особую кнопочку всегда найдется особый пользователь.
Так я вот подумал. Серверная часть мне и не нужна, по большому счету. Всю серверную математику можно в JS посчитать. А вот с хранением данных возникает вопрос. Какие там в JS завезли механизмы для хранения больших объемов данных на стороне клиента?

70 Кб, 700x467

24 Апр, 07:55 #404 #978942

Слоник вкатился.
Посоны, есть короч одно web-приложение (если можно так назвать). Тестировалось на денвере.
Состоит из клиентской части - на стороне клиента JS считает всю тригонометрию с рендерингом и рисует картиночка в canvas. И серверной части, где собственно и происходит вся оставшаяся математика.
Пользователь с сервера получает два массива себе в браузер, в каждом массиве по 20 элементов (скажем так, координаты, целые числа, могут быть отрицательными). После всей отрисовки пользователь жмякает кнопочку и на сервер Аяксиной улетает некоторое значение (индекс). На сервере происходит немношк срань, но пришлось искать некий компромисс. В текстовом файле (serialize) хранится массив на 20 тыщ элементов, каждый из элементов этого массива - в свою очередь вложенный массив на 20 элементов (те самые, которые пихаем в Json-строку и отправляем клиенту). Когда от клиента получаем индекс, с соответствующим ему элементом массива делаем некоторые действия, пихаем обратно в файл и выдаем клиенту новых два массива. Чому не SQL? У клиента есть еще одна ОСОБАЯ КНОПОЧКА, которую ТЕОРЕТИЧЕСКИ он должен жмякать после некоторого (неопределенного, в зависимости от того, что там JS отрисует) числа нажатий на обычную кнопочку. После нажатия на ОСОБУЮ КНОПОЧКУ на сервере происходит вся магия. Достается весь этот 20-тыщ-элементов-массив, делится на 200 маленьких массивчиков по 100 элементов, каждый в свою очередь делится пополам. Сортируется вся эта поебота. Создается временный массив, куда некоторые (в зависимости от...) из элементов маленьких массивчиков складываются, хм, надо тут еще придумать, как из каждого массивчика элементы между собой обменивать. В общем вся эта хуйня смешивается, считается, пихается из временного массива обратно, еще раз сортируется, пихается обратно в файл. Ну и пользователю опять выдаем два массива. Всё заебись работает. Но это у меня работает, томущо знаю, когда на ОСОБУЮ КНОПОЧКУ надо жать. Но вот я некоторые функции в приложении еще реализую и на хабру выложу - мне первые же 10 пользователей сайт ушатают. Даже если сто раз объясню, куда и в каком порядке нажимать - на особую кнопочку всегда найдется особый пользователь.
Так я вот подумал. Серверная часть мне и не нужна, по большому счету. Всю серверную математику можно в JS посчитать. А вот с хранением данных возникает вопрос. Какие там в JS завезли механизмы для хранения больших объемов данных на стороне клиента?

Показать весь текст
Ответы978943

24 Апр, 07:59 #405 #978943

>>978942
А просто блочить одну кнопку и делать доступной другую в нужный момент не интересно?

Ответы978946

7 Кб, 649x255

24 Апр, 08:37 #406 #978946

>>978943
Не интересно.
>ОСОБАЯ КНОПОЧКА, которую ТЕОРЕТИЧЕСКИ он должен жмякать после некоторого (неопределенного, в зависимости от того, что там JS отрисует) числа нажатий на обычную кнопочку.

В общем накидал тут примерный размер массива https://pastebin.com/qMCS8E0s
localStorage вывезет? А если мы еще и всю историю хранить будем (массив так раз в 32 побольше станет)?

Ответы978947

24 Апр, 08:47 #407 #978947

>>978946
Так "неопределенного" или "в зависимости"?
Если есть зависимость, значит есть логика. Передай её состоянию кнопки.

локалСторедж до 10 Мб держит

Есть ещё индекседДБ и сервис-воркеры в новых браузерах.

Ещё веб-воркеры. Позволят выполнять расчёты на стороне клиента в отдельном потоке.

У тебя явно сейчас проблема не со стороной клиента, а со своими "массивчиками в массивчиках".

Ответы978973

24 Апр, 10:14 #408 #978973

>>978947
Зависимость определяется пользователем.

24 Апр, 10:21 #409 #978978

>>978941
А понятно.

232 Кб, 597x439

24 Апр, 15:08 #410 #979145

Запилите кто-нибудь продолжение для 2016-го и 17-го годов. Я так понимаю, там ещё Вуе можно впихнуть?

Ответы979795

24 Апр, 16:01 #411 #979172

Короче эпик. Недавно в контыче списалась с куном с моего города. Случайно получилось, я давно-давно оставляла комментарий, мол, есть ли хорошие программисты в моём городе и вот недавно он отписался, мол, могу попробовать помочь.
Но это вообще не суть, так уж получилось, что он сегодня написал, мол, давай встретимся поговорим, а то мне не хочется дома сидеть весь день. Ну мне как-то особо делать в выходной тоже нечего было, почему бы и нет. Поехала в центр в условленное место. Сразу скажу, что фотографий вконтакте у него нет, кроме одной, где плохо видно лицо, а тела вообще нет. Ему 18, мне 20. Ну приезжаю, опоздала ещё, он где-то там минут 10 сидел, ждал, лол. И что я вижу? Мелкий (173 от силы), ужасно одетый в какую-то непонятную куртку цвета блевотины и ботинки цвета мочи чмоша. Может какую-нибудь одинокую жируху это и устроило бы, как собеседник на вечер, но я еле удержалася от того, чтобы развернуться и уйти. Ну похуй, решила не обижать. Пошли в кофейню. Снимаем куртки, я выставляю на показ мои пиздатые татухи, iPhone 7 Plus и шмот за 700 баксов. А он блядь в ОГРОМНОМ худи на молнии(!), которая расстегнута и из-под неё видно ебаную футболку с эмблемой JavaScript (!!!). И телефон вроде был Xiaomi. Я вздохнула и заказал кофе. Сидим, говорим. Стеснительный, пиздец. Просто ходячий комплекс. По ходу диалога выясняется, что он играет в ебаную Доту 2, пишет на React + Redux, чето там пиздел ещё про Webpack, ES6, типа модно... Смотрит аниме и читает комиксы. Просто ничтожество. Ну, я вздохнула, потравила немного баек из моей жизни, вышли из кофейни, пошароёбились немного по центру города. Всё это время я чувствовала себя так, как будто гуляю с младшим братом. Сняла денег с карты, захотелось ещё кофе, пошли в другую кофейню. Заходим. Берём кофе. Он опять снимает куртку и я снова вижу эту блевотную ебливую кофту с футболкой с ебучим логотипом JavaScript, которые скрывают его дрыщявую фигуру, делая его ещё более жалким. Ну и сидит, что-то пиздит про виртуальный DOM, я медленно разглядываю его. Плеч нет. На лице прыщи. Полноватые ноги. Детские кисти рук. Тонкие, убогие губы. Облысение. Рядом снуёт высокий, подтянутый блондин официант с потрясающей улыбкой, я сижу с ребёнком, который мне рассказывает, почему Facebook — лучшие.

Короче, меня прорвало. Я начала разносить его по каждому пункту, начиная с доты 2 и React + Redux, которые безусловно являются говном для даунов, к которым нормальный парень никогда не притронется и заканчивая его сука кофтой, встречают по одёжке, провожают по уму, запомните это, тупорылые долбоёбы. Всё это время он сидел и молчал с какой-то жалкой полуулыбкой, иногда пытаясь что-то промямлить в духе "за React будущее", "мы передаем props в компоненты", "мне нравится Javascript" и прочие инфантильную хуйню сосачерских вырожденецев-программистом.. Финалом стало то, что я сказала ему: "В моих глазах ты не выглядишь, как мужчина", мы расплатились, я довёла его до остановки, дождалась, пока автобус увезёт его нахуй и пошла смотреть на пожар: какой-то сраный склад загорелся и я пару минут наблюдала это зрелище, наслаждаясь видом и табаком. И блядь, как кульминация всей этой хуйни, я приехала домой, легла спать, а он пишет мне "Приятных тебе снов" и предлагает пойти с ним куда то. Я просто угарела, сисоньки мои.

24 Апр, 16:01 #411 #979172

Короче эпик. Недавно в контыче списалась с куном с моего города. Случайно получилось, я давно-давно оставляла комментарий, мол, есть ли хорошие программисты в моём городе и вот недавно он отписался, мол, могу попробовать помочь.
Но это вообще не суть, так уж получилось, что он сегодня написал, мол, давай встретимся поговорим, а то мне не хочется дома сидеть весь день. Ну мне как-то особо делать в выходной тоже нечего было, почему бы и нет. Поехала в центр в условленное место. Сразу скажу, что фотографий вконтакте у него нет, кроме одной, где плохо видно лицо, а тела вообще нет. Ему 18, мне 20. Ну приезжаю, опоздала ещё, он где-то там минут 10 сидел, ждал, лол. И что я вижу? Мелкий (173 от силы), ужасно одетый в какую-то непонятную куртку цвета блевотины и ботинки цвета мочи чмоша. Может какую-нибудь одинокую жируху это и устроило бы, как собеседник на вечер, но я еле удержалася от того, чтобы развернуться и уйти. Ну похуй, решила не обижать. Пошли в кофейню. Снимаем куртки, я выставляю на показ мои пиздатые татухи, iPhone 7 Plus и шмот за 700 баксов. А он блядь в ОГРОМНОМ худи на молнии(!), которая расстегнута и из-под неё видно ебаную футболку с эмблемой JavaScript (!!!). И телефон вроде был Xiaomi. Я вздохнула и заказал кофе. Сидим, говорим. Стеснительный, пиздец. Просто ходячий комплекс. По ходу диалога выясняется, что он играет в ебаную Доту 2, пишет на React + Redux, чето там пиздел ещё про Webpack, ES6, типа модно... Смотрит аниме и читает комиксы. Просто ничтожество. Ну, я вздохнула, потравила немного баек из моей жизни, вышли из кофейни, пошароёбились немного по центру города. Всё это время я чувствовала себя так, как будто гуляю с младшим братом. Сняла денег с карты, захотелось ещё кофе, пошли в другую кофейню. Заходим. Берём кофе. Он опять снимает куртку и я снова вижу эту блевотную ебливую кофту с футболкой с ебучим логотипом JavaScript, которые скрывают его дрыщявую фигуру, делая его ещё более жалким. Ну и сидит, что-то пиздит про виртуальный DOM, я медленно разглядываю его. Плеч нет. На лице прыщи. Полноватые ноги. Детские кисти рук. Тонкие, убогие губы. Облысение. Рядом снуёт высокий, подтянутый блондин официант с потрясающей улыбкой, я сижу с ребёнком, который мне рассказывает, почему Facebook — лучшие.

Короче, меня прорвало. Я начала разносить его по каждому пункту, начиная с доты 2 и React + Redux, которые безусловно являются говном для даунов, к которым нормальный парень никогда не притронется и заканчивая его сука кофтой, встречают по одёжке, провожают по уму, запомните это, тупорылые долбоёбы. Всё это время он сидел и молчал с какой-то жалкой полуулыбкой, иногда пытаясь что-то промямлить в духе "за React будущее", "мы передаем props в компоненты", "мне нравится Javascript" и прочие инфантильную хуйню сосачерских вырожденецев-программистом.. Финалом стало то, что я сказала ему: "В моих глазах ты не выглядишь, как мужчина", мы расплатились, я довёла его до остановки, дождалась, пока автобус увезёт его нахуй и пошла смотреть на пожар: какой-то сраный склад загорелся и я пару минут наблюдала это зрелище, наслаждаясь видом и табаком. И блядь, как кульминация всей этой хуйни, я приехала домой, легла спать, а он пишет мне "Приятных тебе снов" и предлагает пойти с ним куда то. Я просто угарела, сисоньки мои.

Показать весь текст
Ответы979190979297979299

24 Апр, 16:50 #412 #979190

>>979172
Зарепортил

24 Апр, 20:40 #413 #979297

>>979172
Какая-то переделанная паста?

24 Апр, 20:54 #414 #979299

>>979172
Но вед он прав, за реакт будущее

24 Апр, 23:50 #415 #979441

>>972862
> взлетела, вакансий море. Как считаете, можно и дальше дрочить его? С моей колокольни выглядит так, что еще пару лет его ничто не перегонит, но может я зашорен и уже пора потихоньку готовить перекат? И если да, то куда именно? Часто слишу про второй ангуляр и вью, что сильнее укрепит мои позиции на жоп маркете?

другой анон. Сейчас вкатываюсь на него и, пока что, все идет очень даже хорошо. Можешь пояснить за подводные?

25 Апр, 00:17 #416 #979457

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

41 Кб, 700x467

25 Апр, 10:24 #417 #979612

Посоны, а поясните за window.onload = function()
Зачем он нужен и нужен ли он вообще?

Ответы979620

25 Апр, 10:36 #418 #979620

>>979612
DOM, картинки и прочая залупа загружаются не моментально и к моменту начала исполнения скрипта могут быть недоступны. Если тебе нужно оперировать с домом, например, то разумно сначала подождать, пока он прогрузится

Ответы979636

25 Апр, 10:54 #419 #979636

>>979620
DOM - это вся html-залупа на страничке?

Ответы979639

sage 25 Апр, 10:59 #420 #979639

>>979636
DOM = Document Object Model - это внутреннее представление странички в браузере

Ответы979642

42 Кб, 700x467

25 Апр, 11:01 #421 #979642

>>979639
Зочем сегаешь? Я ж слоник и ваш js практически нихуя не шарю.

Ответы979644979650

261 Кб, 1000x1339

25 Апр, 11:03 #422 #979644

>>979642
Вот ту книгу с носорогом в 2013 прочитал и уже нихуя не помню.

25 Апр, 11:09 #423 #979650

>>979642
Сорян, саша приклеилась

Ответы979695

8 Кб, 648x270

25 Апр, 12:01 #424 #979695

>>979650
А вот такой еще вопрос. Есть массивчик, как на пикче. Как мне его тудым-с в локалсторедж запихать? Прям вот так:
localStorage[hello] = array;
Или его надо как-то сериализовать как в PHP?
Индекс n у меня не от нуля идет (anglemin). Индексы похерятся, когда я его из локалстореджа обратно доставать буду?

Ответы979707

25 Апр, 12:14 #425 #979707

>>979695
https://developer.mozilla.org/ru/docs/Web/API/Window/localStorage
Все с твоими индексами нормально должно быть, в жс массив - это просто объект с ключами-числами и с прототипом Array.prototype

Ответы979733

10 Кб, 655x307

65 Кб, 555x986

25 Апр, 12:49 #426 #979733

>>979707
Че-т бяка получается. В локалсторедж записывается каша.

Ответы979735

25 Апр, 12:53 #427 #979735

>>979733
https://developer.mozilla.org/en-US/docs/Web/API/Storage/setItem
Написано же английским по белому - нужен DOMString. JSON.stringify(array) сделай перед тем, как засовывать

Ответы979745

25 Апр, 13:03 #428 #979745

>>979735
Так?
localStorage["hello"] = JSON.stringify(array);
var array2=JSON.parse(localStorage["hello"]);

Ответы979752

25 Апр, 13:09 #429 #979752

>>979745
localStorage.setItem("hello", JSON.stringify(array));
var array2 = JSON.parse(localStorage.getItem("hello"));

Ответы979758

65 Кб, 1352x937

25 Апр, 13:14 #430 #979758

>>979752
f в проебе

Ответы979774

25 Апр, 13:32 #431 #979774

>>979758
Так у тебя массив или солянка из хуй пойми чего?

Ответы980095

25 Апр, 13:35 #432 #979775

>var
>25 april
пошел нахуй гандон

Ответы979782980095

25 Апр, 13:47 #433 #979782

>>979775
Ладно тебе, не видишь - человек не шарит, что ты сердишься-то сразу

25 Апр, 14:09 #434 #979795

>>979145
Пикчу даун делал

25 Апр, 14:40 #435 #979819

https://learn.javascript.ru/decorators#кеширующий-декоратор - вот задание.
https://jsbin.com/nosisoqabe/edit?html,js,console - вот мой код.
Подскажите плз в чем проблема и почему не работает?

Ответы979843

25 Апр, 15:04 #436 #979843

>>979819
Ты cache не объявил.
В ошибке это и написанно.
Cannot set property 'result' of undefined

Ответы979847

25 Апр, 15:09 #437 #979847

>>979843
cache это глобальная переменная и она объявлена если что...

Ответы979858

25 Апр, 15:22 #438 #979858

>>979847
Да, вижу.
Ты ее объявил, но значения не присвоил.
После объявления в переменной лежит (переменная ссылается) undefined.
А ты работаешь с ней как с объектом - обращается через точку к свойствам.

Пиши var cache = {};

Ответы979859979871

25 Апр, 15:23 #439 #979859

>>979858
>значения
Быстро фикс

25 Апр, 15:34 #440 #979871

>>979858
Спасибо, я в общем понял что код вообще кривой и логики в нём ноль, но всё равно спс.
Кстати когда пишу такое - cache.[arguments[0]] , то выдаёт ошибку. Можно ли всё равно как-то реализовать подобную строку? Т.е мне нужно чтобы свойство в cache называлось как первый аргумент из текущего объекта.

Ответы979873979882

25 Апр, 15:35 #441 #979873

>>979871
фикс: я долбаеб, точку забыл убрать.

25 Апр, 15:48 #442 #979882

>>979871
Всё таки доделал скрипт. Криво, косо, нечитабельно, но кое-как доделал, немного хотя бы разобрался, но всё равно в голове немного каша =) Первый раз с помощью отладчика в браузере разобрался почему не работает нихуя
http://jsbin.com/weyutovezu/edit?js,console - сделано.

Ответы979922979926979933

25 Апр, 16:31 #443 #979922

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

Ответы979926

25 Апр, 16:35 #444 #979926

>>979922
>>979882
Еще было бы хорошо создавать словарь cache в замыкании makeCaching, а не в глобале.

Просто перенеси var cache = {}; в самое начало makeCaching.

25 Апр, 16:37 #445 #979930

Поцоны, поясните в какую сторону вообще гуглить, и может есть какие то библиотеки, инструменты под мою задачу.
Задача:
1. Среда исполнения User.js через greasemonkey
2. Инструменты jquery или другая либа
3. Необходимо лазить по сайту (типо crawler) извлекать какую-то информацию, складировать с возможностью последующей выгрузки, и на основании страницы переходить на другую страницу.
Все это должно быть в браузере, никаких ноде.жс и тд.
Может есть уже какие то либи или как мне такое организовать?
Раньше когда нужно было что-то зациклить. Делал рекурсивный вызов через SetTimeout
https://pastebin.com/BvButcXx
И внутри соответственно AJAX запрос. Теперь когда попробовал вместо AJAX запроса вставить
>$(location).attr("href","http://example.com/"+get_uri());

Почему-то не зацикливается.

25 Апр, 16:40 #446 #979933

>>979882
Нормальный у тебя код.
Решение ведь понял.
Попробуй еще числа фибоначи на таком декораторе посчитать и без него. С декоратором будет будет в овердохуя раз быстрее.
А этот пример с рандомом не очень наглядный.

42 Кб, 700x467

25 Апр, 21:26 #447 #980095

>>979774
У меня солянка. Как f не проебать?
Если каждый элемент массива в отдельную ячейку локалстореджа писать - как это скажется на производительности? И на объеме данных в хранилище? Я так понимаю, что названия ключей тоже в этих 5мб хранятся, а названия эти подлиннее самих значений.
Хотя, можно наверное все эти f отдельным массивом записать.
>>979775
Что не так с var?

Ответы980098980186980199

25 Апр, 21:32 #448 #980098

>>980095
просто этот новомодный жсер считает, что var для лохов, для пацанов только let

Ответы980101980439

25 Апр, 21:35 #449 #980101

>>980098
const

25 Апр, 23:23 #450 #980186

>>980095
Если у тебя солянка, то нехуй называть это массивом, сделай это объектом, у которого некоторые ключи просто будут числами. Если нужна возможность итерации по свойствам с числовыми ключами - читай про Object.defineProperty и enumerable. Хранить что-то, помимо числовых ключей, в массиве - это хак и у тебя будет все ломаться, как те же stringify / parse

Ответы980336

25 Апр, 23:48 #451 #980199

>>980095
Алсо
>Что не так с var?
Не так то, что var ложит хуй на области видимости переменных и на порядок их объявления. Нихуя блять не интуитивно, что
{
var mocha=true;
}
console.log(mocha);

выдаст true. На дебаг такой глупости можно полдня убить.

Ответы980381

43 Кб, 700x467

37 Кб, 765x921

26 Апр, 09:47 #452 #980336

>>980186
Ой, да нахер еще объекты городить. Таки f буду хранить отдельным массивом в локалсторедже.

Норм сделал или наговногодил с htmlbook функции утащил?

Ответы980365

26 Апр, 10:40 #453 #980365

>>980336
Если работает, то норм

Ответы980883

26 Апр, 11:29 #454 #980381

>>980199
Блоки в "{}" не влияют на область видимости.
Если это функция, конечно.

26 Апр, 12:16 #455 #980398

что читать про интерфейсы/оформление? что бы коротко, для программистов.

есть css компоненты:
http://blazecss.com/components/cards/

есть card компонент, он рамку добавляет и отступы. когда его использовать, а когда просто добавить padding/margin?

Ответы980638

26 Апр, 13:36 #456 #980439

>>980098
>для пацанов только let
Все так. Лучше оперировать адекватной областью видимости. Если не можешь код без ВАР написать, то нахуй с пляжа.

26 Апр, 13:38 #457 #980444

Как сделать замену слов на странице? Например поменять все буквы а на б?

Ответы980496

26 Апр, 14:50 #458 #980496

>>980444
s/а/б/g

29 Кб, 593x266

26 Апр, 18:37 #459 #980614

Почему зацикливается? Вроде же таймер должен прекращать свою работу когда if становится верным. Или он всё равно выполняет функцию до конца?

Ответы980635

26 Апр, 18:49 #460 #980624

Репост из ньюфаг-треда.

Анонусы, мозг сломал. Надо подправить страницу, но в js нихуя не смыслю.
Есть элемент
<input type="text" id="add_task_actionQuantity" name="add_task[actionQuantity]" required="required" class="form-control" style="width: 30%;" placeholder="ХУЙ">

alert(document.getElementById("add_task_actionQuantity").placeholder);
Показывает "ХУЙ", но
alert(document.getElementById("add_task_actionQuantity").class);
нихуя не показывает. Почему так?

Ответы980636980639

26 Апр, 19:16 #461 #980635

>>980614
после очистки ты снова ставишь в следующей строке

26 Апр, 19:16 #462 #980636

>>980624
className

Ответы980882

26 Апр, 19:17 #463 #980638

>>980398
>http://blazecss.com/components/cards/
Чем оно лучше бутстрапа?

Ответы980662

26 Апр, 19:18 #464 #980639

>>980624
https://learn.javascript.ru/attributes-and-custom-properties#классы-в-виде-строки-classname

Ответы980882

26 Апр, 19:58 #465 #980662

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

Ответы980665

sage 26 Апр, 20:12 #466 #980665

>>980662
оказывается у бутсрэп тоже можно. http://getbootstrap.com/customize/

26 Апр, 21:12 #467 #980712

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

Ответы980716980739980743

134 Кб, 822x911

26 Апр, 21:14 #468 #980713

Немного не понял с какой всё таки последовательностью выполняется данный код. Т.е setTimeout через 100мс запустит функцию, пока идёт этот таймер управление переходит в код который ниже, т.е запускается функция hardWork(), и т.к setTimeout не может прервать эту функция (а она выполняется дольше чем 100мс), то просто дожидается окончания выполнения и потом управление (ну или как это назвать) снова переходит в setTimeout и запускается уже внутренняя
анонимная функция. Правильно?

Ответы980719980722

26 Апр, 21:17 #469 #980716

>>980712
то есть не передавать их приходится много раз а
много раз писать хуйню в духе
<SecondLevelComponent height='300' />
а в нем
<ThirdLevelComponent height='300' />
а этот prop нужен в
<ElevelLevelComponent />

26 Апр, 21:23 #470 #980719

>>980713
интерпретатор js увидит твой сеттаймаут, и запомнит, что через 100мс ему надо запустить анонимную функцию, а пока эти 100мс он будет ждать, он займется другой работой а именно выполнит функцию хардвок после выполнения которой переменная i станет равно 1e8 после выполнения хардвок интерпритатор вспомнит, бля яж через 100 мс должен был выполнить анонимную функцию и выполнит ее

26 Апр, 21:23 #471 #980720

Сап, програмач. Я чуть не пизданулся, несколько часов пытался найти ошибку в своем коде (у меня phpQuery парсит другую страничку). Оказалось, что DOM получает изначальную версию документа, с нулевыми значениями. Например, на том сайте есть таблица с различными данными, я эти данные пытаюсь вытащить. Но мне в ДОМ парсится хтмл код с таблицой, где все значения нулевые. Похоже, что эти значения меняются с нулевых на нормальные через какие-то милисекунды. Что это за хуета такая и как мне получить финальные значения?

Ответы980725980758980794981176

26 Апр, 21:24 #472 #980722

>>980713
иными словами да, ты правильно понял

26 Апр, 21:35 #473 #980725

>>980720
таймаут поставь - начинай парсить через пару секунд после загрузки

Ответы980738

26 Апр, 21:48 #474 #980738

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

26 Апр, 21:49 #475 #980739

>>980712
В вспомогательных либах контекст юзают

26 Апр, 21:52 #476 #980743

>>980712
redux + разделение на smart и dumb компоненты

26 Апр, 21:56 #477 #980749

Имея базовые знания HTML/CSS/JS, сразу изучаю фроненд фреймворки(vue) и ксс фреймворки, все правильно делаю?

Ответы980752981176

26 Апр, 21:58 #478 #980752

>>980749
Английский подучи

26 Апр, 22:08 #479 #980758

>>980720
правильно относительно чего ? Я даже за жквери не брался пока ecmascript'овый стандарт не вызубрил. А так если понимаешь о чем рассказывается в учебнике/доке по фреймворку то все норм.

а если по сути:
если ты учишься то учи на насколько можно низком уровне, когда будешь работать тогда пользуйся абстракциями которые предоставляют vue/css фреймвоахахахахахки

Ответы980786

26 Апр, 22:35 #480 #980782

Дублирую, может жс челы тоже в теме.
>>980778
Уже когда высрал, вспомнил за feathers и экспресс. Мб бекенд (там умеренно сложная апишка) можно ебануть на ноде?

26 Апр, 22:41 #481 #980786

>>980758
Ничего я не учу, делаю парсер для хобби. Можешь помочь - помогай с меня спасибо, не можешь - мимо проходи.

26 Апр, 22:58 #482 #980794

>>980720
Очевидно, что скрипт потом заполняет таблицу. Как помочь на пхп не знаю. На джс наверное нужно смотреть в сторону phantomjs or nightmarejs

Ответы980796980808

26 Апр, 23:01 #483 #980796

>>980794
Cамое примитивное - поставить таймаут. Продвинутый уровень - промис или чейн коллы

Ответы980797

26 Апр, 23:05 #484 #980797

>>980796
Ну как я понял, он парсит чисто хтмл приходящий.

Ответы980807980808

26 Апр, 23:13 #485 #980807

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

Ответы980808

20 Кб, 655x245

26 Апр, 23:15 #486 #980808

>>980794
>>980797
>>980807
Я парсю с phpQuery, вот так это выглядит в коде. Сделаю все, что скажете, но с этой либы не слезу, раньше пытался стандартными методами и не получалось, хотя консультировался в тредах.

Ответы980816

26 Апр, 23:34 #487 #980816

>>980808
Есть XPath который в разы быстрее, и кстати в браузере тоже можно скопировать его как селектор.

Ответы980818980864

26 Апр, 23:41 #488 #980818

>>980816
Окей. Через часик я попробую xpath и отпишусь. Но я даю гарантию 146%, что не заработает без бубна.

20 Кб, 782x238

6 Кб, 380x169

27 Апр, 01:15 #489 #980864

>>980816
Как я и говорил, xpath не работает. Пример взял отсюда http://stackoverflow.com/a/13718745

27 Апр, 05:26 #490 #980882

>>980636
>>980639
Благодарю.

27 Апр, 06:32 #491 #980883

>>980365
Работает, кажись

27 Апр, 09:26 #492 #980900

Нужен совет, екмаскриптач!
Что первым делать на проекте? Бабилить файлы, а потом собирать их вебпаком или сначала вебпаком в бандл собирать, а потом бабилить?

Ответы980903

27 Апр, 09:34 #493 #980903

>>980900
babel-loader

Ответы980904

27 Апр, 09:39 #494 #980904

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

27 Апр, 10:28 #495 #980912

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

Ответы980914

27 Апр, 10:36 #496 #980914

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

27 Апр, 11:25 #497 #980932

>>971814 (OP)
Восславим веб, господа.
>>980873

Ответы980964

27 Апр, 13:24 #498 #980964

>>980932
Ну ебля с браузерами это тоже не сахар.

14 Кб, 195x235

27 Апр, 15:07 #499 #981009

Как скачать весь сорс мэп?

Ответы981059

27 Апр, 16:33 #500 #981059

>>981009
сайты воруешь гаденыш ?

27 Апр, 16:56 #501 #981066

Как прочитать значения Symbol?
'use strict';
let sym = Symbol();
alert( sym );

В таком коде ошибка.

Ответы981091

27 Апр, 18:22 #502 #981091

>>981066
символы не приводятся к строкам. Ну разве что через String()

27 Апр, 18:42 #503 #981096

https://learn.javascript.ru/settimeout-setinterval - блять, только один я долбаеб не смог 2 последние задачи решить? Охуеть дизмораль когда люди в комментах там ещё разные решения предлагают, а ты даже одним способом в голове сообразить не можешь.

27 Апр, 20:12 #504 #981134

ПЕРЕКАТ
https://2ch.hk/pr/res/981132.html (М)
https://2ch.hk/pr/res/981132.html (М)

27 Апр, 21:11 #505 #981176

>>980720
да я этому >>980749 отвечал

Rem !wWmRQxee/M 13 Май, 14:29 #506 #989939

программист на джейквери

Тред утонул или удален.
Это копия, сохраненная 24 мая 2017 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.

« /pr/В начало тредаВеб-версияНастройки/a//b//mu//s//vg/Все доски

Пользуетесь скринридером — пишите, что можно улучшить.
Host-Food.ru — надёжный хостинг от 12 руб/мес | Free DNS
Зеркала М.Двача: m2ch.hk, m2ch.lib, m2chfapiswfw2wcakptqp4o6ltgchvjuxfab7urxlduraomtlnhw5xad.onion