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

JavaScript #86

 Аноним 27/08/17 Вск 15:25:55 #1 №1052010 
15026422252120.jpg
15026422252121.jpg
15026422252132.png
Ссылка на прошлый тред: >>1043979 (OP)

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

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

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

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

Инструмент для визуализации и экспериментов со связями между объектами в JavaScript:
http://www.objectplayground.com/

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

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

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
Аноним 27/08/17 Вск 15:31:58 #2 №1052016 
>>1052010 (OP)
Cажи джава-скрипт макакам
Аноним 27/08/17 Вск 15:32:58 #3 №1052017 
>>1052010 (OP)

освятил

https://wtfjs.com/
sageАноним 27/08/17 Вск 15:35:45 #4 №1052021 
Ну чё, жс макаки, когда вам там нормальное ооп завезут? Ахахахах, никогда))
Аноним 27/08/17 Вск 15:41:57 #5 №1052031 
>>1052021
И слава богам Египта!
Аноним 27/08/17 Вск 15:44:19 #6 №1052035 
>>1052021

1. В JavaScript нет классов — есть конструкторы
2. Цепь прототипов — база на которую опирается все наследование в JavaScript
3. Свойство объекта получается с использованием цепи прототипов
4. __proto__ — это ссылка на прототип конструктора(prototype)
5. Оператор new создает пустой объект с единственным свойством __proto__, которое ссылается на F.prototype, выполняет конструктор F в котором this — созданный ранее объект и возвращает объект
6. Оператор instanceof не проверяет порожден ли данный объект «Object» конструктором «ObjectsConstoructor», для своего вердикта он использует цепь прототипов
7. В JavaScript значение this определяется вызывающей стороной по форме вызова
8. void — это оператор, а не функция. undefined, null — примитивные значения
Аноним 27/08/17 Вск 15:48:24 #7 №1052041 
1126.gif
>>1052035
>В JavaScript значение this определяется вызывающей стороной по форме вызова
Аноним 27/08/17 Вск 15:51:08 #8 №1052042 
>>1052041

В JavaScript значение this определяется вызывающей стороной по форме вызова. Правило по которому определяется то, что будет в this такое объясню по-простому:

1. Если метод вызывается напрямую (без new, call, apply, bind, with, try catch), то значением this будет тот объект, который стоит перед точкой, слева от имени метода.
2. Если точки нет (функция вызывается напрямую), то this будет приравнен к undefined, null или window(global), в зависимости от среды и «use strict».
3. Если выражение представляет из себя не ссылку, а значение, то применяется пункт 2
sageАноним 27/08/17 Вск 15:54:25 #9 №1052045 
>нет нормальных классов
>нет абстрактных классов и интерфейсов
>наследование через жопу
>нет модификаторов доступа
Аноним 27/08/17 Вск 15:56:26 #10 №1052046 
>>1052045
Зато есть TypeScript и пиздатый event-loop
Аноним 27/08/17 Вск 16:06:09 #11 №1052050 
cat.e18hc78s5cewgkwfxbvs.png
>>1052045
>нет нормальных классов
>нет абстрактных классов и интерфейсов
>наследование через жопу
>нет модификаторов доступа

всё давно есть

#1 https://ilikekillnerds.com/2015/06/abstract-classes-in-javascript/
#2 https://developer.mozilla.org/en-US/docs/Learn/JavaScript/Objects/Inheritance
#3 https://scotch.io/bar-talk/4-javascript-design-patterns-you-should-know
Аноним 27/08/17 Вск 16:08:33 #12 №1052051 
>>1052010 (OP)

в ЖС уже и машинное обучение подвезли https://pair-code.github.io/deeplearnjs/
Аноним 27/08/17 Вск 16:09:29 #13 №1052052 
>>1052050
ебать ты конченный, убей себя нахуй
Аноним 27/08/17 Вск 16:12:24 #14 №1052055 
>>1052052

боль неосилятора бесценна:3
Аноним 27/08/17 Вск 16:23:29 #15 №1052059 
Есть два массива, состоящие из строк.
Написал функцию, которая лексикографически сравнивает один массив с другим и если строка первого массива присутствует в какой-либо строке другого массива, тогда она становится часть нового массива и далее выводится.

Использую метод instanceOf, который всегда выдает -1, кроме полного совпадение элементов массива.
Что я делаю не так?
https://jsfiddle.net/ax24rbsx/
Аноним 27/08/17 Вск 16:26:47 #16 №1052062 
>>1052051
Добавил в закладки.
Кстати, интересно, а можно ли из ноды задействовать гпу для ресурсоемких вычислений?
sageАноним 27/08/17 Вск 16:32:23 #17 №1052068 
>>1052062
Ишь чего захотел! Жри что дают мразь!
Аноним 27/08/17 Вск 16:49:37 #18 №1052077 
Отписался в трапо треде
Аноним 27/08/17 Вск 16:50:12 #19 №1052078 
>>1052059

так работает?

>if (array2.indexOf(word) !== -1)
Аноним 27/08/17 Вск 16:51:25 #20 №1052081 
>>1052059
>лексикографически
>я умный
Нет.
Аноним 27/08/17 Вск 16:52:33 #21 №1052082 
>>1052042
Ты забыл про this в событиях типа onclick
Аноним 27/08/17 Вск 16:55:11 #22 №1052087 
>>1052021
>>1052045
Нормальные на другом языке - не нормальные на JS.
Тугодумам непонятно, что это другой язык и у него другое строение, философия и приемы программирования?
И заберите свои сраные классы обратно, а то понаехали со своим уставом в чужой монастырь, задроты.
Аноним 27/08/17 Вск 17:02:28 #23 №1052095 
>>1052078
Нет
Аноним 27/08/17 Вск 17:03:04 #24 №1052096 
>>1052081
Подскажи, что не так в коде?
Аноним 27/08/17 Вск 17:06:11 #25 №1052100 
>>1052096
https://jsfiddle.net/6be5zhy0/
Аноним 27/08/17 Вск 17:07:10 #26 №1052101 
>>1052100
Замени startsWith на includes если нужно частичное совпадение.
Аноним 27/08/17 Вск 17:16:24 #27 №1052110 
>>1052101
Не понял. Ни один из этих методов не использовал, они и не подходят.
В первом массиве есть строка 'op', во втором 'pop' и так как первая строка полностью имеется в строке второго массива она должна передаваться в новый.
Аноним 27/08/17 Вск 17:20:22 #28 №1052113 
>>1052110
https://jsfiddle.net/6be5zhy0/1/
Не сохранилось.
Аноним 27/08/17 Вск 17:33:36 #29 №1052118 
>>1052096

ролл >>1052078
Аноним 27/08/17 Вск 18:24:09 #30 №1052157 
>>1052113
Спасибо!
"Лексикографически" это из задания. Я думал это о сравнение строк, хоть и гуглив слово. Оказалось надо было по алфавиту отсортировать.
И в этом решении работает indexOf. Видимо я пытаясь сначала уменьшить вероятность появления ошибки использовал цикл, вместо высшей функции, получил только проблемы
Аноним 27/08/17 Вск 18:27:14 #31 №1052165 
В вакансии дотнет-джуна требуются базовые знания JS. Что они под этим понимают и как их оптимальнее получить за пару дней? Помогите советом мудрым
Аноним 27/08/17 Вск 18:37:20 #32 №1052173 
>>1052165
Манипуляции с HTML, синтаксис, представление о ООП в JS, базовое понимание о замыканиях, AJAX.
Аноним 27/08/17 Вск 18:40:45 #33 №1052177 
>>1052165
https://learn.javascript.ru/first-steps

открываешь это и ебошишь, за два-три дня вполне реально осилить и понять все разделы. В ES2015 не лезь только, это уже не базовое.
Аноним 27/08/17 Вск 18:59:03 #34 №1052184 
pr.aws-play-couch-db-scaling-soa-in-the-cloud-29-638.jpg
>>1052010 (OP)

>CouchDB

спросил уже ответ тут >>1052141 но там похоже все умерли давно.

спрошу еще и здесь, так как CouchDB тесно связана с ЖС.

мб юзал кто CouchDB для продакшина, какие подводные камни?
Аноним 27/08/17 Вск 19:02:59 #35 №1052185 
>>1052173
>>1052177
Спасибо. Ещё вопрос: мне чувак сказал, мол, раз знаешь шарп, то тут особо проблем не будет, потому что язык си-подобный. Это верно?
Аноним 27/08/17 Вск 19:03:53 #36 №1052186 
>>1052185
Нет, полная хуйня. Шарп это жаба с традиционным говно ооп уровня крестов. Впрочем если ты linq-мастер, то тебе будет норм.
Аноним 27/08/17 Вск 19:27:40 #37 №1052194 
>>1052184
Кауч в продкшне юзали Meebo, хотя ты, наверное, и не застал, что это за сервис был такой.
Гугли их юзкейс.
Аноним 27/08/17 Вск 19:56:54 #38 №1052208 
>>1052194
>Meebo

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

Мне их идея с документами, которые могут быть одновременно приложениями доставляет, но там вроде как не всё гладко с записью большого количества простых документов и потреблением места на диске.
Аноним 27/08/17 Вск 19:59:48 #39 №1052210 
>>1052208
>*их идея = идея создателей Кауч
>fix
Аноним 27/08/17 Вск 20:02:40 #40 №1052212 
>>1052185
Отчасти верно.
Аноним 27/08/17 Вск 20:18:02 #41 №1052224 
Анон, подскажи. JS недавно обмазываюсь, тут странное дело.
Отправляю ajax-запрос через jQuery на php-обработчик в формате json (JSON.stringify). Всё ок, пхп получает и тоже возвращает json (json_encode). Обычно раньше, я в JS использовал JSON.parse, однако сейчас увидел, что ответ уже приходит в виде массива JS, то есть уже распарсеный. Это всё из-за того, что указан type: 'json', верно? До этого использовал type: 'html'.
Аноним 27/08/17 Вск 20:31:22 #42 №1052229 
>>1052224
Перечитал свой вопрос (и посмотрел на сайте jQuery) и понял, что спросил о том, что и так очевидно. Стыдно.
Аноним 27/08/17 Вск 22:23:22 #43 №1052277 
15038382592860.jpg
Читаю про ноду и там через каждое предложение - handle request. Как это переводиться? Управление реквестом, разбирательство с реквестом?
Аноним 27/08/17 Вск 22:45:00 #44 №1052291 
>>1052277
Обработай запрос.
Аноним 27/08/17 Вск 22:58:12 #45 №1052298 
15038389677060.jpg
>>1052291
Почему учебник Node на сайте Мазилы сразу мне жестко поясняет за шмот за Express? Почему сначала подучить Ноду, а не сразу дрочить фреймвоки?У меня от этой хуйни дедушка заулыбался, блять написали учебник Express
Аноним 27/08/17 Вск 23:34:29 #46 №1052312 
>>1052298
>подучить Ноду
Нахуя зубрить стандартную библиотеку?
Аноним 28/08/17 Пнд 02:48:42 #47 №1052361 
>>1052185
Пишется похоже, но идеология другая.
Основа - прототипы, в них разбирайся в первую очередь, чтобы не тормозить.
28/08/17 Пнд 02:58:17 #48 №1052372 
антоны помогите сделать следующее:
пишешь ник и игру
тупо проверяется список зрителей каждого стрима и ищет этот ник
как оно должно работать? чисто схематически с запросами\парсами и всякой такой шляпой
Аноним 28/08/17 Пнд 03:14:24 #49 №1052391 
>>1052312
>нахуя зубрить JavaScript когда есть jQuery?

Чтобы писать божественное

jQuery.extend(anchor,{href,'about:blank'})

вместо устаревшего

anchor.href='about:blank'
Аноним 28/08/17 Пнд 03:16:52 #50 №1052394 
>>1052298
У этого дедушки геморрой
Аноним 28/08/17 Пнд 03:20:29 #51 №1052398 
>>1052361
В догонку - еще важное отличие от строгих языков - в JS нельзя быть уверенным в значении переменной и вообще в ее наличии, то же самое с аргументами функций. Так что перед использованием переменные нужно проверять на существование и тип значения в них.

Это сперва очень непривычно для классических программистов, и потому порождает кучу элементарных ошибок.
Аноним 28/08/17 Пнд 03:22:56 #52 №1052399 
>>1052372
Ты похоже не умеешь программировать? Тогда для решения такой задачи тебе ой как далеко. Если срочно - попроси кого-то сделать. А если хочешь сам - приступай к изучению JS (или Python/PHP/Ruby)
Аноним 28/08/17 Пнд 13:15:21 #53 №1052552 
Node.js, Express. Мне надо в темплейт Pug передавать JSON объект для рендеринга (ссылки для навбара, а также саб-меню для этих ссылок). Навбар будет открываться на любой странице, так что я не вижу смысла передавать с каждого контроллера одинаковый JSON файл. Неужели мне нужно определять объект в самом файле Pug? Есть какой-нибудь красивый способ это сделать? Например, определить JSON файл на стадии запуска сервера, и чтобы Pug имел доступ к этому JSON файлу.
Аноним 28/08/17 Пнд 15:34:38 #54 №1052640 
>>1052552
Я разобрался. Через app.locals закидываю прочитанный JSON файл, а потом в рендер передаю request.app.locals.переменная.
sageАноним 28/08/17 Пнд 19:11:24 #55 №1052772 
>>1052186
Говно — это ваш недоязык, который отчаянно пытается походить на нормальный, но каждый раз обсирается всё сильнее и сильнее.
Аноним 28/08/17 Пнд 21:11:43 #56 №1052871 
да вы что.png
на третьи сутки выяснилось что top - зарезервированное слово
Аноним 28/08/17 Пнд 22:22:25 #57 №1052955 
87ow[1].png
Изучаю Vue. Пока все норм, в отличие от Angular и React все просто и олдскульно, не надо ставить ноду, npm и прочий хайп. Просто восторг для ретрограда, аж прямо на 10 лет назад вернулся в эпоху Delphi и диал-апа.

Но возник вопрос, а где брать готовые компоненты? Раньше брали jQueryUI/ExtJS + Bootstrap для стилизации и тем. Но у Vue свой виртуальный DOM вместо браузерного, и jQuery с ним работать не умеет (а значит, и эти фреймворки не будут). Так что, неужели придется самому писать всякие панели, деревья, сплиттеры и т.д.? Или есть какие-нибудь готовые наборы?
Аноним 28/08/17 Пнд 23:14:44 #58 №1052998 
Я не понимаю, почем у меня такая боль от редакса? Бойлерплейт на бойлерплейте.
Аноним 28/08/17 Пнд 23:25:59 #59 №1053005 
Вот интересно как сделать счетчик времени вперед. счетчик обратного полно в инете. то есть нужно задать дату когда фапал последний раз и счетчик отсчитывал сколько дней часов и тд прошло от этой даты, stopwach типа.
Вроде задача тривиальная. Можете накидать примерно как это будет выглядить?
Аноним 28/08/17 Пнд 23:26:20 #60 №1053006 
>>1053005
>выглядеть
Аноним 29/08/17 Втр 08:41:01 #61 №1053137 
Котаны, обьясните нубу как сделать кастомное событие на JS

Вот:
https://jsfiddle.net/xwghvkyw/

событие таково - допустим когда в die появляется текстовая строка "www", - это считается событием, и запускается обработчик, допустим с алертом.
Нихуя логику не пойму. А у кантора мудреный пример.

Обьясните, как нибудь попроще нубу.
Аноним 29/08/17 Втр 09:32:53 #62 №1053148 
аноны, смотрите: есть такой вот пример
https://jsfiddle.net/jm0vbtnz/1/
как можно получить доступ к data-id не навешивая обработчик на div, потому что div в будущем будет перерисовываться.
Аноним 29/08/17 Втр 09:37:18 #63 №1053150 
>>1053148
https://jsfiddle.net/jm0vbtnz/2/
фикс
Аноним 29/08/17 Втр 09:42:18 #64 №1053156 
>>1053150
Повесь обработчик на body.
Аноним 29/08/17 Втр 09:44:39 #65 №1053158 
>>1053156
но обработчик и так на body Навешен
Аноним 29/08/17 Втр 09:48:57 #66 №1053160 
>>1053158
Вот я слепошарый(
Аноним 29/08/17 Втр 09:53:37 #67 №1053162 
>>1053160
https://jsfiddle.net/jm0vbtnz/4/
уже сам разобрался
Аноним 29/08/17 Втр 09:57:53 #68 №1053164 
>>1052998
Ну и юзай бойлерплейты, две строчки в терминале и готово, в чем проблема?
Аноним 29/08/17 Втр 10:51:43 #69 №1053179 
>>1053137

Аноны, помогите! Я аж чешусь бладж!!!

вот обновленный код с комментариями:
https://jsfiddle.net/v9nyga5p/


Аноним 29/08/17 Втр 13:27:25 #70 №1053244 
>>1053164
Это мудацкая хуйня. Нахуя блять эти модные фреймворки, если они заставляют генерить тонны бойлерплейта?
Аноним 29/08/17 Втр 13:31:20 #71 №1053247 
>>1053179
Можешь переписать сеттер innerHTML, чтобы тот в добавок к присвоению нового значения еще и вызывал нужное тебе событие, или добавить новый метод/сеттер элементу, чтобы тот присваивал innerHTML и вызывал твое событие, или использовать прокси, или реагировать на событие DOMSubtreeModified, или использовать MutationObserver (не уверен), или либу какую найти, которая упрощает это дело, но любое событие где-то да нужно вызывать вручную, ты можешь только замаскировать и спрятать это подальше. Могу ошибаться.
Аноним 29/08/17 Втр 13:41:01 #72 №1053253 
Как можно обрабатывать евенты срабатывания скролла вверх и вниз на ванильном js? (хочу без библиотек попробовать сделать) Я хочу сделать просмотр картинки такой же как на двощах, и хз как евенты скролла обрабатывать.
Аноним 29/08/17 Втр 13:57:15 #73 №1053262 
>>1052010 (OP)
Здравствуйте, есть один браузер хром(60.0.3112.107) для андроида и мне нужно смотреть куки. До недавнего времени я использовал "javascript:alert(document.cookie)" и все бы ничего пока не настал лимит отображения, то есть новые куки я не вижу.

Задачи:
1. Вытянуть по названию(я его знаю)
2. Удалить первые.

И как это сделать я не знаю. Вот допустим должна быть куки с названием Gay_porn_id что мне нужно написать что бы увидеть ее значение?
Аноним 29/08/17 Втр 14:03:02 #74 №1053266 
>>1053262
Попробуй так:
>javascript:(function del(cookie){setTimeout(() => {del();del();del()})})()
Аноним 29/08/17 Втр 14:12:48 #75 №1053270 
>>1053262
Подключить телефон к пека и смотреть через инструменты разработчика, предварительно настроив удаленную отладку. Или я тебя не правильно понял.
Аноним 29/08/17 Втр 15:07:08 #76 №1053302 
Короче намутил фигни и похоже печнька что мне нужна уже безвозвратно удалилась. Печально, но жить можно. как оказалось их скрыто больше одной

Немного почитал здесь:
https://learn.javascript.ru/cookie
И вот смотрите javascript:alert( document.cookie ); у меня работает и для этого сайта отображает куки usercode_auth

А вот когда я javascript:function getCookie(usercode_auth) то ничего.

>>1053266
> del
> {del();del();del
Не хочу тебя обидеть но оставлю это на потом, все равно буду удалить все что бы очистить "кеш отображения" на следующие разы.

>>1053270
Я вообще не программист, даже телефон не рутирован. С рутом похоже есть программы что могут читать куки... То что ты написал для меня это уровень расшифровки https трафика на мощности какой нибуть криптофермы, ради несчастной печеньки(Ну вы поняли).
Аноним 29/08/17 Втр 15:33:37 #77 №1053314 
>>1053247
Спасибо бро за развернутый ответ. Я сидел и горевал по поводу того что я тупой, что то что мне требуется лежит на поверхности, а я понять не могу.
>>Можешь переписать сеттер innerHTML
Не хочется ковырятюся в нативных методах.
>>добавить новый метод/сеттер элементу
А вот это уже реальнее. Добавить метод элементу, которое будет реагировать на изменение innerHTML и вызывать кастомное событие.
Шпасибо!
Аноним 29/08/17 Втр 15:38:07 #78 №1053319 
Получилось
Как итог мне нужен был всего-то такое

javascript: getCookie("Gay_porn_id");

Теперь я явапрограмист?
Аноним 29/08/17 Втр 17:04:26 #79 №1053355 
>>1053319
>>getCookie("Gay_porn_id")
>>Теперь я явапрограмист?

Никаких сомнений
Аноним 29/08/17 Втр 18:56:25 #80 №1053408 
Анончики, глупый нубяра снова с вами.
Снова пример от кантора.
Снова прошу хелпа!

https://jsfiddle.net/Lcrz4pzp/

комментарии внутри
Аноним 29/08/17 Втр 18:58:29 #81 №1053412 
umstvennootstaliedeti924645.jpg
>>1053408
Халп
Аноним 29/08/17 Втр 19:39:37 #82 №1053451 
>>1053412
Бука!
Аноним 29/08/17 Втр 22:31:31 #83 №1053628 
Анон, помоги.
Такой пример.
Есть сайт, на котором прогружаются div-ки с баннером (на каждой странице домена) и каждый раз, когда я захожу на какую-либо страницу сайта, у меня подгружается эта div'ка.
Вручную я удалить ее могу через панель разработчика (просто hide element в chrome), но если я обновлю страницу или зайду на другую, дивка снова подгрузится. Можно ли как-то автоматом зашить удаление этой div в браузере?
Аноним 29/08/17 Втр 22:45:53 #84 №1053647 
Есть готовые костыли для уменьшения размера JSON для однотипных объектов? Объекты чтобы заменял на массивы, а схему восстановления имён хранил в единичном экземпляре.
Аноним 29/08/17 Втр 22:47:31 #85 №1053649 
>>1053647
deflate и не еби мозг
Аноним 29/08/17 Втр 23:46:37 #86 №1053696 
Уважаемые Котаны, скажите пожалуйста, можно ли, зная лишь хтмл цсс и жс написать например борду объявлений, подобно данной, а так же некую биржу, куда юзеры будут запихивать свои товары например, а другие будут устанавливать фильтры и искать то что им нужно? Понимаю, что второе наверное проще делать на пхп, но в планах пхп нет. И возможно ли написать на сайте-бирже мини-чатики, где каждый зашедшиq сможет быстро поболтать конкретно с разместившим данную объяву? Что за связка потребуется минимум для таких больших дел?
Аноним 29/08/17 Втр 23:50:07 #87 №1053699 
>>1053696
только если для взаимодействия с бд ты возьмешь ноду.
Аноним 30/08/17 Срд 00:20:39 #88 №1053726 
>>1053696
Для всего хватит хтмл цсс жс, если нода на беке устраивает.
Аноним 30/08/17 Срд 01:26:51 #89 №1053793 
>>1053696

связка не проблема, экшен будет когда тебе начнёт не хватать ресурсов и все это нужно будет как-то срочно растянуть на несколько машин
Аноним 30/08/17 Срд 06:29:02 #90 №1053870 
>>1053005
Псевдокод
var fappedLastTime = userinput;
var daysSinceFapped;
for (var i=0; i<100; /все равно больше не продержишься / i++) {
daysSinceFapped++
}
Время берешь через Date().getTime()
Аноним 30/08/17 Срд 12:33:05 #91 №1053948 
https://soundcloud.com/one-eight-hundred/javascript-hottt
Аноним 30/08/17 Срд 13:21:04 #92 №1053966 
>>1053948

https://youtu.be/dIiwFzFvsmw
Аноним 30/08/17 Срд 15:17:12 #93 №1054054 
Решил изучить js, помимо codeacademy и eloquent js читаю курс на http://learn.javascript.ru. Вот на последнем я дошёл до вычисления факториалов и числа Фибоначчи через рекурсию и мне тяжело, я едва понимаю логику кода в примерах. До этого программированием не занимался.

Вопрос: это у всех так? Может, просто не моё? Мне 30 и я гуманитарий, может дело в этом.
Аноним 30/08/17 Срд 15:20:48 #94 №1054059 
>>1054054
Люди делятся на два типа.
Одни понимают указатели, другие нет.
Одни понимают рекурсию, другие нет.
Одни понимают трансформеры монад, другие нет.
Аноним 30/08/17 Срд 16:24:00 #95 №1054142 
>>1054054
https://www.youtube.com/watch?v=rh1mP02NFoM
Аноним 30/08/17 Срд 17:10:46 #96 №1054179 
>>1054059
Итого 6 типов насчитал
Аноним 30/08/17 Срд 17:12:08 #97 №1054181 
>>1054179
Это все одни и те же люди. Одни тупые, другие нет.
Аноним 30/08/17 Срд 17:12:40 #98 №1054182 
>>1054054
Ну так тут не в программировании дело, а в математике.
Но вообще-то если гуманитарий, то каким хером тебя в программирование понесло? Деньги?
Аноним 30/08/17 Срд 17:16:24 #99 №1054183 
>>1052955
Вот здесь https://vuejs.org/v2/guide/plugins.html в конце написано:
>Checkout awesome-vue for a huge collection of community-contributed plugins and libraries.
> https://github.com/vuejs/awesome-vue#user-content-components--libraries
Аноним 30/08/17 Срд 17:44:20 #100 №1054192 
Dgi11BoKnps.jpg
>>1054182
Кратко: да, деньги
Последние 6 лет я работаю не по специальности на тупиковой должности. Работа вахтовая, много свободного времени, решил как-то его занять.

>>1054142
Спасибо, буду изучать
Аноним 30/08/17 Срд 17:52:23 #101 №1054198 
>>1054192
>не по специальности на тупиковой должности
Как и почти вся страна. А почему сразу в техвуз не пошел, математику не учил? Какие-то другие планы были, артистом например стать?
Аноним 30/08/17 Срд 17:54:35 #102 №1054199 
>>1054198
Почти. Дипломатом c:
Аноним 30/08/17 Срд 17:58:12 #103 №1054206 
так блет, я пришел к понимаю того что вебдевелоперу нужен линух
с чего начать ?
Аноним 30/08/17 Срд 18:21:03 #104 №1054230 
>>1054206
Купи макбук.
Аноним 30/08/17 Срд 18:27:41 #105 №1054236 
>>1054054
Как чувак который осилил почти весь учебник кантора скажу - это ебанное начало только. Будет тяжелее.
Очень высок уровень абстракции. И должно выработаться специфическое мышление.

>>1054192
>>Кратко: да, деньги
Честно, не уверен что это разумно. Суть в том что программирование "должно зайти", когда ты сидишь до часу ночи разбирая какую нибудь хуиту, забесплатно, тупо потому что нравится. И второе - когда ты осилишь учебник кантора - ты вдруг поймешь как мало ты знаешь. Хочешь пилить полноценные сайты на сервере - изволь учить node.js, что бы самостоятельно верстать быстро - бутстрап. И куча еще всяких технологий.
И при всем этом пиздице ты через месяцев 6-7, когда все осилишь, потратив дохуя часов - ты пойдешь каким нибудь джуном за 40 тыщщ.
И ток через пару лет вьеба ты доползешь до сильных ЗП. Наверное.
К сожалению в россиюшке программирование привлекательно единственно тем, что гипотетически ЗП могут прийти к европейскому уровню ЗП, ну или прямо работать с заграницей не поднимая сраки с родного дивана.
Я лично перекатываюсь потому что я по образованию "сисюадмин", но уже 5 лет работаю в информационной безопасности, а это настолько бумажная специализация что пиздец. Тошнит уже.
Я мог бы в какой нибудь банк уползти и там кидать акты на заключения. Но заебло. Я хочу технической работы.

Мой совет - научись блядь штукатурку нормально класть. Через пару месяцев будешь подмастерьем, через год будешь хуярить на себя. И поднимать нихуя не меньше, если работать и не бухать.
Аноним 30/08/17 Срд 19:22:22 #106 №1054274 
>>1054199
Странно - раньше это считалось выгодной профессией, куда там каким-то кодерам.
Аноним 30/08/17 Срд 20:01:58 #107 №1054311 
1490110178787.jpg
>>1054274
Да это шутка была.
Аноним 30/08/17 Срд 22:25:24 #108 №1054420 
Нужны сильные прохромисты на js в проект с перспективой https://pastebin.com/m2xD8nkW
Аноним 30/08/17 Срд 22:28:55 #109 №1054422 
>>1054420
Подробности сразу давай. Скока денег?
Аноним 30/08/17 Срд 22:32:00 #110 №1054424 
>>1054420
Жму лежа 175, достаточно сильный?
Аноним 30/08/17 Срд 22:35:21 #111 №1054425 
>>1053628
Можешь поставить расширение для браузера, которое применяет пользовательские стили к сайту (для хрома - User CSS, например). Тогда можно просто к селектору этого баннера `display: none` применить.
Аноним 30/08/17 Срд 22:42:15 #112 №1054428 
>>1054420
ой я что-то засмущалась и вышла. там столько мальчиков. ._.
Аноним 30/08/17 Срд 22:49:17 #113 №1054430 
Аноны, сейчас устраиваюсь фронт-энд джуном на реакт/редакс. Учу эту связку дай бог два месяца, но вроде что-то уже начинаю схватывать. Может кто мельком чекнуть мой код на наличие совсем уж дичайших обосрамсов? Вот приложуха которую пилю около месяца. Вкратце - сервис для хранения иностранных слов. Создаешь список - добавляешь туда слова которые хочешь выучить - прогоняешь тесты по нему (тесты конфигурируешь сам, там довольно много настроек) - по окончании теста слова, которые правильно решил, отмечаются как выученные. Есть еще переводчик (просто надстройка над яндексовским, работает так же), слова прямо из него можно добавлять в списки. Показать как работает пока не могу, это и не важно, просто гляньте код кому не лень.

https://github.com/sorfeai/vocabulary
Аноним 30/08/17 Срд 22:53:16 #114 №1054432 
>>1054430
Самое главное забыл. Могу ли я сейчас претендовать на джуна в не самой опущенной команде?
Аноним 30/08/17 Срд 22:54:57 #115 №1054433 
>>1054432
Можешь.
Аноним 30/08/17 Срд 22:55:53 #116 №1054434 
>>1054433
Это из серии встань и иди?
Аноним 30/08/17 Срд 22:56:48 #117 №1054435 
>>1054434
Глянул твой код мельком. Можешь встать и идти, у тебя уже лучше чем у 80% тут.
Аноним 30/08/17 Срд 23:10:29 #118 №1054438 
>>1054435
Учитывая что я не понимаю 80% процентов того о чем тут говорят это странно, лол.
Аноним 31/08/17 Чтв 05:33:20 #119 №1054588 
>>1054438
Лол, помню тебя, ты выкладывал резюме во фронтенд треде полгода назад. Тебя что, не приняли тогда на работу, или что? Что то у тебя прогресс медленно идёт, я за это время уже дохуя приложений высрал.
Аноним 31/08/17 Чтв 05:43:13 #120 №1054592 
Как сделать вот такое:
имеется большой массив вида [[a: 1, param: 2], [b: 2, param: 3]]
Как функционально реализовать следующую задачу - обработать каждый элемент массива (как в map();) плюс вставить после обрабатываемого элемента дополнительные?
Императивный алгоритм у меня есть, может есть какие то методы для этого?

Например:
[[a: 1, param: 2], [b: 2, param: 3]]
// Умножить первый подэлемент на 2, вставить дополнительный соответственно подэлементу param
[[a: 2, param: 2], [new: 1], [new: 1], [b: 4, param: 3], [new: 1], [new: 1], [new: 1]]
Аноним 31/08/17 Чтв 12:11:28 #121 №1054662 
>>1054588
Приняли, я дропнул потому что НЕ МОЕ и работал год дизайнером/иллюстратором, заебало и опять пересел на фронт. Поэтому я можно сказать на том же уровне что и год назад.
Аноним 31/08/17 Чтв 12:16:44 #122 №1054663 
>>1054592
https://stackoverflow.com/questions/37128624/terse-way-to-intersperse-element-between-all-elements-in-javascript-array
Аноним 31/08/17 Чтв 12:17:24 #123 №1054664 
>>1054592
>может есть какие то методы для этого?
Reduce.
Аноним 31/08/17 Чтв 12:22:41 #124 №1054667 
>>1054664
Редьюсом обходишь массив, внутри коллбэка умножаешь текущий элемент и вставляешь новый по методу что анон кинул >>1054663
Аноним 31/08/17 Чтв 13:30:36 #125 №1054713 
Помогите с регуляркоблядством. Есть строка, типа
'abcabcabcxyzabcabcxyzxyz'
Над из этой хуйни одним оператором получить:
['abcabcabc','xyz','abcabc','xyzxyz']

Аноним 31/08/17 Чтв 16:29:13 #126 №1054868 
>>1053408
Короче анон, в данном примере я до определенных вещей дошел сам.
спасибо, пидоры, помогли бладж
впрочем зато сам покопротивлялся, туда сюда учебник полистал, и по итогу понял сам, что оже полезно
Но есть вопросик.
https://jsfiddle.net/Lcrz4pzp/3/

Аноним 31/08/17 Чтв 16:35:51 #127 №1054875 
>>1054868
>спасибо, пидоры, помогли бладж
Нахуй пошел, очередному тупому дауну помогать еще.
Аноним 31/08/17 Чтв 16:40:46 #128 №1054879 
>>1054430
- а чего это у тебя редакс и промисы в дев-депенденси?
- ах ты уёба, еще и react-create-app используешь (не делай так, иначе тебя девопс отхуярит)
- "открой каталог layout и охуей", ебать ты наркоман.
- используй автопрефиксер, ёпт, https://github.com/sorfeai/vocabulary/blob/master/src/styles/global.css

Итого, поработай джуном в обоссаной команде годик(-другой), а потом уже иди в нормальную.
Аноним 31/08/17 Чтв 16:46:03 #129 №1054886 
>>1054868
ты до какой-то хуйни похоже дошел и пропустил кейворд new перед Menu
Аноним 31/08/17 Чтв 16:47:05 #130 №1054888 
>>1054713
30$
Аноним 31/08/17 Чтв 17:05:21 #131 №1054901 
>>1054879
Что не так с react-create-app?
Аноним 31/08/17 Чтв 18:35:53 #132 №1054968 
Объясните, пожалуйста, почему в главном языке будущего два идентичных участка кода (за исключением имени одного свойства) выдают разный результат?
https://jsfiddle.net/jcg44ukd/1/
Аноним 31/08/17 Чтв 18:51:08 #133 №1054978 
>>1054968
this при вызове этих функций равен window, а у window есть своё свойство name.
Аноним 31/08/17 Чтв 18:52:05 #134 №1054980 
Безымянный.png
Безымянный2.png
>>1054968
потому что ты мудень, не читавший спецификацию.
функции твои срабатывают не в контексте объектов userOne, userTwo, а в контексте window
в первом случае у window нет свойства 'firstname', поэтому ты получаешь undefined, если его присвоить все становится очевидно
во втором случае, внезапно, свойство 'name' у window есть и оно равно пустой строке.
Аноним 31/08/17 Чтв 18:52:39 #135 №1054981 
>>1054968
При "use strict" коллбэку который ты передаешь в setTimeout не передается контекст, в обычном режиме передается.

>>1054978
Что? И оно равно "anon"?
Аноним 31/08/17 Чтв 18:54:59 #136 №1054983 
>>1054981
Ааа, я хуйню написал, анон выше прав.
Аноним 31/08/17 Чтв 19:02:19 #137 №1054986 
>>1054981
Спасибо.
Аноним 31/08/17 Чтв 19:15:31 #138 №1054990 
>>1054986
>>1054983
Аноним 31/08/17 Чтв 20:09:13 #139 №1055025 
Сколько времени уходит у новичка на первую часть книги кантора?
А то чувствую себя дауном ибо уже второй день ковыряюсь в разделе Замыкания, область видимости
Аноним 31/08/17 Чтв 20:11:34 #140 №1055026 
>>1055025
Ты как-то слишком быстро идёшь. Проверь свои знания: https://gist.github.com/codedokode/ce30e7a036f18f416ae0#Задачки-на-js/
Кантора месяцами проходят.
Аноним 31/08/17 Чтв 20:15:12 #141 №1055030 
>>1055025
это сложная тема, поебаться с ней как следует это нормально
Аноним 31/08/17 Чтв 20:34:42 #142 №1055046 
>>1055026
>Кантора месяцами проходят.
Ну до этого раздела там всё легко было.
>Проверь свои знания: https://gist.github.com/codedokode/ce30e7a036f18f416ae0#Задачки-на-js/
ок
Аноним 01/09/17 Птн 02:23:35 #143 №1055259 
>>1052010 (OP)
Анон, есть вопрос. Пишу на node.js. Есть ли разница для работодателей, какой стандарт языка ты используешь?
Обычно это не указывают в вакансиях, но мб это само собой подразумевается? Стоит ли вообще использовать старый синтаксис?
Аноним 01/09/17 Птн 02:58:19 #144 №1055267 
Сап, анон. Есть одна задача из учебника.

Суть такова: декоратор, который кеширует результаты функций. И есть два кода.

Номер раз) https://codepen.io/anon/pen/wqNBgE?editors=0012
Номер два) https://codepen.io/anon/pen/XaOJNJ?editors=0012

Первый работает, второй - нет. И понятно почему: в первом случае мы мапе передаём ключем числа, которые при сравнение равны, а во втором массивы, которые нет.

Вопрос: как это победить?

В принципе, можно привести аргументы к строке, но тогда и смысла в мапе немного - можно в объекте хранить.
Аноним 01/09/17 Птн 03:40:30 #145 №1055269 
>>1055267
сериализуй/хешируй
Аноним 01/09/17 Птн 06:09:23 #146 №1055279 
>>1055259
Обычно пишут es6 или es5 нет?
Аноним 01/09/17 Птн 07:27:24 #147 №1055290 
>>1055279
крочи, если твое знание ес6 ограничено тем что ты вместо вар стал писать лет то нет смысла, а если разобрался с промисами то да.
Аноним 01/09/17 Птн 08:51:38 #148 №1055305 
>>1054980
Если ты хочешь вывести "anon" то тебе просто нужно вызвать функции, а не сослаться на них. Зачем кукарекать, если ты не знаешь сам что делаешь?
setTimeout(userOne.sayHi(), 1000); // anon
setTimeout(userTwo.sayHi(), 1000); // anon
Аноним 01/09/17 Птн 08:52:22 #149 №1055306 
>>1055305
Ошибка. Это ему: >>1054968
Аноним 01/09/17 Птн 09:09:45 #150 №1055322 
>>1055305
>setTimeout(userOne.sayHi(), 1000); // anon
>setTimeout(userTwo.sayHi(), 1000);\t// anon
ох ты и мудило, блет, сам нубяра а лезет кого-то учить. ты вообще соображаешь что сделал? ты немедленно без задержки вызвал функцию и передал в сеттаймаут ее результат в виде говнища
чтобы сделать то что он хочет нужно прибиндить контекст к функции так
setTimeout(userOne.sayHi.bind(userOne), 2000);
setTimeout(userTwo.sayHi.bind(userTwo), 2000);
Аноним 01/09/17 Птн 13:05:39 #151 №1055472 
>>1055322
И нахуй такую хуйню разводить, когда можно через анонимную функцию сделать?

setTimeout(() => userOne.sayHi(), 1000);
Аноним 01/09/17 Птн 13:41:17 #152 №1055482 
Безымянный.png
>>1055472
>хуйню разводить
это не хуйня, а классика, блядь, это знать надо
с помощью байнда можно взять любую функцию и вызвать ее в любом контексте, не копируя и не передавая как параметр
твоя ссаная лямбда так умеет, мм?
sageАноним 01/09/17 Птн 14:18:35 #153 №1055505 
Поцы, есть ли способ нормально распаралелить математические вычисления, нагружающие CPU? Речь о NodeJS.
Аноним 01/09/17 Птн 16:34:47 #154 №1055585 
>>1055025
На весь учебник, с процентов 80 решенных заданий ушло 5 месяцев. Это с ноля. Правда я много проебывался, и месяца полтора почти подряд проебал. Думаю что если заниматься часов по 5 ежедневно, то месяца три займет.
Аноним 01/09/17 Птн 19:51:26 #155 №1055722 
>>1055482
var не завезли?
Аноним 01/09/17 Птн 21:23:56 #156 №1055845 
>>1055482
а bind считает коллбеком?
Аноним 01/09/17 Птн 21:40:14 #157 №1055868 
>>1055845
коллбек в данном случае это сейхай.
бинд - это метод прототипа Function, который декорирует коллбек
Аноним 01/09/17 Птн 22:45:52 #158 №1055909 
Как можно красиво транспонировать двумерный массив? Цикл в цикле с созданием нового массива выглядит как-то совсем уж уебищно.
Аноним 01/09/17 Птн 22:50:37 #159 №1055911 
>>1055868
Бладж, я и имел ввиду что сейхай с привязанным контекстом.
эх, вот бы в 2017 внятно излагать свои мысли
Спасибо

Аноним 01/09/17 Птн 23:01:19 #160 №1055917 
Что вы тут вообще обсуждаете?
Что за хуйня блядь, КАК СДЕЛАТЬ ЗАЛУПУ ПО МАССИВУ ПИСЕК.
Вы урод?
Почему вы не разрабатываете приложения? Почему я захожу и вижу залетных даунов с гугловопросами-1-секунда?
А ну-ка пиздуйте!
Аноним 01/09/17 Птн 23:18:34 #161 №1055927 
>>1055917
Мы не умеем. Подскажи годных туториалов по созданию сложных SPA на реакте с ООП. И чтоб стек из 9-10 перделок.
инбифо тудулист
Аноним 01/09/17 Птн 23:22:59 #162 №1055928 
>>1055927
Смысл копировать туториалы ничего не понимая?
Ставь задачу, - реализуй. И лучше освой немного ООП и модульность, это делается за день.
Дальше ставь фановые задачи и реализуй. Все придет.
Аноним 02/09/17 Суб 01:01:08 #163 №1055965 
>>1052010 (OP)
Скриптач, как бы мне создать DOMElement из строки? При этом строка должна не в innerHTML помещаться, а как бы целиком превращаться в объект.
Аноним 02/09/17 Суб 05:08:18 #164 №1055979 
>>1055965
убей себя, мамкин погромизд, бляю
Аноним 02/09/17 Суб 08:03:30 #165 №1055994 
Есть строка: '000000'. Как в ней мне заменить третий 0 на 1?
Аноним 02/09/17 Суб 08:52:30 #166 №1056003 
>>1055994
Превратить строку в массив, заменить нужное, и пропарсить обратно.
Аноним 02/09/17 Суб 08:58:00 #167 №1056004 
>>1056003
А я тут пытался с RegExp что нибудь нашаманить. Спасибо, сейчас попробую.
Аноним 02/09/17 Суб 09:47:33 #168 №1056010 
>>1055965
http://learn.javascript.ru/widgets-structure
Аноним 02/09/17 Суб 16:04:07 #169 №1056157 
>>1056004
a.replace(/^(.{2}).{1}?(.*)$/, '$1a$2')
Аноним 02/09/17 Суб 16:07:31 #170 №1056160 
>>1056157
'000000'.replace(/^(.{2}).{1}?(.*)$/, '$11$2')
Аноним 02/09/17 Суб 17:18:38 #171 №1056185 
Слоупок в треде, советую всем вкатчикам, метающимся между фреймворками, посмотреть этот доклад от соавтора Redux и React Hot Loader: https://www.youtube.com/watch?v=nwtQMSFikUk
[31r0c] Аноним 02/09/17 Суб 22:35:29 #172 №1056306 
Как работает такое выражение:
[].concat(...arr);
В частности интересует оператор ...
Аноним 03/09/17 Вск 02:22:11 #173 №1056354 
>>1056306
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Operators/Spread_operator
Аноним 03/09/17 Вск 11:01:53 #174 №1056406 
Довайте померяемся хуями, подонки.
Напишите в одну строку функцию, которая принимает на вход строку вида
>"brown black black"
или
>"brown black brown gold"
Четвертый цвет может встретиться, а может и нет
Что c ней надо сделать.
Есть словарь:
black: 0, brown: 1, red: 2, orange: 3, yellow: 4, green: 5, blue: 6, violet: 7, gray: 8, white: 9
Это кодирование цветом сопротивления резисторов, но это значения не имеет.
Первые два цвета путем сложения их цифр как строк дают число, например
"yellow violet ..."
дадут
'4'+'7' = '47' // а не 4+7=11
Третий кусок переводится в число по тому же словарю и служит экспонентой для возведения в степень числа 10, например
"... ... black"
даст нам
10 в степени 0 = 1
Четвертый опциональный кусок добавит в конец итоговой строки проценты. Если этого куска нет - 20%, иначе если
silver: 10%
gold: 5%
Теперь первый промежуточный результат переводится в число и перемножается со вторым, получаем 47х1=47
Теперь нужно вернуть строку по следующим правилам
-если результат<1000 вернуть строку "47 ом, 20%"
-если 1000<результат<1000000 вернуть строку "4.7k ом, 20%", то есть результат/1000
-если 1000000<результатвернуть строку "4.7M ом, 20%", то есть результат/1000000
Примеры
"brown black black" // "10 ом, 20%"
"brown black brown gold" // "100 ом, 5%"
"red red brown" // "220 ом, 20%"
"orange orange brown gold" // "330 ом, 5%"
"yellow violet brown silver" // "470 ом, 10%"
"yellow violet orange gold" // "47k ohms, 5%"
"brown black yellow gold" // "100k ohms, 5%"
"orange orange yellow gold" // "330k ohms, 5%"
sageАноним 03/09/17 Вск 11:23:17 #175 №1056410 
Ребят, можете пояснить за JSDoc, кто использует, как впечатления?
Я сам сторонник идеи самодокументирующегося кода, стараюсь обычно писать так, чтобы из названия переменных и функций и предельно простой/плоской структуры кода было понятно без комментариев что там где. Не помню у кого из писак было: "если вы ставите в коде комментарий, то это явный знак, что ваш код неочевиден и лучше бы его переписать попроще".
Но идея JSDoc'а мне понравилась, подсмотрел это дело на бэкенде у джавистов, плюс вижу что многие JS-ные библиотеки или сайты с публичным API предоставляют документацию, явно автоматически сгенерированную из этого добра.
Попробовал, пока не особо радует. Плюсы которые получил:
- какой-никакой автокомплит
- корректные сигнатуры методов
Минусы:
- сигнатуры на самом деле нифига не корректные; чтобы хоть как-то себе представлять, что там на входе и на выходе, надо заморачиваться с @typedef'ами, если их писать сверху от методов, то коммент к одной функции на четыре строки занимает ебучие полэкрана. Приходится все typedef'ы оставлять в шапке файла.
- typedef'ы работают локально в пределах файла, но у меня полно примитивных типов типа Range { start: number, end: number }, Color { B: number, G: number, R: number, A: number} и прочей хуйни, не писать же это все в каждом файле. Доки на сам JSDoc говорят что поддерживается что-то типа неймспейсов и можно ссылаться на модули, но VSCode нихуя этого не воспринимает, это из-за того что у меня IDE курильщика и надо переходить на IDE здорового человека?
- если я допустим в каком-то контексте объявил переменную, которой присвоил значение во внутренней функции (beforeAll допустим в Jest'е), то в другой функции VSCode уже нихуя не знает про автоподстановку и сигнатуры.

Что вообще стоит покрывать JSDoc'ом, если основной стек React + Redux? Стоит ли от всех этих головняков перекатываться в Typescript или Flow?
Аноним 03/09/17 Вск 12:12:49 #176 №1056422 
Котоны, посоветуйте совет.
Осваиваю JS. Сталкиваюсь с тем, что имею проблемы с алгоритмами.
Вот пример:

Допустим есть список:
<ul>
<li></li>
...
<ul>
он рандомен полностью.

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

sageАноним 03/09/17 Вск 12:19:15 #177 №1056426 
>>1056422
У HTMLElement'ов (типа <ul>) есть свойство children, которое возвращает тебе коллекцию дочерних элементов. Соответственно надо:
1) Обратиться к ul (по id, по css-классу или еще как)
2) Взять его свойство children
3) Построить цикл, зная, что HTMLCollection предоставляет свойство длины коллекции length и метод обращения к элементу коллекции item()
типа for (let i = 0; i < element.children.length; i++)
4) В теле цикла обращаться к отдельным элементам по индексу element.children.item(i)
Аноним 03/09/17 Вск 13:14:59 #178 №1056446 
>>1056426
Лол, зачем? Почему бы просто селектором не забрать всех li? Array.from(element.querySelectorAll('li'))
sageАноним 03/09/17 Вск 13:21:09 #179 №1056450 
>>1056446
Можно и так, но мне показалось, что если нет опыта в разработке вообще - а его нет, раз для такой задачи спрашивают "что почитать по алгоритмам" - то лучше начать с базовых конструкций.
Аноним 03/09/17 Вск 14:41:19 #180 №1056508 
>>1056426
>>1056446
>>1056450
Чуваки, вы меня не поняли.
Вопрос не в обращении к DOM элементам и их методам или свойствам.
Проблем в создании алгоритма обхода всех ветвей дерева без рекурсии.
Вот задача с сайта кантора:

https://jsfiddle.net/wsfzkLxt/

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



Аноним 03/09/17 Вск 14:46:50 #181 №1056512 
Снимок.PNG
Никак не могу понять почему в подобных примерах JSON.parse запихивают в отдельный then? Это жи не асинхронная операция.
Аноним 03/09/17 Вск 14:47:40 #182 №1056515 
>>1056508
> Где то я прочем что любой рекурсивный способ можно превратить в способ использующий циклы и условия.
Да, используя стек. В JS у тебя уже есть массив и методы pop() и push() на нём, этого достаточно. (Так и гугли "замена рекурсии стеком")
И не надо макакой себя называть.
Аноним 03/09/17 Вск 15:37:55 #183 №1056551 
>>1056512
JSON.parse - синхронная операция, потому вынесли в отдельный блок then, чтобы логически и визуально её отделить от остальной асинхронной поеботы.
Аноним 03/09/17 Вск 16:12:17 #184 №1056572 
>>1056551
А в третьем блоке then тогда почему Кантор не стал выносить ее?
Аноним 03/09/17 Вск 16:20:15 #185 №1056578 
>>1056572
upd: хотя я догнал почему, спасибо
Аноним 03/09/17 Вск 16:44:41 #186 №1056601 
SpfcoB3Hcow.jpg
Кто-нибудь разбирается в Angular 4? У меня от этой хуйни уже жопа детонирует.
1) Как вставлять скрипты? Не могу даже сраный пост из вк вставить на страничку. Точнее я его вставил, а он исчезает если перейти на другой компонент и вернуться, потому что скрипт срабатывает только один раз.
2) Какого хуя не работает ссылка-тэг на определенную часть страницы?

На стаковерфлоу кроме тысячи строк костылей никаких вменяемых ответов не нашел.

Почему этот ангулар такой ебанутый?
Аноним 03/09/17 Вск 17:03:31 #187 №1056617 
>>1056601
Просто ты необучаемая js-макака. Смирись.
https://stackoverflow.com/questions/42993859/twitter-widget-on-angular-2
sageАноним 03/09/17 Вск 17:11:17 #188 №1056623 
>>1055505
Бамп
Аноним 03/09/17 Вск 17:43:51 #189 №1056640 
image.png
>>1056617
Я только начал изучать это все. Т.е. для того чтобы вставить сраный твит или пост из вк мне надо эту всю еболу писать?
Аноним 03/09/17 Вск 19:06:52 #190 №1056671 
>>1056406
Тебе задали задачку и ты так помощи просишь?
Аноним 03/09/17 Вск 19:08:12 #191 №1056674 
>>1056406
У меня есть скрипты в несколько сотен килобайт, написанные в одну строчку. Какие сложности?
Аноним 03/09/17 Вск 19:18:09 #192 №1056681 
>>1056410
Опыт HTML как бы намекает на вынос постороннего оформления в отдельный файл CSS.
Так что загаживание кода длинными комментариями, содержащими еще один (да еще и неочевидый) язык - ошибка. Что бы там очередные восхищенные бандерлоги не укали, как это клево и модно.
Аноним 03/09/17 Вск 19:20:44 #193 №1056682 
>>1056508
>Проблем в создании алгоритма обхода всех ветвей дерева без рекурсии.
>
Используй nested set
Аноним 03/09/17 Вск 19:31:57 #194 №1056686 
>>1056515
Вообще-то рекурсия как раз и использует стёк, поэтому на неё косо и смотрят - из-за переполнения стёка.
Ты имел в виду ручную имитацию стёка с помощью массива.
Аноним 03/09/17 Вск 19:41:57 #195 №1056690 
>>1056640
А просто конвертнуть в HTML через .outerHTML и потом просто в innerHTML вставить этот кусок кода - не прокатывает?
Аноним 03/09/17 Вск 19:43:07 #196 №1056693 
ребятки, появилась срочная необходимость вкатиться в Node.js
был опыт на шарпах, яве, плюсах
с чего начать изучение, посоветуйте макулатуру
Аноним 03/09/17 Вск 19:43:30 #197 №1056696 
>>1056693
Гугли курс кантора
Аноним 03/09/17 Вск 19:51:54 #198 №1056698 
Untitled.jpg
>>1056671
Не, я решил. Прост с братюнями захотел поделиться годной задачкой
>>1056674
Я не говорю что это рокет сайнс, но если ты про ужатый минификатором iife, то это не то.
Аноним 03/09/17 Вск 20:12:40 #199 №1056714 
>>1056698
У тебя неймспейс порвался от глобальных переменных
sageАноним 03/09/17 Вск 20:22:34 #200 №1056719 
>>1056681
> Опыт HTML как бы намекает на вынос постороннего оформления в отдельный файл CSS.

Ну, во-первых, многие сейчас тянут мазу за то, чтобы писать стили скриптом и держать в одном файле с модулем. Я сам стараюсь так не делать, но не могу не заметить, что это сейчас очень распространенная практика, так что опыт HTML'а получается сделал полный круг. Где-то это официально рекомендуемый документацией подход, а где-то тебя просто нагибают, выставляя наружу компоненты игнорирующие className - чтобы стилизовать такие через отдельный .css-файл, приходится забуриться в детали реализации. Особенно весело, если библиотечка все стили инлайнит - после этого твой .css файл выглядит как говно со всеми этими !important. Вроде кто-то упарывается JSS'ом, который хотя бы это решает..

Во-вторых, это по-моему не совсем одно и то же - css из html'а вынести можно, а JSDoc из модуля - нельзя (ну или я не знаю как). Что предлагается-то, не писать его вообще? А если автодокументирование все-таки нужно? Ну или хотя бы вот видеть перед глазами, какой формы объект метод возвращает
Аноним 03/09/17 Вск 20:59:56 #201 №1056744 
>>1056686
Ну и еще потому что в JS будет заздана цепочка объектов переменных и цепочка запусков функций. Которые будут жарт память.
Кстати, котаны, при рекурсивном вызове создается только новый обьект переменных, или еще в довесок задаются дополнительные экземпляры обьектв function?
Аноним 03/09/17 Вск 21:07:04 #202 №1056749 
>>1056515
>>1056682
Ну иожыны-сбажины, ну дайте сурс на годный учебник по алгоритмам.
Аноним 03/09/17 Вск 21:26:12 #203 №1056769 
>>1056749
Кнут - искусство программирования
Аноним 03/09/17 Вск 21:32:14 #204 №1056772 
>>1056769
>Кнут - искусство программирования
Хех, спасибо. Но там чет примеры на асемблерах.
Хотя почитаю попробую конечно.
Аноним 03/09/17 Вск 22:06:49 #205 №1056795 
>>1056772
>почитаю
>четырёхтомная монография
Ебать ты гений
Аноним 03/09/17 Вск 22:12:27 #206 №1056803 
>>1056795
Так о том и речь, лол)
Аноним 03/09/17 Вск 22:19:20 #207 №1056806 
>>1052010 (OP)
Ребята, есть сервак на Node.js. ка лучше всего организовать поиск собеседника для чата, по заданым параметрам?
sageАноним 04/09/17 Пнд 01:51:34 #208 №1056873 
>>1056693
В документации к nodejs есть и примеры и все что нужно для старта, рекомендую
sageАноним 04/09/17 Пнд 01:54:02 #209 №1056874 
>>1056806
Ты бы хоть рассказал что за сервак, а то вопрос звучит как "У меня есть строительные материалы, как построить дом?"
Аноним 04/09/17 Пнд 05:37:22 #210 №1056906 
Как дату вывести в формате dd.mm.yyyy?
Аноним 04/09/17 Пнд 05:49:00 #211 №1056907 
Как авторизоваться с помощью ноды? Есть форма с полями name и pass. Мне их нужно направить на адрес как данные форм. Но как их подготовить как будто они из формы взяты?
Аноним 04/09/17 Пнд 13:00:14 #212 №1056980 
>>1056719
>это сейчас очень распространенная практика, так что опыт HTML'а получается сделал полный круг.
Прсто подтянулись молодые, которым не хочется учить старый опыт, а хочется делать поленивее и учиться на своих ошибках (оху уж этот крговорот велосипедов - изобретают снова и снова). Имхо, дело в этом.

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

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

Меня удивляет такая тормознутость разработчиков IDE.
Аноним 04/09/17 Пнд 13:03:29 #213 №1056982 
Подскажите что выбрать для фронтенда? Желательно что-нибудь такое, что можно на ходу изучать и потихоньку пилить фронт.
Собираюсь написать небольшой сайт в качестве тестового проекта.
Сам сайт что-то вроде онлайн блокнота, с авторизацией.
Бэкенд будет на джаве со спрингом (опыт в джаве уже есть), а вот фронтенд - хз.
На жс я писал всего несколько простеньких скриптов без использования библиотек.
Аноним 04/09/17 Пнд 13:03:44 #214 №1056983 
>>1056744
> заздана цепочка
Это и называется стёком.
Аноним 04/09/17 Пнд 13:07:50 #215 №1056984 
>>1056806
Собеседники регистрируюся на сервере, и среди тех сессий, с которыми есть коннект, можно искать.
Аноним 04/09/17 Пнд 13:11:31 #216 №1056986 
>>1056906
new Date().toLocaleFormat("%d.%m.%Y")
Аноним 04/09/17 Пнд 13:12:52 #217 №1056987 
>>1056907
encodeURIComponent
Аноним 04/09/17 Пнд 13:14:04 #218 №1056988 
>>1056982
Ruby on Rails ;)
Аноним 04/09/17 Пнд 14:19:50 #219 №1057006 
912181e29e2ef408a93ea406ebd1985a.gif
Пацаны, хэлп. Как тестировать https в локалке? Например, я в проде собираюсь накатить nginx с сертом от let's encrypt + certbot и чтобы было Безапаснасць. Как это сэмулировать 1:1 в локалке?
Например чтобы решить dns можно инжектить адрес с именем в /etc/hosts при запуске. Но как решить сертификат? Умею в докер.
Аноним 04/09/17 Пнд 15:00:29 #220 №1057014 
>>1056873
https://github.com/workshopper/learnyounode
можешь потыкать интерактивный курс
Аноним 04/09/17 Пнд 15:01:30 #221 №1057015 
>>1056693
>>1057014
сука ёбаный аутист не туда ответил
Аноним 04/09/17 Пнд 16:19:08 #222 №1057049 
>>1057006
Бамп вопросу, тоже интересно SSL на локальном серваке сделать.
Аноним 04/09/17 Пнд 16:24:50 #223 №1057052 
>>1057006
Ты что тестировать собрался, наркоман?
Аноним 04/09/17 Пнд 19:42:54 #224 №1057128 
>>1057006
Накатывать нжиникс с сертом на локалке пробовал? Если брезгуешь - виртуалка и докер.
Аноним 04/09/17 Пнд 20:16:11 #225 №1057143 
>>1057049
>>1057128
вобщем я погуглил, конфиг сертбота можно протестить с помощью их стейдж-сервера а https в локалке - только самоподписанный сертификат и браузер будет ворнинги показывать в любом случае.
Аноним 04/09/17 Пнд 20:18:42 #226 №1057144 
>>1057052
хочу сделать образ проекта - настроить все на этапе дева, потом просто его дропнуть на vps и ниче в проде не ковырять
Аноним 04/09/17 Пнд 22:22:10 #227 №1057209 
Когда моя самооценка как программиста начинает падать я заглядываю в исходники дешёвых одностраничников http://prostitutka-zakaz.kiev.ua/sript.js
Аноним 05/09/17 Втр 06:03:08 #228 №1057299 
>>1056986
>toLocaleFormat is not a function

Аноним 05/09/17 Втр 10:06:32 #229 №1057332 
1005870139.jpg
Подскажите, какую книгу по JS можно купить в России за вменяемые деньги? Учу язык с нуля. Можно и на английском!
Пикрил стоит тысячу рублей, норм книга?
Аноним 05/09/17 Втр 10:09:20 #230 №1057333 
>>1057332
спизди в интернете все книги, которые только захочешьпрограммистом от этого ты все равно не станешь
Аноним 05/09/17 Втр 10:40:17 #231 №1057343 
>>1057333
Вопрос был про физическую копию. Тебе-то какая разница, стану я кем-то или нет?
Аноним 05/09/17 Втр 10:49:15 #232 №1057349 
>>1057332
>на английском
>в России
Оу бой хир ви гоу!
Аноним 05/09/17 Втр 12:12:50 #233 №1057368 
>>1057332
Пикрил есть у меня, и это не книга, а просто справочник по функциям.





Аноним 05/09/17 Втр 12:17:10 #234 №1057369 
Котаны, у меня есть два вопроса.


Вот есть такое понятие, как состояние (в контексте реакта). Реакт я не знаю, пишу только на vue, хоть и для него есть либа, добавляющая состояния.

Что это вообще такое? Я с трудом понимаю в чем суть. Это что-то вроде централизованного хранилища данных, не зависимое ни от каких компонентов, верно? И что там нужно по-хорошему хранить? Объясните простыми словами, пожалуйста.
Аноним 05/09/17 Втр 13:04:18 #235 №1057389 
>>1057369
Есть на сайтк кнопка +1, нажимая её рисуется результат 123456...
Это состояние. Хранится в памяти. Корявый код может привести к утечке.
Аноним 05/09/17 Втр 13:33:45 #236 №1057399 
>>1057332
это бесполезная херня, просто пересказ документации, причем устаревающий каждый день, зачем он нужен если под рукой есть https://developer.mozilla.org я понятия не имею
Аноним 05/09/17 Втр 14:41:36 #237 №1057421 
>>1057389
>опка +1, нажимая её рисуется результат 12

То есть получается, что состояние - это данные о том, что пользователь сам сделал в процессе работы с веб-приложением в настоящий момент. В то время как данные, получаемые в процессе загрузки приложения, будь то что-то из базы данных или что-то еще состоянием не являются?
Аноним 05/09/17 Втр 14:58:44 #238 №1057428 
>>1057421
В общем случае да. В реакте компонент отвечает за свое состояние. Сам спросил, сам поменял. В то время как props отвечают за изменение компонента извне.
Аноним 05/09/17 Втр 19:52:36 #239 №1057574 
Сап, /prограммач, пытался гуглить, но не знаю как правильно сформулировать вопрос, поэтому нихуя не гуглится.

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

С меня как обычно нихуя
Аноним 05/09/17 Втр 19:54:27 #240 №1057576 
>>1057428

Ага, значит получается я всегда использовал эти самые состояния в контексте vue, сам того не подозревая. Ладно, спасибо
Аноним 05/09/17 Втр 20:30:57 #241 №1057597 
>>1057299
> new Date().toLocaleFormat("%d.%m.%Y")

> "05.09.2017"
Аноним 05/09/17 Втр 20:37:19 #242 №1057607 
>>1057574
Копай в сторону диалогов "Are you sure to leave this page?" - это если при закрытии странички нужно запомнить положение. Но можно это делать при каждом скроллинге страничек - тогда гугль про события скроллинга.
Аноним 06/09/17 Срд 00:41:44 #243 №1057748 
А обязательно учить перед JS верстку если планирую во фронтенд вкатываться (уже вкатываюсь)? Тошнит уже от этих тегов и скобок треугольных, хочу кодом заняться, а это существенно тормозит ибо в верстке реально большой стек технологий, адаптивная верстка и прочее, что надо обязательно освоить. Нельзя как-то совместить/после JS выучить?
Аноним 06/09/17 Срд 01:15:03 #244 №1057755 
>>1057748
Нахера тогда во фронт вкатываешься, если тебя тошнит. Учить - не учить, все равно по работе придется всем заниматься. Ты будешь выморажвать коллег в дедлайне своими - а я это не знаю, а я то не буду.
Аноним 06/09/17 Срд 02:21:26 #245 №1057766 
>>1052010 (OP)
Как учить жс, если уже немного умеешь программировать, базовые принципы понимаешь, либо если это не первый твой язык? жопошкрипьт.ру? Фланаган? КодАкадеми? Как правильнее. быстрее, эффективнее, лучше?
Аноним 06/09/17 Срд 02:30:00 #246 №1057772 
muzhik-bleat32278084orig.jpg
>>1057766
Аноним 06/09/17 Срд 03:33:36 #247 №1057791 
>>1057772
А по существу?
Аноним 06/09/17 Срд 05:09:11 #248 №1057808 
Вопрос по стандартному методу массивов Reduce. Передаю ему первое значение, но он его не принимает. Укажите на ошибку
https://jsfiddle.net/4z1obzvc/
Аноним 06/09/17 Срд 05:23:36 #249 №1057812 
>>1057808
https://jsfiddle.net/4z1obzvc/1/
Аноним 06/09/17 Срд 08:57:15 #250 №1057847 
>>1057808
>>1057812
Идти по этой ссылке
Аноним 06/09/17 Срд 09:59:58 #251 №1057862 
Безымянный.png
>>1057808
>>1057812
Оно?
Аноним 06/09/17 Срд 10:15:39 #252 №1057869 
>>1057748
само ядро языка(синтаксис, кейворды, типы данных, ооп) можно спокойно учить в отрыве от окружения. у кантора так и сделано, первая часть учебника это язык, второе это браузер.
>Тошнит уже от этих тегов и скобок треугольных
в стеке верстки есть перделки с синтаксическим сахаром

Аноним 06/09/17 Срд 11:52:33 #253 №1057925 
2017-09-06-115148665x670scrot.png
Аноним 06/09/17 Срд 12:10:07 #254 №1057932 
>>1057862
Спасибо, Антош.
Спасибо всем Антошам, всегда помогаете решить мои вопросы
Аноним 06/09/17 Срд 12:55:28 #255 №1057955 
Сап. Начал изучать JS и возник такой вопрос:

В каких случаях лучше использовать "switch", а в каких "else if"? Потому что в данный момент, они для меня одинаковы.
Аноним 06/09/17 Срд 13:20:01 #256 №1057982 
Я не этот >>1057748 анон, если что. Такой вопрос:

Куда бы можно вкатиться, зная JS, кроме как делать сайты? Не то что бы очень сам по себе фронт-энд вдохновлял. Можно ли делать мобильные приложения? Где вообще можно применять жс?
Сам думаю вкатиться все-таки сначала во фронт, т.к. процесс не должен быть слишком долгим, а там поднаберусь опыта и хоть каких-то средств и попробую заняться чем-то поинтересней.
Аноним 06/09/17 Срд 13:32:29 #257 №1057995 
>>1057982
>Куда бы можно вкатиться, зная JS, кроме как делать сайты?
Для начала бы неплохо знать гугл.
Аноним 06/09/17 Срд 13:38:11 #258 №1058001 
>>1057995
Ты такой умный)))) Можно сделать тебе сасай))))
Аноним 06/09/17 Срд 14:50:38 #259 №1058046 
сосоны, читаю кантора и почти уже дошёл до ооп и подумал что он ненужен как и во многих других языках. загуглил - ну народ примерно такое и пишет.
ну дак и чо? просто хочу уже хуярить второй раздел учебника.
может в жс есть хуйня которую можно освоить уже походу дела либо ваще только когда понадобится %%если понадобится%
Аноним 06/09/17 Срд 14:52:53 #260 №1058049 
>>1058046
>сосоны, читаю кантора и почти уже дошёл до ооп и подумал что он ненужен как и во многих других языках. загуглил - ну народ примерно такое и пишет.
Ты верно выхватил тренд последних лет, теперь функциональщина в моде.
Аноним 06/09/17 Срд 15:11:38 #261 №1058052 
>>1058049
Что такое вообще функциональщина, кроме
data.func2(func3,func4(func5){return func6})
?
Аноним 06/09/17 Срд 15:20:56 #262 №1058055 
>>1058052
Главное отличии в том, какой элемент является основным строительным блоком. в ФП это функции, в ООП это объект, есть слепленый воедино комок данных и методов.
Аноним 06/09/17 Срд 15:35:43 #263 №1058063 
изображение.png
Объясните почему прототипный метод sayHi не имеет доступа к свойсва функции-конструктора Animal?
Аноним 06/09/17 Срд 15:36:57 #264 №1058065 
>>1058063
Потому что ты пиздоглазый? У тебя водном месть name, в другом _name
Аноним 06/09/17 Срд 16:12:42 #265 №1058088 
>>1058065
Да, это так.
Аноним 06/09/17 Срд 16:25:23 #266 №1058095 
>>1057955
Тонкий намек: switch часто используется в связке с break. Наличие или отсутствие break в нужных местах может давать поведение, которое обычными условиями достичь сложнее.
Ну и лично по мне если сравниваешь одну переменную, то свич интуитивнее, чем нагромождение if-else.
Аноним 06/09/17 Срд 16:36:49 #267 №1058096 
>npm install -g module
>echo "require('module');" >> file.js
>node file.js
>
>sudo node file.js
>Error: Cannot find module 'module'

Чому так? С sudo нода в какой-то другой залупе модули ищет, что ли? Или просто у sudo меньше прав, чем без судо, и ему даже /usr/local/lib нельзя?
Аноним 06/09/17 Срд 16:48:06 #268 №1058102 
>>1058096
npm root # куда установил пакеты как пользователь
sudo npm root # где sudo npm ищет пакеты
Аноним 06/09/17 Срд 17:06:06 #269 №1058112 
>>1058102
Оно только локальный node_modules показывает (грубо говоря, $(pwd)/node_modules получается), даже если нет такой директории.
Аноним 06/09/17 Срд 18:05:03 #270 №1058166 
RYh-IKtH0x0.jpg
Пацаны-ребята, подключил через cdn bootstrap/4.0.0-beta и libs/jquery/3.2.1
Для адаптивности к плагину carousel хотел прописать скрипт для свайпа пальцем, но ни 1 не работает.
Что я сделал не так?
Может bootstrap 4 не поддерживает swipe? читал доки, про свайп ни слова
 Аноним 06/09/17 Срд 18:10:04 #271 №1058170 
>>1058166
долбаебы не могут в debug ?
Аноним 06/09/17 Срд 18:21:22 #272 №1058179 
>>1058170
и причем тут инспектор элементов?
Аноним 06/09/17 Срд 19:41:21 #273 №1058228 
Где почитать про Статические и фабричные методы.
Тут https://learn.javascript.ru/static-properties-and-methods нихуя непонятно. Даже в ютубе про это нихуя нет. Есть видосы просто про конструкторы.
Аноним 06/09/17 Срд 19:54:06 #274 №1058246 
>>1058228
все там доступно разжевано
Аноним 06/09/17 Срд 20:00:33 #275 №1058252 
>>1058246
Нет. Мне не нравятся примеры.
Аноним 06/09/17 Срд 22:33:02 #276 №1058356 
изображение.png
>>1052010 (OP)
Ребзя, что у Кантора за неточности, как это понимать? Какой из вариантов правильный?
Аноним 06/09/17 Срд 22:35:07 #277 №1058358 
>>1058356
Тема: Модули через замыкание
Аноним 06/09/17 Срд 22:35:13 #278 №1058359 
>>1058356
Вбей оба примера да попробуй. Разницы никакой.
Аноним 06/09/17 Срд 22:36:14 #279 №1058361 
>>1058356
оба правильные, используй какой хочешь. первый больше распространен
Аноним 06/09/17 Срд 23:00:15 #280 №1058372 
>>1058361
>оба правильные, используй какой хочешь.
Плохой совет.
Хороший совет: Не используй вообще, уже 2 года как let есть.
Аноним 07/09/17 Чтв 03:01:43 #281 №1058420 
14114901350180.jpg
Т-щи программисты прошу в вас помощи в написании скрипта.
Сам я не программист и как делать не знаю, придумал такой порядок действий, но реализовать его не смог.

Мне нужно удалить все свои посты и комментарии в чужой группе.
Захожу группу, запускаю скрипт.
1. Скрипт должен долистать стену до определённой даты, например 3 месяца назад, дату ввожу я сам.
2. Из всего, что он нашёл на стене выбрать мои посты и удалить их. Остальные посты развернуть и удалить оттуда мои коменты.

Буду оче благодарен тем, кто напишет такой скрипт и расскажет как он работает.
Аноним 07/09/17 Чтв 07:05:45 #282 №1058433 
>>1052010 (OP)
Ребят, как привязать Onclick к картинке, чтобы считала клики, и показывала клики внутри фрейма, ну или блока.
Аноним 07/09/17 Чтв 11:32:16 #283 №1058506 
Начал тыкать в Go
Почему почти все последние изменения в js напоминают синтаксис гоферов?
Или мне по нюфажеству так кажется?
Аноним 07/09/17 Чтв 11:46:00 #284 №1058510 
>>1058506
По нюфажеству.
Аноним 07/09/17 Чтв 12:16:58 #285 №1058522 
image.jpg
Почему не 18?
Аноним 07/09/17 Чтв 12:20:55 #286 №1058524 
>>1058522
>costructor
Аноним 07/09/17 Чтв 18:31:35 #287 №1058711 
Kooo.png
Очевидно очень простое решение, которое не могу уловить. Но меня в первую очередь волнует недостаток своей реализации -- если радиус не целое число, то пустые клетки квадрата по которому проходит двойной цикл считаются за частично заполненные (distr). Вижу только один выход, сравнивать с расстояние от центра и радиуса не только крайней точки кирпичика, но и ближайшей. Но это совсем не кошерно по-моему.
Аноним 07/09/17 Чтв 18:33:04 #288 №1058713 
>>1057766
Learn javascript сайт, там читаешь всё\скипаешь очевидные моменты
Аноним 07/09/17 Чтв 18:33:35 #289 №1058715 
hqdefault.jpg
У меня уже каша в голове от вашего погромирования. Почему js такой запутанный. Тут так, тут вот так, а тут если поставить точку то вот так, а если вынести сюда то ваще вот так, а ещё вот так и так тоже можно, на самом деле это не это, а вот то просто название другое и ваще всё это вот это. уууу
Чем дальше тем больше пиздец.
Да это мой первый язык. Да я дрочу его меньше месяца.
Аноним 07/09/17 Чтв 18:44:30 #290 №1058722 
15042283207320.png
Какую книжку по JS почитать новичку, если пока я знаю только Python?
Аноним 07/09/17 Чтв 18:55:24 #291 №1058729 
>>1058711
Все-таки добавил вторую проверку. Посмотрел лучшее решение других людей и оно оказалось практически таким же как и мое. Мне казалось есть какая-то простая формула, а может она действительно есть.

>>1058722
Рекомендую "Выразительный JavaScript" охренительная книга, но застрял на одном месте, скоро с новыми силами и знаниями снова наброшусь на нее.
Все остальные книги похожи на справочники.
(остановился на 6 главе. позор)
Аноним 07/09/17 Чтв 19:03:46 #292 №1058739 
>>1058715
Надо было начинать с ликвидации компьютерной безграмотности и чистого С.
Хуёвая идея вкатываться не понимая не типов и структур данных.
Аноним 07/09/17 Чтв 19:13:04 #293 №1058743 
>>1058739
Ну твоя идея куда лучше - учить два языка.
Аноним 07/09/17 Чтв 19:27:25 #294 №1058752 
>>1058743
это он так тралит, а сам по ночам рыдает в подушку осозновая нинужность своего мертвого языка. биты-то не попереставлять
Аноним 07/09/17 Чтв 20:51:38 #295 №1058794 
Почему в браузер не встроят еще один движок наподобие JS только улучшенный и глубоко переработаный html и сss? Например на обычных сайтах браузер использует старый движок при переходе на новый сайт использует новые возможности.
Аноним 07/09/17 Чтв 21:40:33 #296 №1058810 
>>1058715
Ну так, ты начни с изучения языков программирования, а не фрейворка для формошлепов. Не С, но там та же scheme по SICP, паскаль по школьным учебникам, может Lua по книжке с оф сайта.
Это те языки, которые разрабатывались академиками, а не слесарями, в них не всегда удобно ебашить проект в миллионы строк, и библиотек для генерации днявочек может не быть, но они сделаны так, чтобы их можно было описать небольшим количеством правил, а не тысячей исключений, а это как раз то что нужно личинке погромиста.
Аноним 07/09/17 Чтв 21:46:32 #297 №1058815 
>>1058810
В Гарварде учат на примере C, да и популярные языки - сиподобные.
Аноним 07/09/17 Чтв 22:31:42 #298 №1058826 
>>1058096
Так что, никто не знает? Как же мне запускать сервер на портах <1000, держа кучу дерьма в локальном node_modules, что ли, как последний дегенерат?
Аноним 07/09/17 Чтв 22:56:49 #299 №1058834 
>>1058794
В какой браузер? Яндекс-браузер?
Аноним 07/09/17 Чтв 22:58:10 #300 №1058836 
>>1058834
Хром, фирефокс,
Аноним 07/09/17 Чтв 23:04:14 #301 №1058838 
>>1058794
Но зачем? Если так приспичило писать в браузер свою особую идеальную дрисню, то проще сделать очередное транспилер, который будет выплёвывать православную троицу после переварки твоих закорючек.
Аноним 07/09/17 Чтв 23:15:21 #302 №1058842 
>>1058838
>Но зачем?
Для облегчения жизни разработчика и существенного повышения скорости разработки и производительности сайтов.

>Если так приспичило писать в браузер свою особую идеальную дрисню, то проще сделать очередное транспилер, который будет выплёвывать православную троицу после переварки твоих закорючек.
Накопленные знания и опыт помогут написать намного лучший браузерное ядро чем поддерживать старое глючное говно.
Аноним 08/09/17 Птн 02:25:38 #303 №1058894 
>>1052010 (OP)
Ребята, а скринкаст Кантора по node.js (его первая часть) ещё считается актуальной? А то там версия 0.0.1, когда на дворе уже версия 6.9 несколько лет как LTS. Из личной практики заметил что некоторые модули что он проповедует уже давно не поддерживаются и не используются. Есть что-то более актуальное, но не уступающее по качеству, в виде скринкаста?
Аноним 08/09/17 Птн 02:28:03 #304 №1058896 
>>1058894
Именно не разработка сайта на экспрессе, а пояснение нативных функций и возможностей Node.js, чтобы когда на собеседовании спросят, было что ответить. Документацию пока осилить не могу, а вот посмотреть видео с обьяснениями и примерами, было бы очень кстати...
Анон 08/09/17 Птн 11:40:27 #305 №1058966 
>>1058729
Дэвид Флэнаган - JavaScript Подробное руководство
ну и http://learn.javascript.ru канеш
Анон 08/09/17 Птн 11:44:05 #306 №1058969 
>>1058722
ошибся блэд, вот книжка >>1058966
Аноним 08/09/17 Птн 15:08:04 #307 №1059066 
>>1058810
Да вы ебанутые! Нахуя мне учить дидовский язык если за это время я всё же смогу осилить кривой js.
Аноним 08/09/17 Птн 17:03:08 #308 №1059094 
>>1059066
Не слушай их. Раньше в гейропке учили хардовою латынь, а потом уже брались за другие языки. Объясняли тем что латынь стоит у истоков и его сложность только в помощь, потому что выучив его, ты точно осилишь какой-нибудь французский. Бред. Люди часто не могли его осилить и в итоге не знали никакой язык кроме родного.
Сам в начале пути, но уверен что у меня получится несмотря на незнание ассемблера
Аноним 08/09/17 Птн 17:12:31 #309 №1059095 
Котаны братишки, нужно срочно выпиливаться с текущей работы, учу js по кантору, сейчас еще пытаюсь осилить Явное указание this: "call", "apply". Может кто то подскажет реально путь с самим высоким КПД, типа заканчивай кантора, потом читай вот это и потом учи (что?) ангуляр/реакт/ноду по вот этой книге. Цель как можно быстрее вкатится хоть куда.
Аноним 08/09/17 Птн 18:39:14 #310 №1059132 
>>1059066
>>1059094
Попытка учить скриптуху без знания основ байтолюбства - сродни попытке заняться дайвингом, при этом тупо не умея плавать.
Аноним 08/09/17 Птн 18:43:01 #311 №1059134 
>>1059095
вкатывайся в Хаскель, базарю не пожалеешь
Аноним 08/09/17 Птн 18:46:58 #312 №1059137 
Node.js-господа, имеется проблема с cluster + express.
https://pastebin.com/6RkMLvsZ
Почти всегда часть файлов в папке public не загружаются с 404, а быстродействие даже хуже, чем с одним потоком.
Аноним 08/09/17 Птн 19:01:04 #313 №1059143 
Метод toString при использовании для перевода в двоичную систему исчисления отбрасывает впереди стоящие нули. Можно ли получить двоичное число со всеми нулями не прибегая к циклу с ручным добавлением?
Аноним 08/09/17 Птн 19:02:26 #314 №1059145 
>>1059143
Сам то понял что сказал? С какими "всеми" нулями?
Аноним 08/09/17 Птн 19:17:02 #315 №1059154 
>>1059143
код покажи
Аноним 08/09/17 Птн 19:28:42 #316 №1059160 
>>1059145
Если с помощью этого метода переведём число 7 в бинарную систему, получим "111" что на самом деле будет являть 00000111. Мне нужны эти опускаемые нули
Аноним 08/09/17 Птн 19:33:46 #317 №1059165 
hem.png
>>1059154
Аноним 08/09/17 Птн 19:37:57 #318 №1059167 
Безымянный.png
>>1059165
Аноним 08/09/17 Птн 19:46:16 #319 №1059168 
>>1059167
Спасибо, крутое решение
Аноним 08/09/17 Птн 19:47:49 #320 №1059170 
>>1059168
Костыль, а не крутое решение.
Аноним 08/09/17 Птн 19:52:46 #321 №1059172 
Безымянный.png
еще моднее
Аноним 08/09/17 Птн 19:54:55 #322 №1059174 
>>1059170
Можно ли обойтись без этого костыля?
Аноним 08/09/17 Птн 19:57:49 #323 №1059176 
2017-09-08-195725335x72scrot.png
>>1059174
Аноним 08/09/17 Птн 21:20:17 #324 №1059200 
Блять, как же все же сука пиздато, когда блять целый день решаешь эту ебаную Канторовскую задачу, и уже блять смотреть на нее не можешь, а потом хуяк и решил.
Аноним 08/09/17 Птн 21:45:19 #325 №1059213 
14899198604113.png
закину сюда свой тред
Dumpach board
https://2ch.hk/pr/res/1057223.html

Можете обоссать, но конструктивная критика будет лучше, ну и еще потестить милости прошу
Аноним 08/09/17 Птн 22:09:41 #326 №1059223 
Хочу я раздробить большой компонент на кучу маленьких, положить их в отдельные репозитории и подключать с помощью npm, не складывая все в одну кучу.

Создаю формочку с помощью create-react-app. Пишу сам компонент yobaForm.js, пишу базовые стили и подключаю в yobaForm.js простым import from "./yobaStyle.css". Запускаю с помощью npm start, проверяю — все збс.
Создаю так же еще кучу компонентов. Все удобно, все легко запускаются и тестируются.

Проблема возникает дальше.
Создаю само приложение с помощью create-react-app, подключаю зависимости, пишу import "yobaForm"; — сам компонент подключается, но вебпак отказывается найти "./yobaStyle.css", импортированный в этой форме. Если прописать пути в webpack.config.js — стили находятся, но этого хочется избежать. Как быть?
Аноним 08/09/17 Птн 22:21:17 #327 №1059227 
root.jpg
Допускается вынесения разметки из компонентов реакт или все должно находится внутри реакта?
Аноним 08/09/17 Птн 22:37:51 #328 №1059233 
>>1059200
Переосмысление задачи обычно происходит после перерыва. Нужно иногда переключаться между задачами.
Аноним 08/09/17 Птн 23:56:29 #329 №1059284 
>>1059227
Ты это что, в ручную всё прописывал?
Аноним 09/09/17 Суб 00:05:57 #330 №1059286 
>>1059284
Нее, только начиная от первого div, кроме root.
Аноним 09/09/17 Суб 00:18:18 #331 №1059289 
Какого хуя все и везде подряд используют binding over arrow function в классах?
Аноним 09/09/17 Суб 00:24:10 #332 №1059293 
>>1059289
> arrow function
arrow function не bind'ит от слова совсем.
Но какая-то тупая макака решила, что таки биндит волшебно, пошел слух. Так и живем.
Аноним 09/09/17 Суб 00:54:59 #333 №1059300 
>>1059293
>
>Но какая-то тупая макака решила, что таки биндит волшебно, пошел слух. Так и живем.
Да ты чо? Использую их в классах, всё биндится к родительскому объекту. А макаки зачем то биндят в конструкторе. Нахуя?
Аноним 09/09/17 Суб 02:08:53 #334 №1059320 
Доки, вот кароч выполнил я тестовое задание по фронтенду, адаптивная верстка формы для мобилок и десктопов с проверкой формы на валидность. Рецензент пишет мол переменная i в глобальной видимости ты типо переменные пиши не var a let. Ну как бы да крутая фича, но ведь скрипты с let не работают на мобилах ( ucbrowser, android browser, safari).
Обратной совместимости вроде как нет никаким полифилом или библиотекой это не пофиксить. Кто из нас нуб?
sageАноним 09/09/17 Суб 07:33:55 #335 №1059355 
>>1059300
Не очень понимаю, про какой биндинг через стрелки идет речь. Если это просто анонимная функция в рендере как это в туториалах часто показывают, то это вызывает проблемы с пересозданием функции на каждый ререндер.

Биндинг в конструкторе, помимо привязки контекста, еще полезен при кэррировании, чтоб не плодить однотипных методов.
Аноним 09/09/17 Суб 07:57:01 #336 №1059357 
Безымянный.png
>>1059355
он имеет ввиду то что стрелочные функции объявленные в конструкторе уже прибиндены к экземпляру класса и в дальнейшем их уже нельзя перебиндить. а вот чо ты хочешь донести я тоже не пойму.
Аноним 09/09/17 Суб 09:31:12 #337 №1059369 
>>1059320
> никаким полифилом или библиотекой это не пофиксить.
Ты на острове живёшь? Почитай про babel

> Рецензент пишет мол переменная i в глобальной видимости ты типо переменные пиши не var a let.
Претензия мне не очень понятна, обычно i используется только внутри циклов. Но в целом лучше использовать let. Например этот код: https://jsfiddle.net/Lmfdp0o3/
по задумке должен выводить цифры от 0 до 9 с промежутком в одну секунду, но вместо этого 10 раз выводиться число 10. Если поменять var на let - то всё ок. Ещё хорошая идея использовать const для переменных, которые не собираешь перезаписывать.
sageАноним 09/09/17 Суб 09:55:09 #338 №1059373 
>>1059357
Понятно. Ну, такой подход кмк не очень катит, если методы не однострочники, а по
5-10 строк, а то и какой-нибудь кусок рендера.
Аноним 09/09/17 Суб 13:07:33 #339 №1059413 
Поцоны, как элегантней отфильтровать массив массив вроде такого:
input: [[0,0], [0,1], [0, 0], [1,1], [1,1], [1,1], [2, 2]]
output: [[0, 0], [0, 1], [1,1],[2,2]]

Я пока использую uniqBy из lodash:
uniqBy(arr, (cell) => `${cell[0]}${cell[1]}`)

Но это костыль какой-то.
Аноним 09/09/17 Суб 13:16:14 #340 №1059417 
>>1059413
> const result = [...new Map(input.map(x => [JSON.stringify(x), x])).values()];

Замени JSON.stringify на подходящую проверку, например на _.eq
Аноним 09/09/17 Суб 15:47:30 #341 №1059458 
>>1059137
Никто с node.js не имеет дела, серьезно?
Аноним 09/09/17 Суб 16:18:00 #342 №1059463 
>>1059458
>express
>2k17
Подумай.
Аноним 09/09/17 Суб 16:27:31 #343 №1059467 
>>1059463
А шо с ним не так? Какие альтернативы?
Аноним 09/09/17 Суб 18:27:11 #344 №1059484 
>>1059467
koa, который не осилят 90% этого треда :)
Аноним 09/09/17 Суб 18:35:35 #345 №1059487 
>>1059484
В чем принципиальное отличие? Почему я должен хотеть эту штуку?
Аноним 09/09/17 Суб 19:10:16 #346 №1059496 
>>1059487
> В чем принципиальное отличие?
ШАЙНИ НЬЮ.
Аноним 09/09/17 Суб 22:07:11 #347 №1059572 
>>1059467
Тут ещё Фастифай подъехал, ЖСОН-ориентированный. Хеллоу-ворлдами в три раза быстрей кидается, чем Экспресс.
https://thenewstack.io/introducing-fastify-speedy-node-js-web-framework/
Аноним 09/09/17 Суб 22:14:05 #348 №1059575 
Нормальный полностью функциональный на промисах/стримах/чистых функциях серверный фреймворк, без костылей вроде async-await еще не придумали?
Аноним 09/09/17 Суб 23:31:51 #349 №1059621 
darova.png
Почему this в var1 указывает на window?
Аноним 09/09/17 Суб 23:46:53 #350 №1059624 
>>1059621
this за пределами function указывает куда угодно - стандарт не регламентирует. В браузерах это window.
Аноним 10/09/17 Вск 00:01:04 #351 №1059627 
А у меня 21 репутация на стаковерфлоу по тэгу javascript ^^
Аноним 10/09/17 Вск 00:14:09 #352 №1059631 
>>1059627
А на ответы@mail.ru какая репа?
Аноним 10/09/17 Вск 00:23:42 #353 №1059636 
>>1059631
стак - это стильно модно и молодежно.
Аноним 10/09/17 Вск 00:34:35 #354 №1059639 
ебать, антоши, что-то я никак тему промисов не раскурю(
Аноним 10/09/17 Вск 10:11:02 #355 №1059723 
>>1059627
а я в топ-400 на кодварсах
Аноним 10/09/17 Вск 13:38:49 #356 №1059792 
Как через node.js получить на сервере ID нажатой кнопки? Да и возможно ли вообще такое?
Аноним 10/09/17 Вск 16:19:30 #357 №1059857 
>>1059200
> Блять, как же все же сука пиздато, когда блять целый день решаешь эту ебаную Канторовскую задачу, и уже блять смотреть на нее не можешь, а потом хуяк и решил.
И в чём смысл решения этих ебанутых задач? Да ещё и тратить на них целый день. Я помню как первым языком решил дрочить питон и там тоже были ебанутые задачки, а потом в книге дошёл до реальных задач которые не имели нихуя общего с теми говнозадачками про подсчёты анусов и прочей еболы.
Аноним 10/09/17 Вск 16:47:32 #358 №1059870 
>>1059857
Канторовские задачи максимально приближены к боевым условиям.
Аноним 10/09/17 Вск 17:59:15 #359 №1059933 
>>1059792
>Да и возможно ли вообще такое
Без помощи фронта нет, ни нодой ни чем другим на беке.

>Как через node.js получить на сервере ID нажатой кнопки
Смотри по обстановке, если сабмитишь форму по клику на кнопку, можешь ее id записывать в поле hidden перед сабмитом. Если просто кнопка, то навешивай обработчик события клика, посылай ajax запрос.
Аноним 10/09/17 Вск 19:27:23 #360 №1059966 
this это своего рода self?
Аноним 10/09/17 Вск 19:31:50 #361 №1059968 
>>1059966
Можно поинтересоваться? Почему ответ на этот вопрос не ищешь в документации?
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this
Аноним 10/09/17 Вск 21:28:12 #362 №1060017 
кто из отцов жс хочет нормально поебаться с одной задачкой?
Аноним 10/09/17 Вск 21:34:56 #363 №1060018 
>>1060017
Сук, а сразу задачу описать не судьба?
Аноним 10/09/17 Вск 21:37:40 #364 №1060020 
>>1060018
написать функцию, которая возвращает строку 'Hello, world!' не используя в коде символы: h e l o w r d x

Аноним 10/09/17 Вск 21:51:21 #365 №1060025 
>>1060020
Унылая хуйня с вытаскиванием символов из undefined и прочего говна через [].
Аноним 10/09/17 Вск 22:47:02 #366 №1060040 
>>1060020
>не используя в коде символы: h e l o w r d x
() => "\u0048\u0065\u006c\u006c\u006f\u002c\u0020\u0077\u006f\u0072\u006c\u0064\u0021"
Аноним 10/09/17 Вск 22:48:41 #367 №1060041 
Котаны, рассчитайте сложность изучения ангуляр/реакт от сложности изучения нативного жс по кантору, если взять его за 100%
Аноним 10/09/17 Вск 22:50:48 #368 №1060042 
>>1060040
мм, да, я всрал условие, этот способ тоже забанен должен быть, идея там эта >>1060025
Аноним 10/09/17 Вск 23:22:19 #369 №1060046 
json.jpg
json2.jpg
json3.jpg
Как достучатся до отдельного элемента массива ListE.
На 2 и 3 пикчах почему то две ссылки не работают, хотя должны как исправить?
Аноним 10/09/17 Вск 23:26:10 #370 №1060048 
>>1060046
Еще добавлю.
Я хочу через метод PUT обновить нужный элемент в массиве но он нихрена не может достучатся.

Или наверно нужно массив ListE отдельно чтобы был?
Аноним 11/09/17 Пнд 02:00:12 #371 №1060077 
Что посоветуете для асинхронного рендеринга (ajax-call -> render)?
Аноним 11/09/17 Пнд 03:15:52 #372 №1060085 
>>1060041
Реакт прост как нечего-делать. Ангуляр — энтерпрайзный монстр, естественно посложнее.
Аноним 11/09/17 Пнд 13:01:33 #373 №1060195 
Репост из /web/

https://codepen.io/anon/pen/dzxNRZ

Вроде бы всё работает, но в сравнении с http://online-timer.ru/ и таймером на моём телефоне наблюдается рассинхрон. Каждые минуты 2 увеличивают отставание моего таймера где-то на секунду. С чем это связано? Где косяк? Если вместо 1000 поставить 999 на интервал, то отставание начнется позже и будет более медленным, но тем не менее будет.

Я правильно понимаю, что дело в том, что коду тоже нужно какое-то время на выполнение и из-за этого копятся сдвиги на 1-2 мс? И если нужна нормальная точность, то нужно какой-то хак придумать, который, допустим, раз в минуту будет проверять сколько времени прошло с момента запуска таймера, сколько времени прошло по мнению таймера и фиксить.
Аноним 11/09/17 Пнд 13:05:01 #374 №1060198 
>>1052010 (OP)
Двач, как же я заебался, где можно найти годную инфу по докеру и node.js? Везде, блеать даже в официальной документации node.js и даже в ёбаной официальной документации докера (где примеры на Python) есть пример только с запуском ОДНОГО контейнера, да как так то, а? Как так?
Сама идеология говорит о том, что нужно запускать много контейнеров, чтобы было ништяково, а они в оффициальных гайдах запускают по одному контейнеру и нигде нет инфы как правильно запустить несколько докеров и связать их между собой, чтобы было ништяково, отсюда реквест, братики, пожалуйста, скиньте мб уже какие-то примеры реализованых приложений на гитхабе с node.js+express+mongo (или любым другим стеком), где будет показано как нужно написать своё приложение, чтобы запустить его в докере с НЕСКОЛЬКИМИ контейнерами. Или видео с гайдом или текст с гайдом, а то я в полнейшем замешательстве, один контейнер запустить могу, с базой данных на втором, а что делать дальше с ним - непонятно. Как например доппилить авторизацию на другом контейнере или какую-то ещё фичу, типу API.
Аноним 11/09/17 Пнд 13:24:45 #375 №1060206 
>>1058356

релейт https://stackoverflow.com/a/939412/2337281

можно так и так, потому что спека языка это не запрещает.

но первый вариант как у кантора норм, так как он четко показывает, что там будет возвращен результат, а не инстанция
Аноним 11/09/17 Пнд 13:25:48 #376 №1060207 
>>1060206
>но первый вариант как у кантора норм

*второй
Аноним 11/09/17 Пнд 13:36:45 #377 №1060213 
>>1060198
Проще говоря, как создавать новые сервисы и подключаться к уже существующим? Просто писать в приложуху и вызывать из папок, добавляя строки в Dockerfile или писать много разных приложух со своими package.json, хостить их в докер контейнерах по отдельности, а потом заставить как-то взаимодействовать, если да, то как?
Аноним 11/09/17 Пнд 15:03:04 #378 №1060270 
image.png
Выбираем вместе второй язык для глубокого изучения.
Присвоил коэффициент по шкале от 1 до 5 в трех категориях.
Под новизной понимается то что я не просто выучу JS-2, а какие-то новые парадигмы, как статическая типизация, полноценный ООП. Синтаксис напротив хотелось бы JS-подобный хотя питоньи отступы выглядят хорошо. Востребованность на основе анализа вакансий в моем ДС-4.
Все ли правильно сделал?
Аноним 11/09/17 Пнд 15:05:17 #379 №1060272 
>>1060270
Учи либо си, либо хаскель.
Аноним 11/09/17 Пнд 15:05:52 #380 №1060273 
>>1060272
И что я с ними на сервере буду делать?
Аноним 11/09/17 Пнд 15:11:18 #381 №1060275 
>>1060270
Руби, питон, пхп — ничего нового после js, наоборот, меньше концепций (более императивные языки). Никаких новых парадигм, типизации, саморазвития.

Для развития глянь F#, Haskell, хотя можешь начать и с C#
Аноним 11/09/17 Пнд 15:12:59 #382 №1060276 
>>1060270
Жабу учи, если ещё даже со статической типизацией и нормальным ООП не сталкивался.
Аноним 11/09/17 Пнд 15:12:59 #383 №1060277 
>>1060273
Ты уж определись, хочешь ты развития или инструмент на продажу. Если второе, учи пхп, вакансий тьма.
Аноним 11/09/17 Пнд 15:19:13 #384 №1060279 
Сап, вкатываюсь в JS. Есть отпуск и много свободного времени. Сколько понадобится времени чтобы изучить до уровня джуна с нуля, если я весь отпуск не буду выходить из квартиры и только и делать что учить JS? Я это буду делать по шапке.
Аноним 11/09/17 Пнд 15:22:45 #385 №1060281 
>>1060277
Ну хотелось бы и то и то. Но если прям выбирать между сидеть без работы и быть макакой то второе.
>>1060275
А что в шарпе кроме ООП и статики? В руби вот насколько я знаю есть концепция что все является выражением, как в лиспе, там можно ифы присваивать, а в жс нельзя - круто, нет?
Аноним 11/09/17 Пнд 15:23:55 #386 №1060283 
>>1060281
В жсе для этого есть тернарный оператор.
Аноним 11/09/17 Пнд 15:26:58 #387 №1060285 
>>1060283
Но внутри ? нельзя вставлять стейтменты, например ретурн, а внутри ифов можно. Понятно что переписать по-другому можно всегда.
Аноним 11/09/17 Пнд 15:31:53 #388 №1060286 
>>1060285
Ну ты уж определись, либо все есть выражение, и ты за чистоту, либо ты согласен на чуть-более удобный синтаксис, но по прежнему не против того, чтобы функция по вычислению процента по кредиту вызывала коллекторов.
Аноним 11/09/17 Пнд 15:42:31 #389 №1060292 
>>1060281
> все является выражением
Да, это очень интересная фича, странно как она забрела в руби.
Но в любом случае так можно писать и JS, нужны для этого только тернарный оператор и функции. То, что остальные конструкции языка — стейтменты — не имеет значения, потому как они не нужны при написании в фп стиле.
Аноним 11/09/17 Пнд 15:47:48 #390 №1060296 
2017-09-11-154659458x131scrot.png
>>1060285
хз
Аноним 11/09/17 Пнд 15:53:44 #391 №1060301 
>>1060292
>нужны для этого только тернарный оператор и функции
А как перегнать в экспрешн такое например?
const f = x => {
if(x) {throw 'error'} else {return 1}
}
такое не катит
const f = x => x?(_=>throw 'error')():1
Аноним 11/09/17 Пнд 15:57:04 #392 №1060302 
А все, вот так работает. Да, клево
const f = x => x?(_=>{throw 'error'})():1
Аноним 11/09/17 Пнд 16:09:15 #393 №1060308 
>>1060301
При большой необходимости можно и так, но по хорошему как я сказал — не нужны, как и остальные statements с сайд эффектами.
Аноним 11/09/17 Пнд 16:35:21 #394 №1060319 
Посоны, а бабель-то в 2017 году еще нужен?
Аноним 11/09/17 Пнд 16:45:18 #395 №1060325 
>>1060319
для JSX, IE6 и прочих выкрутасов и если не использовать Typescript.

Просто писать на ES2015-2016 можно и нативно.
Аноним 11/09/17 Пнд 16:47:49 #396 №1060326 
>>1060325
Блять, совсем про jsx забыл
Аноним 11/09/17 Пнд 18:53:35 #397 №1060375 
Двочик, у меня есть вопрос про такую штуку как объект переменных LexicalEnvironment. Читаю сайтик лерн джаваскрипт.

Сначала они говорят: "В конце выполнения функции объект с переменными обычно выбрасывается и память очищается. ... Через некоторое время мы рассмотрим более сложные ситуации, при которых объект с переменными сохраняется и после завершения функции."

От чего именно это зависит - объект пропадет или останется?

Алсо, такой код:

function makeCounter() {
var currentCount = 1;

return function() {
return currentCount++;
};
}

var counter = makeCounter(); // [[Scope]] -> {currentCount: 1}

alert( counter() ); // 1, [[Scope]] -> {currentCount: 1}
alert( counter() ); // 2, [[Scope]] -> {currentCount: 2}
alert( counter() ); // 3, [[Scope]] -> {currentCount: 3}
alert( counter2() ); // 1, счётчики независимы

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

Вопрос: почему после каждого вызова объект не исчез, а продолжил существовать так что мы могли каждый раз увеличивать переменную на один?
Аноним 11/09/17 Пнд 19:21:17 #398 №1060393 
>>1060375
Функция makeCounter создает локальную переменную, а потом создает и возвращает функцию, которая смотрит на эту переменную и может ее модифицировать.

В обычной ситуации, локальные переменные сгорают после завершения функции. Но в данном случае объявляется другая функция и завязывается на нее. Это называется замыканием. В итоге переменная count будет жить столько, сколько живет функция ее замкнувшая.

Соответственно каждый раз вызывая makeCounter, создается новая функция с новой переменной внутри.
Аноним 11/09/17 Пнд 19:52:26 #399 №1060414 
>>1060375
>почему после каждого вызова объект не исчез, а продолжил существовать
1. ты написал в коде что-то вроде
function hitler() {
var x=1
return x
}
2. под капотом интерпретатора, незаметно для тебя создался невидимый объект lexical environment. его нельзя получить в коде, но он существует. представь что это что-то вроде
hitler.lexicalEnvironment
в этот объект записалось два свойства {x:1, [[scope]]:window} // или другая функция внутри которой создан гитлер
3. если ты про просто запустишь функцию hitler() то очевидно что после отработки ее lexicalEnvironment больше нахрен не нужен и интерпретатор его затирает, так как его никто не использует. но если внутрь гитлера добавить другую функцию, которая обращается к иксу
function hitler() {
var x=1
return function() { return x+1 }
}
то станет очевидно что этот объект надо сохранять, так как он используется. причем для каждой отдельно отработавшей функции будет создаваться и храниться отдельный объект с независимыми значениями икса.
это сложная тема, посоветовал бы почитать спецификацию, но ты ж не будешь.
Аноним 11/09/17 Пнд 19:53:10 #400 №1060416 
>>1060393
Ясноньо, спасибо. Если хотите что-то добавить, говорите, я прочитаю.
Аноним 11/09/17 Пнд 19:55:23 #401 №1060420 
>>1060414
Может и буду, если руки дойдут. Спасибо за объяснение.
Аноним 11/09/17 Пнд 21:03:29 #402 №1060444 
>>1060270
Elixir/Phoenix
Аноним 11/09/17 Пнд 21:21:42 #403 №1060451 
>>1060444
Двачую. Это реально, что в эликсире сборка мусора происходит без stop the world?
Аноним 11/09/17 Пнд 21:24:35 #404 №1060452 
>>1060451
только вчера по нему книгу открыл, боюсь пиздануть лишнего. но, вроде как да.
гугли за девять девяток у эрланга, на котором базируется эликсир.
Аноним 11/09/17 Пнд 21:55:41 #405 №1060459 
Что хочется:
Пишу "create-foo-app component-x", прописываю в нем компонент с использованием современного синтаксиса и scss, запускаю через npm start. Создаю второй компонент с помощью "create-foo-app y-component", в нем импортирую component-x со всеми стилями и радуюсь.

Что есть:
Пишу "create-react-app component-x", создаю компонент, запускаю через npm start. Создаю второй компонент, но не радуюсь, потому что без eject не удастся подключить стили из component-x, да и поддержки es2017 по умолчанию нет — приходится прописывать пути в конфиге вебпака.

С nwb такая же проблема.

Есть ли какой-нибудь тулкит, который позволяет удобно создавать независимые компоненты?
Аноним 11/09/17 Пнд 23:57:38 #406 №1060514 
narko.jpg
Простите за глупый вопрос, но ничего не гуглится. Как сделать partial application функции get лодаша, чтобы конечная функция при вызове вставляла аргумент в середину. На примере:
без partial application
_.get(obj, ['huy', 'id'])

c partial application должно быть так (huy динамичный)
_.get(obj, [ЧТОБЫ ВОТ СЮДА СУКА, 'id'])
Аноним 12/09/17 Втр 02:43:05 #407 №1060547 
>>1060514
Никак ты частично не применишь массив.
hui => _.get(obj, [hui, "id"])
Аноним 12/09/17 Втр 03:57:28 #408 №1060558 
Поясните за TypeScript. Почему все на него так надрачивают, но за всю свою карьеру в 8 лет, я так и не смог найти никого кто на нём писал бы что-то больше чем хеллоу ворлд? Им реально кто-то пользуется или это легенда типа Хаскеля?
Аноним 12/09/17 Втр 09:36:44 #409 №1060600 
>>1060514
const partial => arg => (obj, arr) => _.get(obj, arg.concat(arr))

Но я не очень понял, что ты там городишь, объясни лучше
Аноним 12/09/17 Втр 09:45:37 #410 №1060610 
>>1060558
>Им реально кто-то пользуется
Нет, MS просто деньги вникуда спускает чтобы на двачике холивары были.
>карьеру в 8 лет
>не задуматься о типизации в JS
Аноним 12/09/17 Втр 09:47:44 #411 №1060612 
>>1060610
Что ты имеешь ввиду под
>не задуматься о типизации в JS
Мне например это вообще никак не мешает. И не мешало никогда. Я даже специально не могу придумать пример когда это чему-то помешает.
Аноним 12/09/17 Втр 09:49:01 #412 №1060614 
>>1060275
>питон
>Никаких новых парадигм, типизации, саморазвития
Лол, async for, async yield, async nebo, async allah
Аноним 12/09/17 Втр 09:53:31 #413 №1060619 
>>1060612
Забей, никто им не пользуется, просто студенческая поделка какого-то Хайлсберга, который ничего в программировании не понимает.
Аноним 12/09/17 Втр 11:12:37 #414 №1060659 
>>1060558
Конечно пользуемся. Простой JS только в совсем старых проектах.
Аноним 12/09/17 Втр 11:19:53 #415 №1060665 
>>1060619
>мой дед писал и ты пиши.
>>1060659
Так профит то в чём?
Аноним 12/09/17 Втр 12:58:09 #416 №1060714 
>>1060665
>>мой дед писал и ты пиши.
Ну видимо ты и есть дед либо переигрывающая php-макака, раз не понимаешь профита статической типизации.
Аноним 12/09/17 Втр 13:01:46 #417 №1060716 
>>1060714
>Поясните за TypeScript. Почему все его звалят
>MS просто деньги вникуда спускает чтобы на двачике холивары были.
>Поясните тогда за типизацию
>Забей, никто им не пользуется, просто студенческая поделка какого-то Хайлсберга,
>Так профит то в чём?
>Ну видимо ты и есть дед либо переигрывающая php-макака
А есть кто-нибудь не токсичный и агрессивный?
Аноним 12/09/17 Втр 13:03:58 #418 №1060718 
Котаны, если я все же осилю всего кантора, и потом реакт, я буду успешным? Ну или хотя бы средне-успешным? 28 лет.
А php после всей этой фигни с js "за неделю" осилю?
Аноним 12/09/17 Втр 13:10:01 #419 №1060719 
>>1060716
>А есть кто-нибудь не токсичный и агрессивный?
Да, твоя мамка.
Аноним 12/09/17 Втр 13:11:41 #420 №1060721 
>>1060718
после дайва инто жс ты уже не захочешь пердолиться в некропшп
Аноним 12/09/17 Втр 13:30:21 #421 №1060726 
5455.jpg
545533.jpg
>>1060721
> не захочешь пердолиться в некропшп
Аноним 12/09/17 Втр 13:31:17 #422 №1060727 
>>1060726
>Система типов
>Утиная
Аноним 12/09/17 Втр 13:31:55 #423 №1060728 
>>1052010 (OP)
Привет.
От делать нечего пишу парсер flac файлов на ноде. Ломаю голову над асинхронщиной. Есть код: https://jsfiddle.net/g6gjdxqj/
Задача пока простая - чекаем файл на то, является ли файл флаком: по спекам в начале файла закодированы символы 'fLaC'. Но в ноде чтение файлов и прочие операции синхронные. Вопрос, как мне получить из промиса или асинхронной функции результат так, чтобы до его получения программа не прерывалась? Ну и вообще сохранить его для последующего использования...
Аноним 12/09/17 Втр 13:32:57 #424 №1060729 
>>1060728
>парсер flac файлов на ноде.
А завтра ты в жопу давать будешь?
Аноним 12/09/17 Втр 13:34:13 #425 №1060730 
>>1060729
Как будто что-то плохое
Аноним 12/09/17 Втр 13:54:43 #426 №1060737 
>>1060279
Полгода-год. Языки разметки еще не забудь.
Аноним 12/09/17 Втр 13:58:05 #427 №1060739 
>>1060737
Так долго? Это просто JS или JS + фрэймворки?
>Языки разметки еще не забудь.
Я их знаю чуток.
Аноним 12/09/17 Втр 14:02:40 #428 №1060744 
>>1060739
Долго? Ты хотел сказать "быстро" может все же?
Это просто базовый жс до состояния, когда какой-нибудь фреймворк просто берешь и юзаешь.
Аноним 12/09/17 Втр 14:08:05 #429 №1060748 
>>1060744
Ладно, попытаюсь посильнее налегать на материалы из шапки.
Аноним 12/09/17 Втр 14:08:21 #430 №1060750 
>>1060744
Спасибо за ответы анон.
Аноним 12/09/17 Втр 14:17:22 #431 №1060758 
>>1060665
Когда пишешь js, можешь быть увереным в отсутствии случайных ошибок только покрыв все тестами на 100%.
(Для наглядности взгляни на повальный фанатизм к тестированию в руби сообществе.)

В TS такие обишки просто не совершаешь, потому что IDE тебе все подчеркивает красным. Сильно развязывает руки, позволяет все редактировать, рефакторить настолько глубоко, насколько хочется. Ускоряет прототипирование, скорость разработки ну и как там модно говорить про модные языки.

Как легкий бонус — вплывающая документация, автодополнение и прочие прелести IDE.
Аноним 12/09/17 Втр 14:18:36 #432 №1060760 
>>1060758
Круто. Спасибо за развёрнутый ответ анон.
Аноним 12/09/17 Втр 14:26:24 #433 №1060762 
>>1060758
При этом иногда система типов бьет тебе по ебалу. Еще часто тайпингсы для сторонних либ кривые или их вообще нет. Долгая компиляция вместо ф5 прилагается.
Аноним 12/09/17 Втр 14:40:57 #434 №1060773 
Сап, в JS Можно обернуть if в другой if?
Выполняю пример из Eloquent который немного усложнил и сразу понят что что-то не так.
https://jsfiddle.net/e0k6y8un/
Аноним 12/09/17 Втр 15:06:28 #435 №1060783 
>>1060773
имя переменной
Аноним 12/09/17 Втр 15:12:02 #436 №1060787 
>>1060783
Чувствую себя тупым. Спасибо анон.
https://jsfiddle.net/e0k6y8un/3/
Аноним 12/09/17 Втр 15:18:30 #437 №1060792 
Безымянный.png
>>1060787
этого не случилось бы если бы ты не писал код в этой срани
Аноним 12/09/17 Втр 15:21:20 #438 №1060795 
>>1060792
В этой срани я просто поделился. Как и написано в оп посте. А так я пишу в IDE.
Аноним 12/09/17 Втр 16:13:50 #439 №1060835 
>>1060762
>система типов бьет тебе по ебалу
Для этого есть any
> тайпингсы для сторонних либ кривые или их вообще нет
Если нет в @typings/libaName ну шо поделать, значит твоей библиотекой пользуется полтора замлекопа.
>Долгая компиляция вместо ф5
webpack --watch
Аноним 12/09/17 Втр 17:08:18 #440 №1060873 
Что лучше на будущее - вешать на кнопку onclick или addEventListener?
Аноним 12/09/17 Втр 17:27:16 #441 №1060884 
>>1060873
Сколько одинаковых онкликов на одном элементе ты можешь сделать? А динамически?
Аноним 12/09/17 Втр 18:18:45 #442 №1060904 
А зачем нужен koa, может кто по хардкору пояснить? А то я думал свой сервер типа как человек написать, не на голой ноде, а тут от того самого Express'а (не пользовался).
Скачал, потыкал — а там ж нихуя нет, кроме обёртки над запуском http.server и перетаскиванием данных из request в context, абсолютно.
Аноним 12/09/17 Втр 18:46:34 #443 №1060925 
Объясните плиз что делает этот чувак.

Было бы неверно предположить, что цепочки областей видимости отличаются для пяти функций в массиве result. Вместо этого каждое обновление переменной i обновляет область видимости, которую делят между собой все пять анонимных функций. Это можно исправить путём добавления нового контекста исполнения, в котором копия значения i поступит извне как параметр функции.

И потом код:

var result = [];

for (var i = 0; i < 5; i++) {
result = >(function inner(x) {
// additional enclosing context
return function() {
console.log(x);
}
>})(i);
}

result[0](); // 0, expected 0
result[1](); // 1, expected 1
result[2](); // 2, expected 2
result[3](); // 3, expected 3
result[4](); // 4, expected 4

Собсна вопрос: что это за скобочки и почему они решили проблему, если без них было result[0](); // 5, expected 0
result[1](); // 5, expected 1
result[2](); // 5, expected 2
result[3](); // 5, expected 3
result[4](); // 5, expected 4

Скобочки выделил зеленым.
Аноним 12/09/17 Втр 18:47:20 #444 №1060926 
>>1060925
Они не выделись. Ну вы понели?
Это я отсюда взял https://medium.com/@sshambir/%D0%BE%D1%81%D0%B2%D0%B0%D0%B8%D0%B2%D0%B0%D0%B5%D0%BC-%D0%B7%D0%B0%D0%BC%D1%8B%D0%BA%D0%B0%D0%BD%D0%B8%D1%8F-%D0%B2-javascript-5b83267ef7d1
Аноним 12/09/17 Втр 18:50:41 #445 №1060929 
>>1060835
>webpack --watch
Который не ускоряет компиляцию, а лишь чаще разогревает пекарню. В больших проектах что обновление через watch, что ручной рестарт — время теряется.

Flow в этом плане получше. Анализ кода идет независимо от сборки проекта. Бабель просто вырезает типы и все происходит чуть быстрее.
Аноним 12/09/17 Втр 19:17:05 #446 №1060955 
Untiasdasstled.png
>>1060926
Я сделал скриншот.
Аноним 12/09/17 Втр 20:00:17 #447 №1060980 
>>1060925
Гугли self execution function. Скобочки эти позволяют вызвать анонимную функцию сразу же после её объявления.
Аноним 12/09/17 Втр 20:00:33 #448 №1060981 
>>1060980
executing
fix
Аноним 12/09/17 Втр 20:01:22 #449 №1060982 
>>1060980
Ушел гуглить, спасибо!
Аноним 12/09/17 Втр 21:20:11 #450 №1061031 
.jpg
>>1052010 (OP)
Решили внедрить Webpack в легаси проект - и сразу же начались проблемы с интеграцией существующего кодбейза. Проблема в том, что нынешний JS код представляет собой:
- Россыпь древних плагинов, местами использующих функции, которые уже давно убрали из актуальной версии jQuery. Интеграция плагинов в единое целое была реализована с помощью expose-loader, что делать с вызовом удаленных методов - понятия не имею. Есть ли какие-то заглушки, возвращающие старый API?
- Один здоровенный main.js и кучу инлайнового говна, ссылающегося на глобалки из этого самого скрипта. Вот что тут делать - совершенно не знаю, можно ли заставить Webpack просто минифицировать этот файл и сконкатенировать с bundle.js, без инкапсуляции?
Буду благодарен за любые советы.
Аноним 12/09/17 Втр 22:20:03 #451 №1061065 
>>1061031
Зачем тебе вебпак для этого? Напиши паур тасков для галпа
Аноним 12/09/17 Втр 23:04:24 #452 №1061094 
Я тут глянул в ТС, короче если вы знаете ЖС то считайте и ТС тоже знаете. Разница только в том что можно дописывать типы данных к параметрам функций и всякую ненужную парашу типа приват/паблик. Нахуй для этого отдельный "язык" нужен со всякой ебаторией с перегонкой бабелем я хз, почему не завезти чото типа 'use super strict'
Аноним 12/09/17 Втр 23:07:13 #453 №1061095 
>>1061094
Это не для школоты сделано, а для серьезных дядей, которые жирнософт пишут
Аноним 13/09/17 Срд 00:49:25 #454 №1061134 
>>1060980
Устоявшееся название для этого IIFE — Immediately Invoked Function Expression
Аноним 13/09/17 Срд 00:54:59 #455 №1061135 
>>1061094
Действительно. Зачем все эти строгие и надежные языки, давайте говнокодить на js и python, жить в дебаггере и бояться изменять код. Что однажды написано изменению не поддлежит.
Аноним 13/09/17 Срд 03:12:06 #456 №1061165 
>>1061135
для этого и пишут тесты, хотя кому я это говорю :)
Аноним 13/09/17 Срд 03:14:58 #457 №1061166 
>>1061094
Двачую, придумали какой-то ссаный костыль для лечения проблемы которую сами же себе и придумали.
>>1061135
Если у тебя опыта в программировании меньше 10 часов, то ты и HTML испугаешься поменять.
Аноним 13/09/17 Срд 03:35:01 #458 №1061167 
>>1052010 (OP)
Ребзя, вопрос, как лучше всего найти совпадающие строки или словосочетания на javascript?
Ну например:
var text_a = "Lorem ipsum dolor sit amet";
var text_b = "Dolor lorem ipsum amet";
Результат: ["lorem ipsum", "dolor", "amet"]
Неужели нет готового алгоритма для такого задания?
Аноним 13/09/17 Срд 04:44:28 #459 №1061172 
>>1061167
сравнивая посимвольно каждое словосочетание со строкой.
Аноним 13/09/17 Срд 07:52:55 #460 №1061190 
>>1061167
у тебя условие непонятное, что с кейс сенситив?
если считается что "lorem ipsum" входит в обе строки то почему просто "lorem" не входит?
Аноним 13/09/17 Срд 08:24:30 #461 №1061196 
Безымянный.png
ну кроч если все кейс инсенситив то тип того
Аноним 13/09/17 Срд 10:51:36 #462 №1061221 
Untitqweqwewqqwled.png
Что он имеет в виду под pass? И вообще, зачем он передает глобальный объект как параметр, что за хрень? Если он хочет что бы там было хоть что-нибудь, что потом можно заменить на условное А в минификаторе, то мочему бы и не написать А?
Аноним 13/09/17 Срд 10:51:57 #463 №1061222 
image.png
x + (y × width) Как это понять?
Аноним 13/09/17 Срд 11:04:55 #464 №1061228 
>>1061221
>pass
передать ссылку на глобальный объект
он это делает чтобы внутри модуля записать в шиндош единственную переменную, в которой уже лежат все функции его библы. это и происходит на десятой строчке
например в джквери это переменная $ и когда ты пишешь
$('#id').. //чото там
ты фактически пишешь
window.$... //чото там
Аноним 13/09/17 Срд 11:13:22 #465 №1061230 
Untqwewwitled.png
>>1061228
Тааак, понял. А вот так тоже работает, в чем отличие?
Аноним 13/09/17 Срд 11:15:11 #466 №1061231 
>>1061230
В смысле, что мешает написать window.$ = blalbalba без параметра? Ведь функция просто полезет искать такое имя на уровень выше в сам шиндош и найдет его?
Аноним 13/09/17 Срд 11:17:58 #467 №1061232 
>>1061222
Ебать ты гуманитарий.
Двумерный массив заменили на одномерный (все "строки" двумерного выстроили в одну большую "строку"). Для того чтобы взять X элемент в Y строке тебе нужно добраться до Y строки (Y WIDTH) и в ней взять X элемент (+ X). Итого (Y WIDTH) + X.
Аноним 13/09/17 Срд 11:21:07 #468 №1061233 
>>1061167
https://en.wikipedia.org/wiki/Longest_common_subsequence_problem
Аноним 13/09/17 Срд 11:25:59 #469 №1061236 
>>1061230
чисто для минификации. в первом случае будет такое
(function(x){
alert(x)
alert(x)
alert(x)
})(window)
а во втором ты всегда должен писать window
(function(){
alert(window)
alert(window)
alert(window)
})()
ну и еще доступ к локальным переменным быстрее чем лезть в замыкание
Аноним 13/09/17 Срд 11:36:47 #470 №1061241 
>>1061236
Вот теперь совсем все понял, спасибо анончик!
Аноним 13/09/17 Срд 12:02:31 #471 №1061250 
>>1061232
Большое человеческое СПАСИБО!
Аноним 13/09/17 Срд 12:19:53 #472 №1061254 
Почему сравнение с нулем быстрее, чем с любым другим числом?
Аноним 13/09/17 Срд 12:23:36 #473 №1061255 
>>1061254
Даже в машкоде, прикинь!
Аноним 13/09/17 Срд 12:51:13 #474 №1061265 
>>1061255
Так почему
Аноним 13/09/17 Срд 14:06:53 #475 №1061309 
>>1060929
Хз, с ssd не замечаю проблем.
Аноним 13/09/17 Срд 14:09:19 #476 №1061310 
>>1061094
>олько в том что можно дописывать типы данных к параметрам функций и всякую ненужную парашу типа приват/паблик
Генерики, енумы, декораторы и прочие ништяки мы тактично опустим.
Аноним 13/09/17 Срд 15:24:50 #477 №1061335 
Не совсем по теме.
Прошу совет насчёт правильной траты мыслетоплива/правильного обучения.
Работаю 5/2 по 9 часов. Работа физическая. После работы и после душа, туалета, кухни сажусь учить js. Ложусь в 9:00, просыпаюсь в 5:00, чтобы основное время дома потратить на обучение свежей головой. Во время работы иногда появляется свободное время и я пытаюсь тратить эти крупицы не напрасно. Сконцентрироваться сложно. Попытки не очень удачный.
В редкие дни весь день сижу в месте с тв с непродолжительными подергиваниями. Телевизор регулярно захватывает внимание, что усиливает неспособность к обучению.
Эти жалкие попытки почитать с телефона на работе с постоянными отвлечениями, кажется, влияют на моё состояние дома.
Замечаю что в дни когда работаю как обычно, со средней загруженностью, то есть не устаю физически и нет времени сидеть без дела, занимаюсь дома с максимальной эффективностью.
Вопрос: стоит ли вообще пытаться не тратить впустую время на работе? Намного ли меньше растрачиваются силы при сёрфинге и при чтении учебников, с постоянными отвлечениями? Чем вообще лучше заняться в свободное время? Ничего не делать?
Аноним 13/09/17 Срд 15:42:18 #478 №1061338 
>>1061335
Иди сторожем, дежурным электриком в поликлинику, курьером (хуже), посменная работа (очень плохо), тяжелая физ работа плохо сказывается на обучении
Аноним 13/09/17 Срд 15:46:36 #479 №1061340 
>>1061338
Тяжелая работа приводит к тому, что после трудового дня организм вбрасывает в кровь уйму эндорфинов, чтобы уменьшить мышечную боль и мозг засыпает вместе с ним.
Аноним 13/09/17 Срд 15:51:43 #480 №1061343 
>>1061340
Еще добавлю, чем плоха посменная работа - это то, что для эффективного обучения нужен регулярный полноценный сон
Аноним 13/09/17 Срд 16:25:05 #481 №1061360 
>>1061338
Но нагрузки стали нормой и я не чувствую усталости после рабочего дня. Сторожем пошёл бы, но разве берут туда, кого-нибудь младше сорока? И могу ли я на этих работка получать хотя бы те 25к, что я получаю?700к город
Работу специально выбирал чтобы забывать о ней, как окончится рабочий день. Этот пункт выполнен. Думал о подработках, на выходных грузить мебель про переездах, но тогда бы я совсем разума лишился бы
Аноним 13/09/17 Срд 16:39:07 #482 №1061364 
FireShot Capture 10 - Codiad.png
>>1052010 (OP)

нода стала как пых, что радует
Аноним 13/09/17 Срд 16:41:01 #483 №1061365 
>>1061364
Типичное непонимание как пользоваться async/await. Эх.
Аноним 13/09/17 Срд 16:42:41 #484 №1061366 
>>1061365

как там в 2013? они для этого и были сделаны, что бы ты их мог использовать в любом месте, спека это не ограничевает
Аноним 13/09/17 Срд 16:44:44 #485 №1061367 
>>1061360
> 25к
Студни занимающиеся по 16 часов в день и жрущие один пакет доширака в месяц обгонят тебя за 1 год в несколько раз
>я не чувствую усталости после рабочего дня
Тогда вкатывайся пока молодой, это быстро пройдет.
Аноним 13/09/17 Срд 16:46:15 #486 №1061368 
>>1061366
Мань, я говорю тебе о том, что ты совершаешь типичную ошибку и неправильно пользуешься async/await в js.
Почитай: http://2ality.com/2016/10/async-function-tips.html
Аноним 13/09/17 Срд 16:49:28 #487 №1061370 
¦+¦¬¦-¦¦¦-¦-¦¬.webm
>>1061335
>Телевизор регулярно захватывает внимание
Аноним 13/09/17 Срд 16:52:07 #488 №1061372 
>>1061368

ну ты и мудило. по твоей же ссылке:

>Another option is an Immediately Invoked Async Arrow Function:
>(async () => {
> console.log(await asyncFunction());
>})();
Аноним 13/09/17 Срд 16:57:34 #489 №1061373 
>>1061372
Твоя проблема в том, что ты делаешь два независимых запроса в бд синхронно.
Вместо
r1 = await db.q1()
r2 = await db.q2()
return {r1, r2}
надо делать
r1 = db.q1()
r2 = db.q2()
return {r1: await r1, r2: await r2}
или через Promise.all
Аноним 13/09/17 Срд 17:10:12 #490 №1061375 
>>1061367
Не верю что кто-то может заниматься по 16 часов в день.
Думаю аноны из этого треда занимаются по часов пять
Аноним 13/09/17 Срд 17:15:10 #491 №1061377 
Бля заебался. Начинающий кодер и пытаюсь сделать портфолио. Решил сделать небольшой ИМ. Нашел скрипт simpleCart, разобрался как оно работает, сделал свой велосипед, но все не то. Там все на дата атрибутах. Цены и т.д. поменял в консоли его на любое число с ним и полетел заказ. Может кто объяснить как это делается по правильному. Я понимаю что там сервер нужен, но хоть принцип. А то кажется что хуйней страдаю.
Аноним 13/09/17 Срд 17:15:33 #492 №1061378 
>>1061375
Аноны из этого итт треда уже свое отзанимались. Теперь рубят свои 300кк/час.
Аноним 13/09/17 Срд 17:17:24 #493 №1061379 
a613b47644172ccce968a7120105f84e.png
Обожаю жабоскрипт
Аноним 13/09/17 Срд 17:20:12 #494 №1061381 
>>1061379
Очердное необразованное мудло, которое не знает как работает компьютер. Читай про IEEE754
Аноним 13/09/17 Срд 17:20:42 #495 №1061382 
>>1061379
При чем тут жабоскрипт? Любой язык тебе выдаст неточный результат при вычислении с десятичными дробями.
Аноним 13/09/17 Срд 17:21:35 #496 №1061384 
>>1061382
На пыхе такой хуйни нет, там на уровне языка всё сделано
Аноним 13/09/17 Срд 17:22:46 #497 №1061385 
>>1061382
>>1061384
https://ideone.com/wu3Mf5
Аноним 13/09/17 Срд 17:28:18 #498 №1061386 
Нахуя нужен class expression?
Аноним 13/09/17 Срд 17:29:25 #499 №1061387 
Безымянный.png
>>1061385
поминуты на унижение пыхоребенка его собственной спекой
http://php.net/manual/en/language.types.float.php
Аноним 13/09/17 Срд 17:29:50 #500 №1061389 
>>1061385
Внутреннее представление всё равно не точное.
Аноним 13/09/17 Срд 17:30:58 #501 №1061390 
>>1061385
>>1061384
Фантазер ебучий. http://php.net/manual/en/language.types.float.php
В пыхе у тебя все зависит от системы, то есть ты нихуя не знаешь как оно сработает, если не влепишь проверку.
В жсе в стандарте прописано: 64bit iee754
https://www.ecma-international.org/ecma-262/5.1/#sec-4.3.19
Аноним 13/09/17 Срд 17:32:31 #502 №1061391 
>>1061385
https://ideone.com/WaomQM
Аноним 13/09/17 Срд 17:33:48 #503 №1061392 
>>1061391
>>1061390
>>1061387
Ну ладно, че вы сразу так :(
Аноним 13/09/17 Срд 17:41:55 #504 №1061395 
>>1061386
Посоны?
Аноним 13/09/17 Срд 17:49:36 #505 №1061401 
>>1061395
Можно переопределять класс.
Аноним 13/09/17 Срд 17:54:20 #506 №1061406 
>>1061395
Ну и да, как const f = function x() {}
https://stackoverflow.com/questions/34565362/what-is-use-of-named-or-unnamed-class-expression-in-es6
Аноним 13/09/17 Срд 17:55:50 #507 №1061409 
>>1061395
https://jsbin.com/yogozebezi/edit?html,js,console
Аноним 13/09/17 Срд 18:01:54 #508 №1061410 
14792919536480.png
Перекот мне запилил блеять.
Аноним 13/09/17 Срд 18:29:15 #509 №1061425 
mori-from-home-my-wife-said-vo-productive-she-said-duli-275[...].png
>>1061373

да, не ок, не заметил даже, конечно из БД лучше параллельно забрать результаты, завтра буду копать в сторону await Promise.all, добра
Аноним 13/09/17 Срд 19:00:06 #510 №1061442 
перекот >>1061439 (OP)
перекот >>1061439 (OP)
перекот >>1061439 (OP)
перекот >>1061439 (OP)
перекот >>1061439 (OP)
Аноним 13/09/17 Срд 19:18:20 #511 №1061447 
Шпасите! Я больше не могу быть фронтером.
Аноним 13/09/17 Срд 19:52:04 #512 №1061465 
>>1060714
В PHP как раз есть интерфейсы, тайп-хинтинг (в 7-й версии ещё и для скалярных типов), нормальные классы со спецификаторами доступа. PHP таки умеет хоть и в рантайме, но падать с читабельной ошибкой вроде "Ожидаю класс Foo, получил null", что позволяет быстрее обнаруживать баги. А если статический анализатор для JS что-нибудь пропустит, то JS, в силу его динамичности, не упадёт сразу, а пролезет ещё через кучу строк и упадёт с невнятной ошибкой. Я сам пользуюсь Flow, всем советую, а вот TypeScript мне когда-то показался бесполезным - он отлавливал только самые очевидные ошибки.
Аноним 13/09/17 Срд 22:08:01 #513 №1061568 
>>1061165
Легкая пометка ": string" избавит от необходимости в 95% тестов.
Хотя это не актуально для тех, кому платят за строки кода и 100%-ое покрытие.
Аноним 13/09/17 Срд 22:36:30 #514 №1061587 
Анон, create-react-app под винды вообще ставится или нет? Не могу разобраться.
Аноним 17/09/17 Вск 19:23:03 #515 №1063233 
>>1052955
Гугли ты еблашик мой тупой.
Buefy пример
Аноним 17/09/17 Вск 20:32:33 #516 №1063245 
Господа котоны, мотивации мне плиз, хочу стори "сделал кантора, выучил реакт, 300к/сек"
Аноним 17/09/17 Вск 23:38:15 #517 №1063288 
Есть возможность сначала выучить JS, а потом html и css? Хочу в идеале в бек на ноде вкатиться, но пугает что надо реально много знать в html и css (фреймворки, адаптивная верстка, кроссбраузерная, кроссплатформенная и т.д)? Как бы не проблема выучить все это, просто кодить мне нравится, а верстка отбивает все желание сидеть за компом и писать что-то.
Аноним 18/09/17 Пнд 17:03:58 #518 №1063571 
>>1052010 (OP)
Братики, как вы думаете, стоит ли припиздеть о своих умениях (когда ты джун), чтобы устроится на работу (на джуна)? Вот требуются какие-то ебанутые технологии, я посомтрел видосы, вроде всё понятно, но опыта работы с нгими нет. СТоит ли сказать что я это всё умею и имею опыт?
Аноним 18/09/17 Пнд 17:34:45 #519 №1063582 
>>1052010 (OP)
Пацаны, что можно пиздатого сделать за 1-2 дня, чтобы было не стыдно на гитхаб залить?
Моя специализация: бэк на Node.JS (умею в вебсокеты, парсеры, лямбда функции) и фронт на HTML+CSS+Jquery/React.
comments powered by Disqus

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