Этого треда уже нет.
Это копия, сохраненная 26 августа 2018 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
15275181425950.png61 Кб, 1050x1050
JavaScript thread BigInt(106) /js/ 1206689 В конец треда | Веб
Ссылка на прошлый тред: >>1198383 (OP)

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Для программирования на ХТМЛ https://codepen.io/pen/
Для программирования на алёртах https://jsfiddle.net/
Для фреймворков библиотек https://codesandbox.io/
Для живой странички из коробки https://repl.it/languages/web_project
Для Ноды с пакетами и консолькой https://repl.it/languages/nodejs

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

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

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

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

Конфа /pr/ в Slack: https://slack-2chpr.herokuapp.com/
15a821ea79990bb7edd4eb058a510862--office-assistant-the-offi[...].jpg40 Кб, 500x600
2 1206765
В директории можно выполнить
npx live-server .
(точка в конце)
и получить сервер этой директории с живой перезагрузкой на изменениях.
https://www.npmjs.com/package/live-server
Stoxblockchain.jpg41 Кб, 788x256
3 1206804
>>06689 (OP)
Всем здорово! Подскажите как вкатиться айти?
Мне тут кое-кто посоветовал начать с Кантора, это нормальная тема?
пикрандом
4 1206820
>>06804
привет
5 1206834
>>06804
Если с английским плохо, то начни с /fl
Начинаешь с
https://htmlacademy.ru/
Бесплатного хватит. Но если есть копейки, купи подписку на месяц, мотивирует.
Вместе с тем по вечерам внимательно смотришь
https://www.youtube.com/watch?v=Sy_wba7l1UU&list=PLawfWYMUziZqyUL5QDLVbe3j5BKWj42E5
После того, как закончишь академию
https://ru.hexlet.io/courses/introduction_to_programming
https://ru.hexlet.io/courses/intro_to_web_development

Теперь у тебя будет представление о программировании вообще и о вебе в частности. Тогда уже можно и Кантора навернуть или съебать в другом направлении.
6 1206835
>>1206208

>Реакт - это библиотека. Для рендеринга html. И больше в нем нет нихуя.


>Алсо, умиляет подход к передаче данных в компоненты. Сначала много разговоров про иммутабельность, пропсы, one-way, чистые функции, и прочее. Охуенно.


>А практически - что с этим всем делать? А-а-а, практически... Ну, практически - надо юзать редукс, который всё красиво сделает с чёрного хода, через недокументированные возможности.



Ну почему этот долбаный реакт взлетел, раз он особо нихуя не может?
7 1206861
>>06835
React хорошо подходит для разработки большх проектов в больших профессиональных командах.
Оттуда и появился, собственно.

Для маленькой команды с ограниченными ресурсами и для поделок на коленке - слишком низкоуровневый и затратный.

А вот Vue удачно вписывается в обе эти модели разработки.
8 1206862
>>06835
наверн томушо ты цитируешь долбаеба)))
9 1206867
>>06862
Нет, он процитировал не тебя.
10 1206868
>>06867
вот и я о том)))
11 1206902
Сука этот ебаный вебпак с его publicPath'ом каждый раз заставляет меня возиться в конце проекта с ебучими путями до ассетов.
Что тут может не работать?
пик 1: относительный publicPath ( для gh-pages )
пик 2: лодеры
пик 3: зачем то добавляет еще раз /assets/assets/ к путям до шрифтов
пик 4: стили и js нормально подгружает используя относительный publicPath
12 1206904
Юзал реакт с обычным жс, решил перекатиться на тс, с чего начать? Стоит ли?
13 1206931
У мозиллы есть планы реализовать в квантухе поддержку FileSystem API на уровне хромиума?
14 1206980
>>06904
Начни с Flow.
15 1206991
Подписался на эпичный тред
16 1207189
>>06689 (OP)
Поделитесь ссылкой на торренты с интенсивом по свежему Angular от javascript.ru
17 1207265
/a{2}/.test('aab'); //true

Палит две А подряд

/a{2}/.test('aba'); //false

Как палить не подряд?
18 1207303
>>07265
Не стоит вскрывать эту тему.
https://regex101.com/r/nO4sqP/3
b31219da06152dee8e43b3847fc24969.png30 Кб, 768x425
19 1207667
Кто мне может объяснить эту хуиту, что там написано. Этот код.
http://bootstrap-4.ru/docs/4.1/components/forms/#custom-styles
Что это блять? Как этим пользоваться? Если я у меня какое-то приложение и валидация в нём это одна из функций, которай должна осуществляться, по нажатию на какой-то бтн. Как мне эту ебалу переписать и нормально пользоваться?
20 1207712
>>07667

>по нажатию на какой-то бтн


Тогда вся эта ёбала вообще не нужна - вызывай просто form.checkValidity().
https://developer.mozilla.org/en-US/docs/Web/Guide/HTML/HTML5/Constraint_validation
(русский перевод там тоже есть, но неполный).

Что делает код на пике:
0. Запускается после полной загрузки страницы.
1. Находит все формы, имеющие класс 'требует-проверки' (видимо, ставится где-то в др. месте).
2. Добавляет каждой event-listener на событие submit (отправка):
......1. Проверяет, валидна ли форма.
......2. Если нет - останавливает отправку.
......3. В любом случае - добавляет класс 'было-проверено' (видимо, используется где-то ещё).

Учи джаваскрипт.
Не стесняйся заходить в гугол и искать там по кускам кода.
21 1207741
>>07712

>Тогда вся эта ёбала вообще не нужна


Но, если ты хочешь именно bootstrap-валидацию, и, тебя, почему-то, не устраивает валидация по submit (почему?), то тебе надо сделать так, как внутри обработчика на пике - добавлять класс 'was-validated' после вызова form.checkValidity().

Алсо, я тоже не делаю валидацию по submit - вызываю по кнопке, а потом делаю submit из js.
Но, я и встроенную html-валидацию не использую, и вообще большой затейник.
22 1207792
>>07712
Класс was-validated добавляется только в случае чекВалидати === true, а вовсе не "в любом случае"!
23 1207793
Нахуя в проектах лепят es6-импорты, если они не поддерживаются в stable-версии ноды? Как это вообще работает? В ноде есть выстроенная экосистема, есть адекватное тестирование и куча библиотек. Как люди пишут любой js-код(даже на фронт) без ноды? Просто как? Сейчас хочу сделать простенький проект, который собирается в ассеты для браузера, но нужная мне библиотека принципиально не работает с commonJS модулями, видимо придется выбирать другую. Я не вижу смысла делать каждый пук в терминале через бабел ради одних импортов. В чем суть этой хуйни, кто и как ими пользуется?
24 1207827
Я БОЛЬШЕ НЕ МОГУ, БЛЯТЬ
Пилил сайт на компе, перенёс всё на ноут и у меня ОТВАЛИЛАСЬ АВТОРИЗАЦИЯ, точнее, не работает ajax. На компе стоит ТОЧНО ТАКОЙ ЖЕ локальный сервак, файлы все ТОЧНО ТАКИЕ ЖЕ, я НИ СТРОЧКИ не поменял, но на компе всё работает, а тут нет, меня трясёт, блять, сука. Что здесь не так? НУ ЧТО?

$.ajax({
type: "POST",
url: "include/auth.php",
data: "login="+auth_login+"&pass="+auth_pass+"&rememberme="+auth_rememberme,
dataType: "html",
cache: false,
success: function(data) {

if (data == 'yes_auth')
{
location.reload();
}else
{
$("#message-auth").slideDown(400);
$(".auth-loading").hide();
$("#button-auth").show();

}

}
});
Ну всё же работает на компе, СУКАААААААА, я целый день с этим дерьмом вожусь.
25 1207829
>>07827
да что угодно может пойти пиздой, ты вкладку network в devtools покажи после того как кликнешь на кнопку чтоб сделать запрос, и в консоли что высвечивается тоже доставь.
26 1207830
АХАХАХАХАХАХА
АААААААААААААААААААА
Всё, нахуй. Сюда написал и сразу всё решилось. Оказалось, что ебучая пыха сессию не стартовала. Но это не оменяет того факта, что НА КОМПЕ-ТО ВСЁ РАБОТАЛО. ЕБИСЬ ВСЁ КОНЁМ, ВЕРСИЯ ПЫХИ ОДНА И ТА ЖЕ, СУКА, НУ ЧТО ЭТО ТАКОЕ?!
27 1207837
>>07793
Если хочешь пользоваться - WebPack + Babel.

Некоторые большие библиотеки, типа реакта, vue, jquery, lodash etc - можно отмечать как external в вебпаке, и инклудить в браузере отдельно. Это работает, если библиотека предоставляет глобальный объект - React, Vue, $, _ etc.

Раскочегаривать всю эту механику ради одних импортов - бессмысленно. Но, есть ещё лямбды, классы, jsx, промисы, async, class properties и хуева туча js-фишек, которые появятся только в будущих стандартах языка.
Плюс - структурирование кода.

Без ноды - легко.
Не использовать импорты вообще, и писать просто так, на глобальных объектах. Т.е. просто используешь глобальную переменную Vue, и всё. Естественно, включив загрузку соотв. скрипта в html.
28 1207842
>>07792
Нет.
Читай код.
29 1207844
>>07837
Я знаю, как билдить ассеты, и весь es6 синтаксис, кроме импортов, доступен в текущей версии ноды. Проблема вообще в другом. Я хочу писать на ноде, тестить на ноде, и при этом не ебать себе мозги, подключая babel или --experimental-modules на любое телодвижение только из-за сраных несовместимых импортов, которые хуй знает зачем и кому сейчас нужны, раз они в ноде не поддерживаются из коробки. Собрать весь проект в ассет и отдать его браузеру - это задача на пять минут, я про нее не говорю.

>Не использовать импорты вообще, и писать просто так, на глобальных объектах.


Вопрос не в том "как писать", вопрос "нахуя так писать". Без быстрых тестов, без нормальной системы модулей, без нормально прописанных зависимостей и с постоянным засиранием глобалов. Я с этой хуйни и перешел на ноду для фронтенд-проектов в первую очередь.
30 1207848
>>07844
ES6 не поддерживается всеми браузерами.
Те, что поддерживают - поддерживают не полностью и с багами.
Нахуй он нужен вообще, если не поддерживается из коробки в стабильных версиях браузеров?

(это я пользуюсь твоей логикой, если что)
31 1207850
>>07830

>ВЕРСИЯ ПЫХИ ОДНА И ТА ЖЕ


А версии ОС, апача, модулей к нему - разные. А потом выясниться, что бд забыл поставить.
32 1207860
>>07848
В браузерный код ты в любом случае переводишь все через компилятор. И есть разница между сахарком классов и перехуячиванием всей устоявшейся системы импортов. Например, с импортами я не смогу использовать NODE_PATH в своем проекте и мне придется ебаться еще больше, чтобы оставить require("shared/utils"), который удобно указывает на lib/shared/utils.js, а не переделывать его в ебучий релативный импорт.
33 1207872
>>07860

>перехуячиванием всей устоявшейся системы импортов


С этого и надо было начинать.
У меня такой проблемы нет (т.к. или вообще без ноды, или бабель везде), посоветовать ничего не могу.
Кроме как погуглить - думаю ты не один такой расстроенный, возможно люди что-то придумали уже.

Ну, и, добро пожаловать в волшебный мир веб-фронтэнда, лол.
34 1207902
>>07850
ОС - да, другая, но всё остальное такое же, базу экспортировал.
35 1207906
>>07872
Так вопрос, каким образом люди тестируют в сетапе babel/webpack без ноды? Не в браузере же и не вручную, это долбоебизм. Или волшебный мир фронтенда до сих пор не научился в адекватное автоматическое тестирование?
36 1207909
И опять же вопрос про es6 импорты, каким образом можно сделать адекватные не-релативные импорты без вебпак-костыля, чтобы работало в ноде? Например для CommonJS есть целая куча костылей: https://gist.github.com/branneman/8048520 Но в es6 динамические имена модулей использовать вроде как нельзя, NODE_PATH ни на что не влияет, так что почти все решения оттуда отпадают, а гугл нихуя не выдает.
37 1208013
>>07906

>babel/webpack без ноды


Это невозможно, и ты должен это понимать.
И чем тебе бабель не угодил?
Типа, вся остальная хуерга тебе норм, а бабель - это уже перебор, лол?

Вообще, такое ощущение, что ты чего-то недопонял, и ломишься в открытую дверь.
38 1208083
вот как вообще возможно что сраный хайль ворд не запускается?
Снимок экрана2018-06-1201-48-26.png107 Кб, 1024x743
39 1208089
>>08083
ну ладно, после получаса исследований максимум что мне предложили это то, что на пике ( типа опциональными поставь, но хули ж толку тогда вообще с ТС-а? ) Я в ахуе
пиздец, я половину базовых классов на ТС уже написал
40 1208092
>>08089
Именно поэтому народ и использует Flow.
Снимок экрана2018-06-1203-04-29.png122 Кб, 1024x743
41 1208107
>>08092
https://github.com/facebook/flow/issues/5869
лел блядь сходу
тут предлагается такой обходной путь
Component<*>
42 1208111
>>08107
Ты как-то выборочно там прочитал, лол.

https://flow.org/en/docs/react/components/

Алсо, не надо обходных путей.
Надо примерно как в TS:
Component<{propKeyA: string, propKeyB: number}, {stateKeyA: string}>
43 1208118
>>08013
После нормальных языков это чувствуется как пиздец, когда мне нужно ставить отдельный сторонний компилятор и везде его использовать, чтобы мой нативный код просто выполнялся, причем не в каком-то ебанутом окружении браузера, где нужно поддерживать десять версий IE, и это оправдано, а в моем основном рабочем окружении(!!!). Еще сверху нахуячить пресеты для браузера, пресеты для окружения ноды, пресеты для пресетов, плагин бабела для тест-фреймворка, и это абсолютный минимум. Сейчас поигрался с бабелем в ноде и ну его нахуй, лучше возьму либу, которая поддерживает CommonJS модули.
44 1208120
>>08118
Ниче, со временем у тебя вырабатается стокгольмский синдром.
45 1208186
>>06689 (OP)
Нужно знать html и css, чтобы начать учить JavaScript?
46 1208197
>>08186
Да, на все это у тебя уйдёт неделя или две, ничего сложного там нет, а потом будешь ебаться с жс, как я сейчас
Ууу сука зла не хватает, бросаю, и на следующий же день возвращаюсь, ничего с собой поделать не могу, надеюсь, через месяца два изучения, я все таки накатаю свою йобу.
15045600932920.png1,1 Мб, 954x968
47 1208206
Ребят , помогите дауну , я только недавно начал использовать git . Не понимаю еще механику , хотя читал .

Вот я последним коммитом (а возможно двумя) испортил свой локальный репозиторий и хочу полностью заменить его веткой из гитхаба.
Но моя локальная считается master и не дает это сделать .
Как принудительно заменить её?
osaexqdgdxpyaprzp9lladnwje.png128 Кб, 600x598
48 1208213
>>06689 (OP)
Анон, недавно пришлось на работе писать на js и так уж вышло, что кроме меня тут на нём никто не пишет, кода на js у нас нет, поэтому стал вопрос о закладывании какого-то фундамента из стайлгайдов, а потом и обмазывания всевозможными линтерами.
Какие требования к стилю написания js-кода используются в твоей компании, есть какие-то общие, вроде pep-8 в питоне? Поделись, если можно, ссылками.
Пытался гуглить, но зашился в десятках статей, каждая из которых предлагает свой подход.
12321312323.jpg20 Кб, 326x326
49 1208224
Кто-нибудь из вас работал в веб-игрострое? Я имею ввиду современный веб-игрострой, где используются всякие канвасы и WebGL. Насколько сложно туда вкатиться? Какие требования? Действительно ли там требуются яйцеголовые со знанием матана (и будут ли по нему драть на собеседовании) или это просто будет плюсом? У меня есть уверенность в своих знаниях по JS (3 года хорошего опыта), но нет уверенности в своей алгоритмической подготовке, ибо не особо налегал на математику во времена учёбы в своей шараге, поэтому в голове отложились жалкие крохи и те выветрились за 4 года после окончания. И ещё, какая зарплата в этой сфере считается приемлемой?
50 1208229
>>08206
git reset --hard origin/master
51 1208257
>>08224
так ты ж программист => ты яйцеголовый
52 1208287
>>08224
150-200 тыс руб для быдлокодерка на шарпе
53 1208651
Как на канвасе объекты двигать? пытался организовать D&P , создав событие onmousedown, а внутри его на mousemove и mouseup, но оно игнорирует внутренние события
54 1208665
>>08651
https://javascript.info/mouse-drag-and-drop

>D&P


ПНХ

>внутренние события


Так это не делается. Попробуй через глобальный флаг.
let hold = false;
onmousedown => hold = true;
onmousemove => if (hold) do shit;
onmouseup => hold = false;
55 1208712
>>08213
Ты прав, дело не из лёгких. Стоит понимать, что ЖС это лингва-франка и у нас тут нет никакого доброго диктатора.

Короче, если хочешь прям из коробки, но хуёвенько, то просто поставь в Вскод
https://marketplace.visualstudio.com/items?itemName=numso.prettier-standard-vscode
Но тыжеинженер.

Инструмент для линтинга это однозначно Eslint:
https://eslint.org/
Он очень гибкий требует попердолиться.

Есть васянская попытка навязать для него стандартные настройки:
https://standardjs.com/
Но они предлагают не использовать точку с запятой, что противоречит спеке языка, поэтому сразу идут на хуй.

Есть годный обоснованный стайлгайд от Аирбнб:
https://github.com/airbnb/javascript
Если запустишь в проекте
npx eslint init
Он среди прочего предложит тебе этот конфиг. Это будет хороший выбор для начала.

Дальше можно добавить плагинов для конкретных библиотек. Например, если ты используешь Джест для тестов, то найдёшь
https://github.com/jest-community/eslint-plugin-jest

Помимо линтинга ещё нужно форматирование. Это Притиер:
https://prettier.io/
Нужно будет подружить его с Еслинтом:
https://prettier.io/docs/en/eslint.html

Остаётся только подцепить это на прекоммит-хук, чтоб дерьмо не протекло:
https://github.com/typicode/husky
и наслаждаться.

Если будешь использовать create-react-app, то почти всё это будет сделано за тебя. Читай их ридми.

Ну и для Вскод поставить шикарные плагины под это дело:
https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint
https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode
подсветки, подсказки, автоматизация, все кайфы.
55 1208712
>>08213
Ты прав, дело не из лёгких. Стоит понимать, что ЖС это лингва-франка и у нас тут нет никакого доброго диктатора.

Короче, если хочешь прям из коробки, но хуёвенько, то просто поставь в Вскод
https://marketplace.visualstudio.com/items?itemName=numso.prettier-standard-vscode
Но тыжеинженер.

Инструмент для линтинга это однозначно Eslint:
https://eslint.org/
Он очень гибкий требует попердолиться.

Есть васянская попытка навязать для него стандартные настройки:
https://standardjs.com/
Но они предлагают не использовать точку с запятой, что противоречит спеке языка, поэтому сразу идут на хуй.

Есть годный обоснованный стайлгайд от Аирбнб:
https://github.com/airbnb/javascript
Если запустишь в проекте
npx eslint init
Он среди прочего предложит тебе этот конфиг. Это будет хороший выбор для начала.

Дальше можно добавить плагинов для конкретных библиотек. Например, если ты используешь Джест для тестов, то найдёшь
https://github.com/jest-community/eslint-plugin-jest

Помимо линтинга ещё нужно форматирование. Это Притиер:
https://prettier.io/
Нужно будет подружить его с Еслинтом:
https://prettier.io/docs/en/eslint.html

Остаётся только подцепить это на прекоммит-хук, чтоб дерьмо не протекло:
https://github.com/typicode/husky
и наслаждаться.

Если будешь использовать create-react-app, то почти всё это будет сделано за тебя. Читай их ридми.

Ну и для Вскод поставить шикарные плагины под это дело:
https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint
https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode
подсветки, подсказки, автоматизация, все кайфы.
56 1208731
>>08089
просто ТС говно без задачв боьшинстве случаев
Откроем твой первый пик:

>document.getElementById('root') as HTMLElement


>as HTMLElement


Сильно помогло? Без него бы руки отвалились, наверное, да?
57 1208752
>>08213
Лучше заложи фундамент из нормальной архитектуры, тестовой дисциплины и настроенного окружения. Всегда охуевал с людей, которые на полном серьезе дрочат на стайл гайды. Стайл гайд - это чтобы ньюфаги не писали совсем уж срань и для каких-то специфичных особенностей языка, но если у тебя есть любой опыт разработки, то ты и так знаешь 90% того, что тебе предложит стайлгайд, потому что это просто common sense.

Особенно этим любят заниматься фронтенд-макаки почему-то. У него 0% тестового покрытия, нечитаемая реакт-залупа на 200 строк кода в файле, где логика идет вперемешку с шаблоном, а он на стайл-гайды дрочит. Один мне на полном серьезе затирал, что вот в прошлой компании у него писали как попало, а в текущей используют стайлгайд и ему сразу заебись стало. Это каких макак набирать надо и как не уметь их загонять в рамки, чтобы стиль кода на что-то влиял? Не говоря уж про то, что любая IDE с плагином тебе и так покажет основную хуйню.
58 1208755
На одном сайте есть скрипт вида:
var a = true;
if(a){ window.location = 'nahui eto suda';}

Я пробовал в tampermonkey прописать что то типа const a = false;, но это не сработало. Можно как то избавиться от этого редиректа при этом не блокируя полностью выполнение яваскрипта?
59 1208757
>>08755
window.a = false;
60 1208759
>>08757
Лучше даже
Object.defineProperty(window, "a", {value: false});
61 1208853
>>08197
Спасибо). Красивый язык, я бы если бы и работал, то на жс, за еду
62 1208898
>>08665
спасибо, сейчас попробую
63 1208910
>>08853

>Красивый язык


Не смеши.
64 1208944
>>08757
>>08759
В обоих случаях значение a перезаписывается и срабатывает условие: https://jsfiddle.net/qLtxsc6n/
65 1209095
Посоны, а где почитать про геттеры и сеттеры? Желательно на нормальных примерах с дом. Я нихуя не понимаю кантора, это пиздец какой-то. Какая блять есть альтернатива кантора?
66 1209185
>>09095
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Working_with_Objects#Defining_getters_and_setters

Может проблема не в Канторе?
К тому моменту, когда (если вообще) тебе они понадобятся, ты уже забудешь их синтаксис. Так что пока тебе просто достаточно запомнить, что они есть.
67 1209228
>>09185
ну я только месяц как учу джс и мой ментор говорит мне , что сейчас мне мой код, в моем мини приложении надо переписать с ипользованием сеттеров и геттеров и почитать про протатипное наследие. Сижу с лицом грустной жабки и вообще слабо одупляю зачем на данном этапе моего вката вот это вот всё сейчас.Я бы еще бы каких-нибудь форм бы поклепал простых.
68 1209352
Есть короче проект, стак nodeJS, graphQL, typescript, postgresQL, sequelize, не хочу блять милиарды раз описывать ебучие типы, с таким стаком это:
GraphQL типы,
TS интерфейсы,
Sequelize модели
Выглядит как полное говно, есть ли норм решение чтобы был один trust source?
69 1209378
>>09228

>зачем на данном этапе моего вката вот это вот всё сейчас


Затем, чтобы сделать трёхслойное приложение, где были бы Model, Controller и View. Как раз функции-геттеры нужны в т.н. «модели». А уже поверх неё — можно и форм поклепать простых.
70 1209453
>>09228
Чтоб твоему ментору поднасрать, скину тебе шизика светоча:
https://www.youtube.com/watch?v=lfdAwl3-X_c
71 1209475
Посмотрел сейчас, что такое есть React Context.
И как надлежит его юзать.

Это какая-то лютая костыльная неюзабельная хуйня.
Что-то как-то они перемудрили с чистотой.
Напоминает стерильно-чистую бессмысленную собянинскую Москву, лол.

Вообще, реакт как-то разочаровывает по мере углубления в него.
И как-то снова начинает нравться Vue, лол.
72 1209492
>>09352
Используй один маппинг для объекта, а в остальное время работай с данными? То есть пришел тебе запрос с JSON-объектом, ты пропустил его через маппинг, который конвертирует все поля в нужные типы, а потом работаешь с уже конвертированным объектом, убираешь неразрешенные поля, валидируешь и т.д. Конкретно с этим стеком не работал, но обычно используют ДБ схемы для этого, там уже все типы проставлены.
73 1209515
подскажите, че сейчас на фрилансе актуально?
2 месяца работал в офисе, но работать с 8 до 8 (с учетом пути) 5 дней в неделю меня доебало, не моё это
думаю попробовать вкатиться во фриланс, но проблема в том, что вся работа в офисе была построена на гугловском полимере и обычно он нахуй никому не нужен, поэтому я не уверен во что лучше тыкаться
74 1209571
>>09515
фулл стеки актуальны и cms. Забугор - WP, в Роиси битрикс
75 1209600
>>06689 (OP)
доброго времени)
я хочу сделать мультируменый чат с использованием socket.io, что бы комнаты юзеры могли создавать сами на лету
и думаю что лучше подойдет в socket.io для этого
namespace или room
но не понимаю их различий .___.
подтолкните, пожалуйста, в нужную сторону
76 1209611
>>09492
Так лол, это graphql делает, там стрикт тайпы. Мне просто пиздец как не хочется описывать эти же тайпы ещё и в тайпскрипте и в схеме для постгреса.
77 1209667
>>09611
Сделай генератор.
И генерируй.
78 1209701
>>09611
Так а нахуя ты описываешь и там, и там? Цели какие?
79 1209734
>>09701
Хочу писать на тайпскрипте с автоподсветочкой и всеми плюшками. Для этого нужно тайпить. Ладно, нашел такую штуку, попробую ее
https://github.com/19majkel94/type-graphql
>>09667
ебанутый?
80 1209743
>>09734

>ебанутый?


Сынок, ты, видимо, туповат.
Поясню - типы у тебя описаны в одном месте, например, в TS.
Для всей остальной хуйни можно описания типов генерировать по описаниям TS.
Или TS типы генерировать ещё откуда-то.
Я, например, генерирую их из Java классов, как и SQL схему.
81 1209746
>>09743
План хорош, но чета мне не нравится. Но план хорош.
82 1209790
Сап, формошлепы. Не дает покоя одна херь - вот есть родитель, есть у родителя сынка-корзинка. На сынку-корзинку вешается eventListener, срабатывает кулбэк, в нем удаляется родитель ( допустим body.removeChild(parent) ). И вот вопрос, удаляется ли сам eventListener с пездюка при этом? По идее должен, но сука как проверить. Удалять явно листенер впадлу, там именованная функция должна быть - впизду переписывать.
it-разработка-3895880.png487 Кб, 1600x914
83 1209851
>>09790
Ответа на твой вопрос нет. Ты не контролируешь среду выполнения (бровзер у клиента). Раньше они текли на ровном месте. Сейчас даже куски замыканий выбрасывать умеют.
Если будут неприемлемые тормоза в конкретном браузере, дампать память и смотреть.
84 1209852
>>09851
Понял, спасибо!
86 1209941
>>09933
Ну, пожалуй впизду евентхендлеры. Пускай сидит в памяти, если такой пидор.
87 1209947
>>09941
В смысле?
Там же написано, что всё убирается, в том числе и в jQuery (если и добавлял хендлер и удалял элемент через jQuery).
88 1209963
>>09947
При условии, что у тебя на эти элементы не осталось ссылок - в переменных, массивах и т.п.
Если ссылки есть - надо им присвоить null.
Снимок экрана2018-06-1421-31-17.png96 Кб, 1024x768
89 1209993
Двач как мне заставить flow не выебываться на бинд эвент лиснера в конструкторе?
Снимок экрана2018-06-1421-34-28.png84 Кб, 1024x768
90 1209994
>>09993
отбой
LWtaBEU.jpg88 Кб, 960x960
91 1210030
Почаны, почему vue.js настолько меньше весит чем реакты и ангуляры? В чём подвох? Можно использовать его в проекте не беспокоясь о том, что может всплыть какая-то хуйня?
92 1210059
>>09994
Используй class properties (babel plugin).
https://babeljs.io/docs/en/babel-plugin-transform-class-properties/

И пиши просто в теле класса:
handleChange = (e) => {...}

И state тоже в теле класса можно определять.
Т.е. конструктор получается просто не нужен.

В современных гайдах по реакту везде так пишут.
Включая авторов.
93 1210064
>>10059
Уточню - это чтобы this не биндить.
Самый кошерный способ.
94 1210066
>>10030
Можно.

Алсо - реакт и ангуляр - это очень разные вещи.
Более разные, чем хуй и пизда, например.
pgpsuite.png65 Кб, 1133x728
95 1210165
>>06689 (OP)
Посоны, я принёс вам таскабельный PGP: https://username1565.github.io/pgp/

Поддерживается:
- генерация ключей RSA, ECC
- цифровая подпись
- проверка подписи
- шифрование (с подписью или без)
- дешифрование (с проверкой подписи или без)
- шифрование файлов, в том числе и бинарных
- закачка файлов, в том числе и бинарных.

Исходник тут, можно скачать в ZIP-архиве: https://github.com/username1565/pgp

Может ещё чё-то исправить или допилить, а?
96 1210199
>>10165
Но ты же просто форкнул уже готовый проект и подправил стили с UI, что там еще делать?
97 1210353
>>10165

>форкнул чужой проект


>поменял название с PGP Key Generator на PGP Suite


>Посоны, я принёс вам таскабельный PGP


У нас тут Денис Попов выкатил свежий релиз Болженос 2.0
sage 98 1210363
>>10353
Не нравится что-то — ну так не пользуйся и иди нахуй, пидораха. Или обязательно кукарекнуть надо, долбаёб?
99 1210367
>>10363

>пидораха


Ох уж эти проекции.
Алсо бамп обосратушкам :3
configutilviewsshkey[2].png102 Кб, 400x316
100 1210385
>>10199
Я пхнул туда верификацию отдельной вкладкой, и в декрипт, сунул её тоже.
Base64 для файлов добавил и функции к закачке файлов.

Что делать? Думал вы подскажете, после всяких тестов.
Может, какой-нибудь Jasmine-тест прикрутить можно было бы ещё.

Но есть несколько намеченных направлений для фиксов...
1. Я не могу зашифровать сообщение на сайте https://smartninja-pgp.appspot.com
используя ключи, сгенерированные здесь.
А вот ключи сгенерированные там - шифруют нормально.
Это указывает на несовместимость генераторов, но я нифига не пойму при компарации kbpgp.
Тот человек пишет, что эта версия - SSH-адаптирована.
Возможно поэтому генераторы несовместимы, но у SSH - другие ключи. Пикрил.
Возможно было бы выдавать и их.

2. Когда сообщение зашифровано (публичным ключём RSA),
да ещё и с подписью (другим приватным ECC), в зависимости от очерёдности,
должно бы быть возможным либо дешифрование без проверки подписи,
либо проверка подписи и возврат шифрованного сообщения с фингерпринтом.
Ни первое, ни второе - не работает. Подозреваю подпись обоими ключами.

3. Я видел ещё, там, внутри, Diffie-Hellman'a - его можно было бы вынести - отдельной вкладкой.
Hiscommit.png34 Кб, 894x618
101 1210396
>>10353
А ты кто вообще, чё материшься и забей на него.
>>10353
Ты там не прихуел?
Ещё и картинку прилепил.
Ты посмотри когда форк сделан, это во-первых.
Во-вторых, пикрелейтед
>>10367
Ой, ну не бампай себя.
102 1210427
>>10385
Прикрути ноду, разбей на нормальные компоненты и тестируй как человек.
103 1210486
Это JavaScript-тред? А то тут как-то тухло. Я думал во фронтенде всегда большая движуха. Хм.
Объясните пожалуйста суть CORS. Вот допустим, запрещены в большинстве браузеров кроссдоменные XMLHttpRequest-ты.
Чтобы его выполнить, такой запрос должен удовлетворять двум требованиям:
1. Быть простым (т.е. POST/GET + 4 заголовка)
2. Ответ сервера должен в заголовках содержать Access-Control-Allow-Origin заголовок, который как бы намекает о том, что сайт работает с междоменными запросами и всё ок.

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

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

Но прикол в том, что запрос всё равно совершается! То есть, если по данному урлу есть какая-то логека, то она отрабатывает в любом случае, просто клиент получит ошибку.
В чём суть этой йоба-защиты, если она ничего не меняет и не предотвращает сами запросы?
104 1210491
>>10486

> В чём суть этой йоба-защиты, если она ничего не меняет и не предотвращает сами запросы?


Хацкер не получит данные.
105 1210495
>>10491
А, я понял. Защищают ведь не самого хацкера лол, а клиента, который посетит хацкеркий сайт.
Ибо данные, которые были получены от такого запроса до клиента так и не дойдут (браузер их парежит), поэтому они далее никоим образом обработаны быть не смогут.

Я видимо изначально неправильно понял. Благодарю.
106 1210503
Сап, программач. Нужно написать часы для сайта в которых будет 30 часов в сутках, минуты и секунды стандарт. Как это реализовать?
107 1210506
>>10495

> никоим образом обработаны быть не смогут


Именно)
Пожаловаться, анончик.
108 1210508
>>10503
Имеешь переменную, которую инкрементишь раз в секунду. И все.
Дальше остатки от деления и деление без остатка.
109 1210509
>>10506

> Пожаловаться


пожалуйста, самофикс
110 1210527
>>10508

>инкрементишь раз в секунду


>js


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

Вот отсюда первый абзац https://www.regular-expressions.info/captureall.html:
When creating a regular expression that needs a capturing group to grab part of the text matched, a common mistake is to repeat the capturing group instead of capturing a repeated group. The difference is that the repeated capturing group will capture only the last iteration, while a group capturing another group that's repeated will capture all iterations. An example will make this clear.

Let's say you want to match a tag like !abc! or !123!. Only these two are possible, and you want to capture the abc or 123 to figure out which tag you got. That's easy enough: !(abc|123)! will do the trick.

Now let's say that the tag can contain multiple sequences of abc and 123, like !abc123! or !123abcabc!. The quick and easy solution is !(abc|123)+!. This regular expression will indeed match these tags. However, it no longer meets our requirement to capture the tag's label into the capturing group. When this regex matches !abc123!, the capturing group stores only 123. When it matches !123abcabc!, it only stores abc.

This is easy to understand if we look at how the regex engine applies !(abc|123)+! to !abc123!.

Открываю общий гайд, говорят, что + это 1 или больше повторений https://learn.javascript.ru/regexp-quantifiers:

+
Означает «один или более», то же что {1,}.

Например, \d+ находит числа – последовательности из 1 или более цифр:

var str = "+7(903)-123-45-67";

alert( str.match(/\d+/g) ); // 7,903,123,45,67

СООТВЕТСТВЕННО!

В примере выше 'abc123blablabla' не будет матча !(abc|123)! Но если добавить плюс, то матч будет. Но почему?! Ведь когда гайд делает !(abc|123)+! - по этой логике должна матчиться ИЛИ группа абц, повторенная 1 и более раз, ИЛИ группа 123, повторенная 1 и более раз. Ни повторений группы абц, ни повторений группы 123 здесь нет, и нет их объединения в одну группу.

Но по факту действительно матчится весь набор абц123 разом. КАК? Какого хуя! Ведь здесь нет ебаных повторений!
?
111 1210736
Помогите разобраться с квантификатором или

Вот отсюда первый абзац https://www.regular-expressions.info/captureall.html:
When creating a regular expression that needs a capturing group to grab part of the text matched, a common mistake is to repeat the capturing group instead of capturing a repeated group. The difference is that the repeated capturing group will capture only the last iteration, while a group capturing another group that's repeated will capture all iterations. An example will make this clear.

Let's say you want to match a tag like !abc! or !123!. Only these two are possible, and you want to capture the abc or 123 to figure out which tag you got. That's easy enough: !(abc|123)! will do the trick.

Now let's say that the tag can contain multiple sequences of abc and 123, like !abc123! or !123abcabc!. The quick and easy solution is !(abc|123)+!. This regular expression will indeed match these tags. However, it no longer meets our requirement to capture the tag's label into the capturing group. When this regex matches !abc123!, the capturing group stores only 123. When it matches !123abcabc!, it only stores abc.

This is easy to understand if we look at how the regex engine applies !(abc|123)+! to !abc123!.

Открываю общий гайд, говорят, что + это 1 или больше повторений https://learn.javascript.ru/regexp-quantifiers:

+
Означает «один или более», то же что {1,}.

Например, \d+ находит числа – последовательности из 1 или более цифр:

var str = "+7(903)-123-45-67";

alert( str.match(/\d+/g) ); // 7,903,123,45,67

СООТВЕТСТВЕННО!

В примере выше 'abc123blablabla' не будет матча !(abc|123)! Но если добавить плюс, то матч будет. Но почему?! Ведь когда гайд делает !(abc|123)+! - по этой логике должна матчиться ИЛИ группа абц, повторенная 1 и более раз, ИЛИ группа 123, повторенная 1 и более раз. Ни повторений группы абц, ни повторений группы 123 здесь нет, и нет их объединения в одну группу.

Но по факту действительно матчится весь набор абц123 разом. КАК? Какого хуя! Ведь здесь нет ебаных повторений!
?
112 1210737
>>10736

>с квантификатором "+"


хз как так автозамена на или заменила.
113 1210798
>>10736

>по этой логике должна матчиться ИЛИ группа абц, повторенная 1 и более раз, ИЛИ группа 123, повторенная 1 и более раз


Ну так оно и матчит группу, повторенную один и более раз. В строке 123abc123 группа (123|abc) повторяется три раза.
114 1210921
>>10427
Та, ну, я просто вкинул, думал вы лучше запилите. Хэххэх...
115 1210974
>>10798
Он путает матчинг и поиск, похоже.
yolo.png49 Кб, 453x712
116 1211217
>>06689 (OP)
цените че нашел
117 1211395
пацаны, чем ебаное модуло отличается от ремайндера?
118 1211444
В офисах как принято работать с Git? В VSC практикуют? Или принципиально важно выучить все эти ебучие консольные команды?
119 1211457
>>11395
В ЖС только ремайндер, который иногда тоже называют модуло. Знак у результата будет как у делимого.
5 % 2 == 1
5 % -2 == 1
-5 % 2 == -1
Модуло есть в других языках. Там вроде знак от делителя.
120 1211485
>>11444
У нас вебшторм, откуда без консоли большей частью манипуляций занимаются. На сколько понимаю, в вс коде тоже самое есть и ты говоришь об этом, типа меню, где выбираешь команды, и все за тебя делается.
То есть норма и без заучивания команд.
121 1211492
RxJS с реактом не используют? Вот я там увидел полезные фичи, а потом вспомнил, что я это обходил просто используя стейт, играя с тру\фолс, чтобы предотвратить ненужные действия. То есть мне такого и нужно придерживаться, а RxJS больше для ангуляра подходит, где уже все по-другому?

И еще вопрос. Что используете из ramda? Какие мастхев методы есть и на какие стоит обратить внимание? Можно и из лодаша называть. Кроме пайпов и карринга.
122 1211554
>>11444
Вообще не представляю, как и нахуя работать с гитом через UI. Разве что изменения смотреть, а так в сто раз легче и быстрее написать команду. Что там учить-то? git add, git commit -m, git commit --amend, git checkout, git merge, git pull, git reset, git push, git status - все, что тебе понадобится в 90% случаев. Половина из них говорит сама за себя
123 1211558
>>11554
так-то две кнопочки в иде быстрее жать, чем скрывать иде, открывать консоль, писать три подряд команды, скрывать консоль. + без юи ты не видишь нормально кто сколько закоммитил, когда разошлись ветки, кто насрал в мердже и тд
124 1211561
>>11558
Интересно, как можно работать без открытого терминала? В динамическом языке, например, хуй настроишь нормальный test-runner в IDE, легче уж в терминале команду выполнить. И напечатать команду всегда быстрее, чем мышкой кликать по залупам, выбирать, что закоммитить, что заресетить, что выкинуть и т.д. UI нужно только чтобы визуализировать изменения.
125 1211579
>>11561

> Интересно, как можно работать без открытого терминала?


Макаки же, ну
126 1211598
>>11554
Я не пойму, использовать циклы и if..else признак говнокодера? Какой бы курс не смотрел, все стараются избегать подобных конструкций
127 1211599
p.s. этот пост н кому не адресован, просто ответ приклеился
image.png26 Кб, 524x393
128 1211689
Сап, посоны.

Не жава-программист и не программист вообще, но требуется запилить небольшой скрипт для браузера.
Поясните, плз, как реализована вот эта ебала на пике. Не кукла, а именно форма и кнопки, которые бы появлялись при загрузке определённой страницы стороннего сайта. Это всё через изменение CSS-стилей страницы добавляется или как-то иначе?
129 1211690
>>11689

> иначе


This
130 1211692
>>11690
А подробнее немного? Или дай ссыль на какой-нибудь страницу какого-нибудь learn.javascript.ru , где я мог бы прочесть, как именно такую форму сделать.
131 1211693
>>11692
htmlbook.ru
132 1211695
>>11693
Конкретизировать можешь "что"/"чего". Встройка хтмл что ли?
133 1211696
134 1211703
>>11696
Но если сайт не мой, а сторонний, то как правильно встроить хтмл? Форму-то я создам, разберусь с отправкой данных из неё.
135 1211708
>>11598
if else не говнокод, на одних тернарниках не разрулишься

циклы не очень по двум причинам, во-первых это зависимость от "внешних" переменных, типа каунтеров для for, либо условия для while, отсюда вытекает еще несколько грустных особенностей. во-вторых сейчас набирает популярность функциональный подход, а циклы - императивщина как есть.
136 1211710
>>11598
С чего ты взял? Если совсем простое выражение, то можно заменить if..else на тернарный оператор, циклы обычно обернуты в функции поудобнее, например map filter reduce у массивов, но это тот же самый цикл. Без for..in ты объект не переберешь.
137 1211716
>>11703
xss, либо ручками каждый раз встраивай свой html-код в страницу того сайта
138 1211732
>>11710

> Без for..in ты объект не переберешь



можно пройтись по массиву ключей
139 1211737
>>11598
https://www.youtube.com/watch?v=P3fqetErxjA
Признак говнокодера — пытаться выёбываться в коде.

https://jrsinclair.com/articles/2017/javascript-but-less-iffy/
if есть, чем заменить. Но стоит стремиться к тому, чтоб код был человечным, походил на простые предложения. В таком случае if подходит лучше всего.
Стоит избегать сложных условий. Если больше одного оператора или регулярка, то упаковать в функцию с понятным названием:
if (isValid(email))
Чаще всего можно избавиться от else. Тогда ветвление, перегружающее мозги, станет простой последовательностью:
if (cond1())
if (cond2())
Код должен читаться как предложение, без подрубания интерпретатора в голове. Если такое внезапно помогут сделать свич или тернарник — настало их время.

Циклы чаше всего нужны при работе с коллекциями.
https://jrsinclair.com/articles/2017/javascript-without-loops/
Опять же, методы коллекций дадут код, более похожий на человеческие предложения:
отобразить пользователей как их айдишники
users.map(user => user.id)
Вспоминая прошлый абзац,
кто-то из пользователей админ
users.some(isAdmin)
Если коллекция большая, а задача нетривиальная, может потребоваться для эффективности таки использовать циклы, ветвление, байтоёбство. Ты уже догадался, нужно инкапсулировать всё это дело в функции с читаемым названием:
users.reduce(comlexData, store);
function complexData(store, user) {for { for { switch {} }}}
140 1211740
>>11732
for...in и так проходится по массиву ключей, просто более удобный синтаксис.
141 1211750
>>11716
Оке, спасибо.
142 1211783
>>11737

>Чаще всего можно избавиться от else. Тогда ветвление, перегружающее мозги, станет простой последовательностью:


>if (cond1())


>if (cond2())



Хуйня.
image.png323 Кб, 1920x1080
143 1211845
Если я хочу создать объект CSS класса, то
let cell = document.createElement("cell");
подойдет? Он создаст именно такой объект как на пике?
144 1211853
Почему джаваскриптобояре так любят рекурсию?
145 1211855
>>11845
Не создаст.
146 1211856
>>11853
Прост
147 1211857
>>11855
Как надо делать? Я весь вечер пытаюсь, но не дается мне.
148 1211861
>>11857
Ты создаешь пустой элемент, которого нет в стандарте, в структуре html. Тебе же необходимо генерировать класс.

На жс это будет выглядеть совершенно иначе.
149 1211863
>>11740
мы вам перезвоним

keys берет только собственные свойства объекта, а for in лезет в прототип. Можно жидчайше сирануть в этом месте в определенных ситуациях.
150 1211864
>>11861
То есть придется создать один элемент и его помножить?
151 1211867
Поспорил с батей на косарь, что сделаю игру в крестики и нолики в которую он не сможет победить. У меня есть шансы получить КОСАРЬ?
152 1211869
>>11867
Если я не ошибаюсь, достаточно просто написать ИИ, который будет сводить любую партию к ничьей. В закреплённом треде попробуй спросить алгоритм.
154 1211912
>>11875
>>11869
Спасибо, батя уже готовит косарь.
155 1211925
>>11716
Хотя нет, погоди. Ты меня наёбываешь. Хочешь сказать, что с помощью JS нельзя изменить страницу какого-либо сайта, чтобы добавить какой-нибудь элемент? Я же не на стороне сервера это делаю, а на стороне своего компьютера.
156 1211926
Сап, хотел написать дампер файлов с треда, чтоб локально хранить дамп треда.
Первую версию написал на nodejs, в хедеры добавлял примерно те же хедеры и куки что и отправляет мой браузер даже usercode_auth, но почему то небыло доступа к gg,h,e и прочем 18+ доскам. Я на это забил. Но почему то даже при дампинге с b треда у меня половина файлов бьётся. Код вот https://pastebin.com/6P700q00 .
Сделал синхронную загрузку файлов и со sleep между файлов. Но все равно блять, они бьются. че за хуйня ? Делал синхронную загрузку чтоб время было между реквестами. Ибо получается ебучий дудос (5 реквестов в сек лол) и вдруг Абу посчитает что это дуос и заблочит
157 1211929
>>11863
Ну да, слава богу, что уже несколько лет можно не трогать руками кривейшие жс-прототипы, а использовать более-менее человеческий сахарок классов и забыть про эту хуйню как страшный сон.
158 1211930
>>11925
Я этого не говорил. Можешь и через js всё это делать.
95919123.jpg81 Кб, 1077x379
159 1211932
>>11863>>11929
Только посмотрите на эту блевоту.
160 1211933
>>11929
где еще пишут на ооп? Класов не видел уже на фронте милиард лет, на беке вот первый раз буду typeORM чекать, декораторы там все дела
161 1211937
>>11933
TypeScript йопта.
162 1211938
>>11933
Интересно, как ты собрался писать без ООП на ОО-языке? Нет, я понимаю конечно, что и на джаве можно в 100% функциональном стиле писать, но нахуя стрелять себе в ногу?
163 1211940
>>11930
Так как тогда добавить блок или редактировать, например, на том же mail.ru? Как правильно называется сие действие? Мне банально нужна форма с полем для ввода текста и кнопкой.
164 1211943
>>11937
вот как раз захожу в класы, на тсе уже года полтора пишу чисто в функциональном стиле. НА БЭКЕНДЕ :3
165 1211946
>>11940
Я не буду за тебя реализовывать твою хотелку.
166 1211947
>>11946
Где я тебя прошу её реализовывать за себя? Ни в одном посте с самого начала это не было. Я попросил дать ссылку на урок или хотя бы ключи для поиска.
167 1211948
>>11689
Бамп вопросу.
14681105584450.jpg11 Кб, 415x406
168 1211952
Котаны, а как перекатится в новомодный js после двух лет на ruby? С чего начать? Есть ли тут бывшие рубисты? Расскажите свои кулстори.
170 1211959
>>11953
Я хз, что ты этим сказать хотел. Выше я уже писал, что ни разу не программист. Ты можешь нормально сказать, что гуглить, а не кичиться тем. что ты знаешь js, а кто-то нет?
171 1211962
>>11940
Жмешь правой кнопкой на странице и выбираешь "Inspect Element", после чего редактируешь html-контент страницы как хочешь.
172 1211963
>>11959
https://habr.com/post/52346/ вот норм статья
173 1211976
>>11962
Бля. Я сделаю скрипт, вставлю его в хром, а именно в тэмперманки. Нахуя мне его руками каждый раз вставлять? Вопрос в том, какие теги/команды/функции/хуй знает, что ещё встраивают ту же хтмл разметку или ксс из этого скрипта на страницу, на которой он запускается.
175 1211983
>>11952
Попробуй начать с прочтения документации.
176 1211986
>>11979
Это актуально, если бы на страницу был заранее встроен скрипт или путь к нему прописан.
177 1212000
>>11986
Если ты хочешь что-то вставить в дом, то тебе очевидно нужны методы работы с домом. Хоть как свой скрипт вставляй.
178 1212003
>>12000

> Хоть как свой скрипт вставляй.


Так с этим вопросом я сюда и пришёл. Сколько ни гуглил так и не нашёл, как его вставить. Везде предлагается только <script></script>. Руками, естественно не подходит.
179 1212010
>>11952

>в жс с руби


Ты че ебач чтоле?
180 1212022
>>11952
Берешь да перекатываешься. Язык даже попроще будет. Только готовься к функциональщине.
181 1212072
>>11952
Вообще-то, именно в JS и перекатились все хипстеры-смузихлёбы рубисты.
Или ты думал откуда всё это в JS?
182 1212186
>>12072
Я перекатился(потенциально) в охуенный эликсир, а на жсе сделал пару простых серверов и сейчас перехуячиваю фронт для старого рельсо проекта на реакт, чтобы не было так больно работать с тем легаси-говном, что там накопилось в ассетах. Ну и сам проект перевожу на эликсир потихоньку, потому что давно нужен полный рефактор, так что хули бы и не переписать на новый стек. Надеюсь к концу года будут заметные результаты.
рубист не-смузихлеб
183 1212187
>>12186

>несмузихлеб


>эликсир


Ага.
184 1212207
>>11952

>Котаны, а как перекатится в новомодный js после двух лет на ruby? С чего начать?



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

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

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

ES6 и ES2015 в этом плане принесли возможность использовать промисы и yield, что несколько облегчит твою жизнь, но необходимость превращать свой код в лапшу из setTimeout() по прежнему остается, как только твоя бизнес логика вырастет за пределы "склеить батарейки по Readme.md".
185 1212210
>>12207

Большинство хипстоты ничего кроме

>склеить батарейки по Readme.md



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

А описанное тобой обычно на интырпрайзной жабе пишут.
186 1212218
>>11933

>где еще пишут на ооп? Класов не видел уже на фронте милиард лет


А реакт по-твоему что?
187 1212244
>>12218

Тот случай, когда ООП обусловлено сутью библиотеки (мапинг кусков хтмл в виджеты). Хуизнес-логика один хер - это асинхронные колбеки/асинк с промисами, с которыми ооп не дружит.
188 1212277
>>12218
В оригинале реакт вообще был на Standard ML написан.
ООП интерфейс взяли при порте на JS чтобы народ не спугнуть, да для оптимизации под JS реалии
189 1212289
>>12244>>12277
Охуеительное у вас представление об ООП уровня восторженного ньюфага "ФП хайпят, значит ФП это охуенно а ООП - говно". Объект - это набор методов с внутренним стейтом, только и всего. Если вы раньше хуячили наследование наследования наследования и называли это "ООП", то это не проблема ООП и вы так же будете хуярить говнокод в любом функциональном языке.

На жсе писать в тру-функциональном стиле нерационально и практически невозможно. Композиция функций, лямбы, монады и т.д - это не ФП. Это его элементы, которые прекрасно уживаются с объектами и классами. Точно так же, как наследование, полиморфизм и прочие элементы ООП прекрасно применяются в функциональных языках. Хорошая программа должно использовать и то, и то.
190 1212291
>>12289
Мне-то ты что говоришь. Я прекрасно знаю об ML модулях, которые аналогичны ооп во многом, а так же о скале.
191 1212299
Объясните момент с регулярками.

Вот есть какая-нибудь var string='abc123'.
В этой стр, допустим, можно выделить (abc)(123) // $1$2
Вот так можно захватить группы в .test, .match, .replace.

А вот как мне эти захваченные группы засторить в переменную?

Т.е. грубо говоря
1. Действие один - где-то захватываю группы (н-р var RegExp=(abc)(123) или хз
2. Действие второе вынести группу $1 или группу $2 в переменную. Чтобы потом можно было реплейсить в стр переменной, в которую засторили группу 1 или группу 2 плюс совершили действие какое-то.
193 1212319
Объясните мне, котаны, чтому в вашем жабоскрипте такие хуёвые числа. Бабосик считать - рви пердак, числа больше сраного квадрилиона (может пилить экономическую стратегию хочу, или там круд для банка ZOG) - используй другие библиотеки и рви пердак .add(number2) вместо оператора сложения, и так блядь весь код потому что мне большие бабосики складывать надо. Чому такая хуета, да и вжабке обычной тоже, все пиздят за интырпрайз а как бабосики считать - так рви пердак, где ж этот ваш интырпрайз?
194 1212326
Решил через колбэк в реплейс.
195 1212330
>>12313
Спс буду иметь в виду. Но уже ебнул через колбэк в реплейс.
196 1212339
>>12319
BigInt скоро подъедет. Уже в последнем хроме есть.
sage 197 1212379
>>12319
BigDecimal и BigInteger уже давно есть в джаве, долбаёб
198 1212558
>>12379
Ну так он и сказал, что нужно использовать .add вместо оператора
199 1212574
тест
200 1212581
Реактоблядки, поясните такую вещь.

Есть stateful компонент item-editor, в нём два text input и кнопка save.
И есть список items.
При нажатии на строку этого списка в item-editor передаётся выбранный item как prop.
При этом value у input'ов заданы из внутреннего стейта + onChange.

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

getDerivedStateFromProps() - не то.
Делать сайд-эффект в shouldComponentUpdate() - менять там state из нового prop?
201 1212586
Внимание вопрос знатокам.
Задает полный нубас.
Юзаю я значит Math.random(); и всплыл такой вопрос - по нему совсем малая погрешность, т.е. на 1000 итераций, если брать, скажем, 0.15 как пограничное число, выдаст что-то вроде 144 тру и 856 фолс.
Это Node.js, почему у него ядро такое предсказуемое?
Я сейчас еще запилю хвататель стриков, посмотрю сколько подряд выхлопов дает тру/фолса, но вангую что не много, при таких=то показателях.
Вопрос в догонку, есть ли другие варианты рандома?
202 1212588
>>12581
Вынеси стейт инпутов в item-editor, раз ему нужно знать об этих изменения, очевидно.
203 1212593
>>12588
Он там и есть.

Проблема в том, что он должен меняться при смене prop у item-editor - когда выбрали новый item.
Но, нормально это можно сделать 1 раз - в конструкторе.
204 1212596
>>12593

>При этом value у input'ов заданы из внутреннего стейта + onChange.


>Он там и есть.


Че? Код давай
207 1212625
>>12608
Мне не для безопасности, просто в Питоновском мате приходилось делать костыль для обрезания долгих стриков, при "шансе" в 1% могло выдать и 300 и 400 фолсов подряд.
Сейчас почитаю что скинул, спасибо за внимание.
Обезьяна конченная зачем ты прокси банишь на /pr/?
208 1212635
Какой метод перебирает массивы резче - файнд или фильтор?
209 1212637
>>12635
Фильтр
210 1212662
>>12600
https://reactjs.org/blog/2018/06/07/you-probably-dont-need-derived-state.html
И ты каждый раз в конструкторе ставишь в state одни и те же статичные значения, а не полученные из props
211 1212676
>>12662

>И ты каждый раз в конструкторе ...


Да неужели, лол.
Естественно - на момент создания компонента редактируемый item не выбран.

За ссылку - спасибо.
Это именно то, что нужно.
В итоге всё, как обычно, сводится к lifting state up.

Реакт, конечно, лютая opinionated xyuta.
Реально, прямо физически утомляет всё это.
Одного китайца, похоже, так утомило, что он аж целый фреймворк написал, лол.
212 1212679
>>12676
Ну так поставь this.props.item.id || '', не? И defaultProps = { item: {} }
213 1212693
>>12600>>12676
https://pastebin.com/ZgfbyWgv Так попробуй, должно работать.
214 1212694
>>12679
Да это понятно, но, проблема же не в этом.
В итоге, при создании всё равно соответствующие поля в стейте будут пустые.
Вопрос был - как менять state при изменении props.

В принципе, componentWillReceiveProps() - это решение.
(И getDerivedStateFromProps() - нихуя не замена ему, как они пишут.)
Но, они говорят - это антипаттерн, выносите состояние (и обработку его изменений) выше.

Алсо, умиляет, что тот блог-пост всего 10 дней назад написан.

На самом деле - этот пример (и тот, что в блог-посте) - это самая мякотка Реакта, которая показывает всю глубину ебанизма.
Снова вспоминаются всякие афоризмы на тему pure = poor, лол.
215 1212699
>>12694
Итем лист и item-editor обернуты в родительский компонент. Когда ты жмешь на итем в списке, родительский компонент апдейтит свой стейт {selectedItem: item} и соотвественно ре-рендерит все дочерние компоненты, включая item-editor, куда передает item={selectedItem}. editor инициализируется заново с новыми props и проставляет себе новый state, соотвественно перерендеривая все дочерние инпуты с нужными тебе значениями. В чем проблема, что я упускаю?
216 1212713
>>12699
Item-editor не создаётся заново при этом.
Конструктор не вызывается.
Стейт не меняется.

Надо использовать componentWillReceiveProps(newProps).
Или выносить стейт и onChange в род. компонент, а item-editor делать функцией, как в примере в том посте по ссылке.

C getDerivedStateFromProps() у меня (вчера) не получилось, надо попозже ещё попробовать, возможно, я чего-то недопонял.

Чтобы было понятно, зачем я со всем этим ебусь - я хочу понять, чего оно вообще стоит, в целом, прежде чем всерьёз в это ввязываться.

Потому, что Vue мне кажется в разы более практичным.
И кроме удовольствия других эмоций не вызывает.
Но, у React мне нравится инструментальная поддержка, и вообще то, что это чистый JS.

Но, если за эти ништяки надо заплатить слишком дорого - то пусть оно идёт на хуй.
Потому, что для Vue инструментальная поддержка тоже неплоха (для single file components), а бойлерплейта там в разы меньше. И куча дополнительных ништяков. И можно даже писать в react-стиле на JSX (но неинтересно и не нужно, в большинстве случаев).
ma.jpg98 Кб, 1280x720
217 1212738
>>12713

>Потому, что Vue мне кажется в разы более практичным.


Вьютух становится всё изобретательней. Уже целую многоходовочку с лифт-стейтом разыграл, как по нотам.
218 1212784
>>12713
Все, я разобрался. Да, думал, что конструктор вызывается при каждом рендере, потому что с реактом работаю недавно, но в принципе проблема понятна - ты пытаешься менять один и тот же логический стейт(значения инпутов) из двух разных мест, вот реакт и выебывается, потому что локальный стейт должен меняться только изнутри объекта, а не откуда попало.
219 1212848
>>12738

> Вьютух


Ты имеешь в виду некоего хуя, который по весне форсил тут Vue?
Я не он, лол.

>как по нотам


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

Костыль в виде getDerivedStateFromProps() - это и есть попытка это исправить. Надо с этим разобраться, пока не понял, будет ли с этого толк.

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

Тут главное, чтобы в будущем они не понаделали какой-нибудь хуйни, в попытке улучшить хорошее.

А реакт имеет то преимущество, что ломать там просто нечего, лол.
220 1212875
>>12848

>Костыль в виде getDerivedStateFromProps()


Это не костыль, это возможность для реализации edge-cases. Твой случай решается по-другому, выше ссылка уже была. Конкретно объясни, что в этом решении тебе не нравится и зачем ты хочешь менять стейт и снаружи компонента, и внутри, когда можно его вынести в одно место и сразу видеть, все случаи, как и из-за чего он может измениться, а не гадать по кофейной гуще с дебагером.
221 1212931
>>12875

>что в этом решении тебе не нравится и зачем ты хочешь менять стейт и снаружи компонента, и внутри



Речь идёт о низкоуровневом, "техническом" стейте - необходимом для функционирования controlled input.
И мне бы хотелось, чтобы он был инкапсулирован там, где он используется.
И я не хочу его менять, я хочу его за-менять, полностью.
А мне предлагают всё это говно тащить на самый верх, ибо иначе (через componentWillReceiveProps()) - "антипаттерн".

И тут мы приходим к интересному выводу.
Дело в том, что Реакт - это библиотека (не фреймворк).
И делает она только view. Больше там нет нихуя.

И совершенно _любой_ (встроенный) стейт в Реакте - технический, низкоуровневый. Предназначенный исключительно для функционирования внутренней механики view.
И делать на нём какую-либо бизнес-логику совершенно неправильно.

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

Короче, смысл в том, что в чистом виде Реакт _вообще_ не пригоден к использованию. К нему _обязательно_ , сразу же. надо наворачивать что-то для поддержки бизнес-логики. Редукс, МобИкс, event bus, что угодно.

И это-то мне и не нравится.
Хотя, этот недостаток, по сути - ни что иное, как продолжение достоинств.

Короче, как я уже тут писал - слишком низкоуровнево и слишком затратно.
222 1213027
>>12931
Согласен, реакт _параша_ та еще.
223 1213071
>>12931

>Речь идёт о низкоуровневом, "техническом" стейте - необходимом для функционирования controlled input.


У инпута единственный стейт - это его значение. То, что ты можешь его менять через onChange, не значит, что он технический. Просто браузер предоставляет тебе функционал для детекта ввода от юзера, который реализован через эвент. Если ты хочешь детектить другие эвенты(клик по списку итемов) и изменять значения инпута соотвественно, то тебе нужно каким-то образом связать инпут еще и с тем эвентом. Реакт считает, что все эвенты, которые влияют на стейт компонента, должны объявляться и триггериться в одном месте. Для этого и нужно lifting state up, чтобы обернуть связанные между собой компоненты и объявить эти эвенты. Я по UI не эксперт, так как работаю в основном с серверной частью, но по-моему это вполне здравая идея.

>Дело в том, что Реакт - это библиотека (не фреймворк). И делает она только view. Больше там нет нихуя.


Это должно было стать понятно сразу после прочтения доков. Из-за этого он мне и понравился, но понятное дело, что если ты начинаешь в любых вьюхах(не только реактовских) хуячить что-то кроме презентативной логики "взять то, поставить туда", то рано или поздно останешься с кучей неподдерживаемой хуйни. Об этом знает любой, кто работал с каким-то популярным MVC фреймворком.
React + Redux = MVC? 224 1213136
Реакт-компоненты это View.
Стор это Model.
Reducers = Controllers.
Всё так?
225 1213138
>>13136
MVC в современном понимании - это полная хуйня, которая не работает, как только твое приложени становится чуть сложнее палки. Ну нельзя всю логику запихнуть в модели/контролеры/вьюхи и не остаться с кучей говнокода, который не принадлежит ни к чему
226 1213148
>>13136

>Всё так?


Ну, это очень вольное толкование, лол.
Вообще-то, Redux (Flux) - это альтернатива MVC.

https://habr.com/company/tuturu/blog/321820/
http://tech.toptable.co.uk/blog/2015/01/01/explaining-flux-architecture-with-macgyver-dot-js/
https://www.infoq.com/news/2014/05/facebook-mvc-flux
google: flux architecture vs mvc

>>13138
Всё так и есть.
227 1213165
>>12931
>>13071
Я тут переосмыслил эту тему.

На самом деле, то, что я пытался делать с Реактом - это как раз таки попытка сделать классическое "клиентское" MVC.
Там, как раз, бизнес-логика вперемешку со техническим стейтом.
Взять, хотя-бы, Java Swing.
Вот тут эта проблема хорошо описана:
https://habr.com/company/tuturu/blog/321820/

А Реакт для MVC не годится.
Т.е. можно, но некрасиво получается.
Да и незачем, лол.

Конкретная же описанная проблема решается через ресет стейта под новый item в componentWillReceiveProps(). Всё работает просто замечательно.
228 1213203
Ребята, кто с джава работает и сам из Новосибирска отпишитесь, нужно написать бота для лайв ставок как расширение хрома, пример бота рабочего есть, исходный код можно посмотреть

Профит с этой темы ооооочень хороший
хромог.PNG11 Кб, 882x135
229 1213213
Почему хроманя с последней версии неправильно конвертирует строку в дату? Какой еще часовой пояс +03:06, они там совсем ебанулись в своем гугле? В лисе все нормально.
230 1213216
>>13213
Нехуй было в футбол России проигрывать.
231 1213221
>>13216
Но я в России, хуй пойми откуда он берет Саудовскую Аравию.
232 1213257
>>13213
Это санкции против России. А вообще попробуй добавить .toLocaleString()
Screenshot20180619200533.png82 Кб, 624x612
233 1213276
Есть такая json DB, какой должен быть запрос для изменения например комментария отдельного элемента?
Screenshot20180619-221747.png719 Кб, 1080x1920
234 1213283
Ребята, кто с джава работает и сам из Новосибирска отпишитесь, нужно написать бота для лайв ставок как расширение хрома, пример бота рабочего есть, исходный код можно посмотреть

Профит с этой темы ооооочень хороший
235 1213284
>>13283
Джаваскрипт и джава разные вещи, для справки.
236 1213306
>>13284
В этой проге скорее всего джава скрипт
237 1213311
>>06689 (OP)
Зацените охуенную штуку:
https://vimsical.com/

Пишешь код (+ чтмл, цсс), он его исполняет и делает из него интерактивный скринкаст. Может я слоупок, но я охуел, даже не думал, что так можно, лол.

Попенсорсно (код на кложе+кложескрипте): https://github.com/vimsical/vimsical
238 1213325
>>13283
pn!7rakopANUSmaia6nlPUNCTUMrBm9u
239 1213326
>>13325
Проебался.
praU+|kop29ANUSmUOiailPUNCTUMrS9.u
240 1213330
>>13326

Напиши в телегу @igergg
241 1213360
JSAnon, подскажи плз нормально ли так сохранять контекст для TypeScript - https://jsfiddle.net/1b68eLdr/24496/ все работает, но нет ли какого оверхэда, а то я нуб, по сравнению с такой реализацией https://jsfiddle.net/1b68eLdr/24501/ ?
242 1213368
>>13360
Вопрос только - нахуя его сохранять в классе? У тебя при каждом созданном объекте This.self будет перезаписываться.
243 1213387
>>13368
Точно, спасибо, анон. Как то провтыкал это. Как тогда лучше следить за этим this, есть какой то лайфхак?
244 1213396
>>13387
Я не очень понял, чего ты хочешь?
Зачем следить за this?
Это ссылка объекта на себя, она не меняется.

Ты хочешь создавать объекты и запоминать их ссылки? Тогда это называется Factory pattern.
245 1213402
>>13396

>Это ссылка объекта на себя, она не меняется.


Это в других языках, в JS же this ссылается на контекст, а не на инстанс объекта.

А мне вызывать потом в колбеке нужно будет пару методов, в итоге все поломается, потому что this будет хер знает что
246 1213409
>>13402
Понятно.
Тебе надо self = this.
Это руками, везде, где this может быть неправильным.

Напр. тебе из метода объекта надо вызвать колбек, и внутри колбека обратиться к объекту.
Тогда в методе перед вызовом колбека пишешь const self = this.
А потом уже в колбеке self.someProp ...

Также, можно привязывать колбек к this объекта.
Точнее, создавать новый колбек, привязаный к нужному this:
this.boundCallback = someCallback.bind(this);
В реакте так делают - в конструкторе класса.
247 1213413
>>13409

>Тогда в методе перед вызовом колбека пишешь const self = this.


кстати, мое изобретение :^)
248 1213427
>>13413
Дед, ты же умер в 2009.
249 1213440
>>13409
Можно ещё и делать someCallback.call(this, arg1, arg2, ...) или someCallback.apply(this, argsArray).

Так что, в большинстве случаев использовать self = this просто не нужно.
250 1213477
Анон, я совсем даун. Объясните как работает обработка ошибок в callback-функциях в контексте резервации первого аргумента для ошибок. Вот на примере это не могу понять нихуя https://stackoverflow.com/a/19739899
14810770325230.jpg60 Кб, 500x500
251 1213483
Как на имиджбордах через js загрузить изображение в пост?
252 1213489
>>13477
ну, при ероре у тебя функция вернет ерор, при результате, результат. ты тупа смотришь, не ерор ли это
253 1213495
>>12848
Vue не "менее opinionated", а намешивает ангуляр с реактом, чтобы ублажить и тех и тех, без своего видения или идеи.
254 1213501
>>13495
Да просто надо писать по книге «Vuex Concepts» (Daniel Schmitz & Daniel Pedrinha Georgii), а не скрещивать бульдога с носорогом. Получится тот же React/Redux, но более быстрый, за счёт отсутствия VirtualDOM.
Вот она:
https://bit-ly/2K5Yw6p
255 1213502
>>13483
бамп неужели никто не знает
256 1213503
>>13501
Тут вместо «-ly» набрать «.ly»
257 1213543
>>13502
Из браузера - никак, js не имеет доступа к файлам системы. Можешь искать API борды, скорее всего там есть такая возможность, сможешь на ноде скрипт написать.
258 1213611
>>13501

>Педрина


Ска лол.
259 1213640

>learn.javascript.ru - Самый главный русскоязычный сайт по JavaScript. Других таких подробных уроков не найти. Начинать строго с него.


Пиздец, ну и говнина этот кантор, нихуя толком не объясняется и вообще какая-то ебанина.

Сейчас читаю одну книжку (на английском) про жс, и охуеваю с того, как я жил раньше и не знал основ.
260 1213652
>>13640
Ну а хули делать, вкатывальщики обычно английский знают на уровне бе ме, а потом уже подтягивают хотя бы до чтения технической литературы. Им кантор самое то.
261 1213664
>>13501

>Vue


>но более быстрый, за счёт отсутствия VirtualDOM.


>отсутствия VirtualDOM


Ты, я смотрю, просто эксперт.
В пионерлагерь-то чего не поехал?
Или прямо оттуда двачуешь

>>13495

>намешивает ангуляр с реактом


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

>без своего видения или идеи


Там есть охуенная идея.
Весьма необычная для фронтенда в наши дни.

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

И там компоненты - это именно компоненты, в том смысле, в каком их понимает нормальный человек, а не просто кусочки хуйни, как в реакте.
262 1213666
>>13640

>Пиздец, ну и говнина этот кантор, нихуя толком не объясняется и вообще какая-то ебанина.



Приятно встретить понимающего человека.
Реально заебали уже это говно форсить.
263 1213689
Почему Infinity при любых(кроме степени) мат. операциях с целым дает Infinity, а при возведении в степень Infinity обращается в 1?
264 1213695
>>13666
Альтернатива на инглише какая?
266 1213756
>>13695
Алсо - вот Eloquent Javascript на русском:
https://habr.com/post/240219/

Это в шапке, в материалах для изучения, кстати.
Не пренебрегайте.
267 1213761
>>13543
Ну а если файлы брать не из системы а из самого треда? Где ссылка на изображение должна прописываться?
268 1213771
>>13689
Ты наверное путаешь степень с https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Assignment_Operators#Bitwise_XOR_assignment

Чтобы возвесть в степень используй Math.pow
269 1213772
>>13761
В теле POST-запроса. И не ссылка, а base64encoded image data, сформированная через BOM API.
270 1213775
>>13771
Да, да, я проебался конечно. Простите. Привычка.
271 1213779
>>13640
дай угадаю: ты долго ковырял Кантора, потом бросил, начал читать книжку, все стало усваиваться лучше и ты сразу такой: бляя) кантор хуйня какаято непонятная, книга лучше оказывается)
Расскрою секрет - если бы ты сначала ковырял книгу, а потом начал Кантора, тебе бы второй ресурс показался понятнее, потому-что ты уже пришел туда с какими-то знаниями, и начал просто их раскладывать по полочкам и систематизировать.
Просто, я часто смотрю видосики на ютубе, и там всегда находится какой-нибудь восторженный долбоёб который напишет: спасибо автор!! я уже на трёх разных ресурсах учил <<хуйнянейм>> и только у тебя я понял, потому-что ты лучший!!!!. Нет бля, он не лучший, просто тебе долбоёбу нужно четыре раза объяснить всё с разных сторон, чтобы ты понял.

А вообще, я считаю именно книги хорошим способом упорядочить знания, а для первых шагов лучше использовать метод теория+практика в одинаковых дозах, а Кантор для этого подходит лучше
272 1213780
>>13761
По-моему браузер вообще не позволяет жсу хоть как-то менять значение файл инпутов. Можно разве что самому составить кастомную формдату, куда и включить эти файлы, после чего запостить.
273 1213782
>>13716
>>13756
Что-то меня тоже от кантора поблёвывать тянет малоть. Какой раз пробую читать и как-то не идет. Попробую Eloquent JavaScript, уже не первый раз её вижу.
274 1213788
>>13779
Кантор хорошо когда нет опыта вообще.
275 1213789
Спецификации и MDN хватает за глаза.
276 1213790
>>13789
Человеку который уже знает какой-нибудь другой ЯП, конечно
277 1213794
>>13790
Изучал веб-стек php, js, html, css (ну и периферию в виде протоколов, бд, етк) руководствуясь лишь спеками и справочниками. С нуля. До этого не знал ничего вообще.
278 1213798
>>13794
Из книг считаю вообще напрасной тратой времени читать что-то по конкретным языкам. Читать можно лишь что-то монументальное по алгоритмам, по операционкам, архитектуре, сетям, или философское, по типу Раскина или Макконела, если любопытно. А языки изучать по книжкам, это это от лени какой-то.
279 1213799
>>13798

>монументальное


фундаментальное*
280 1213815
>>13779
Двачую вот этого дядю.
281 1213842
>>13780
позволяет только сбросить значение пустой строкой. а что измениться если заменить форму? то есть в ней же тоже будет инпутфайл, которому нельзя задать значение програмно.
282 1213847
>>13798
А я Гарри Поттера любил читать, это по-твоему тоже трата времени?
283 1213906
двач меня сегодня приняли на позицию фронтендщика. Первый раз в офис завтра пойду !!111!
284 1213908
>>13906
какой лвл? опыт какой-нибудь работы есть?
285 1213912
>>13908
21

> опыт


не самый успешный опыт фриланса и на рубях пара пет прожектов
286 1213925
>>13912
Нормально, чо. Легко устроился-то?
287 1213931
>>13925
да не я думал меня сольют, начали задавать вопросы аля как происходит процесс рендеренга страницы чем прототипная парадигма отличиается от ОО и я чет поплыл. Что даже для меня удивительно т.к. большинство ответов на большинство вопросов я знал.
Сидел мямлил что-то невнятное.
288 1213937
>>13931
Что еще спрашивали, довай подробностей
289 1214058
>>13640
Всё там нормально объясняется.
290 1214252
>>14058
Хуёво там объясняется.
Тот, кому такие объяснения норм, тот в них не нуждается, как правило.
291 1214284
Тоже не понимаю обвинений Кантора, вполне годно описаны многие стороны языка.
292 1214342
Какая версия Кантора актуальнее: русская (learn.javascript.ru) или английская(javascript.info)
293 1214415
>>14342
Английская
294 1214434
>>14415
Не сильно он тех. терминами перегружен? Со словарём осилить можно? А кто попробовал Выразительный Javascript и охуел и от абстракций и афоризмов разных.
295 1214444
>>14434
Не знаю, не читал. Попробуй.
296 1214454
>>14252
Что там хуево объясняется?
297 1214462
>>14415
Кантор же русич, чем английская версия лучше, если русский - оригинал?
298 1214481
>>14462
Актуальная. Тут тебе сразу про стелочки расскажут, про let, про const. В русиче дай бог отдельно есть, если есть вообще инфа конкретно от него про всё это.
299 1214489
Кантор вообще не нужен, ибо сть freecodecamp, который лучше по всем параметрам
300 1214502
>>14454

>Что там хуево объясняется?



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

Чтобы было понятно о чём я - посмотри серию книг "Grokking ..." или тот же "Head First ...".
Или совершенно охуенную митовскую "Once Upon an Algorithm".
301 1214513
>>14481

>const


Никогда кстати не использовал эту залупу, и не могу представить юзкейс, где она бы решала какую-то проблему, а печатать на два символа больше - идите нахуй. Особенно умиляет, что во всех гайдах теперь пишут const hui = require("penis"). В жс-манямире серьезно есть макаки, которые переписывают внешние переменные внутри функции?
302 1214514
Как сделать onclick fetch?

Хочу чтоб было так:
// какая-то кнопка
<input type="submit" onclick="showJSON()">

// на клик мой json прилетает
function showJSON() {
fetch('my.json')
.then(function(response) {
return response.json();
})
.then(function(myJson) {
console.log(myJson);
});
}

console.log для примера, там конечно иной функционал.
303 1214529
>>14513
Именно поэтому ты никогда не вкатишься в ойти
304 1214532
>>14514
не понял что ты хочешь? Ты хочешь что бы вместо стандартного сабмита был аякс?
Тогда просто отмени стандартное действие браузера - event.preventDefault()
305 1214533
>>14529
Я уже пять лет тута, наркоман.
306 1214536
>>14532

>Тогда просто отмени стандартное действие браузера - event.preventDefault()



Или пусть type="button" использует.
307 1214540
Правда ли, что операторы - это функции?

Например, + это не знак сложения, а функция, которая принимает два аргумента и возвращает одно?

Т.е.:
var a = b+c;
Это:
var a = function +(b,c){
return //сумма b и c
}
308 1214542
>>14533
В этом треде пять лет сидишь? Я ж говорю, что никогда не вкатишься.
309 1214550
>>14540
Логически - да. Практически - зависит от языка. Обычно +/*- и т.д реализованы как специальный оператор, а не функция.
15068308354950.jpg43 Кб, 750x636
310 1214555
>>14550

>Практически - зависит от языка


>жс-тред

Operators.mp49,9 Мб, mp4,
1280x720, 6:32
311 1214557
>>14550
Чувак на видео говорит, как я описал выше, что это функция.
Но нигде в интернетах я не нашёл подтверждения, вот я и запутался - прав он или нет?
312 1214561
>>14557
Функция это инкапсулированная часть кода. + в контекст инкапсулированного кода никак не вписывается. Конкретно в жс, + это оператор, а какой любой другой оператор он возвращает значение. По итогу выполнения инструкции да, похоже на функцию. Семантически нет, это не функция.
313 1214562
>>14561
А если по русски?
314 1214564
>>14562
Это не функция. Про функции тебе чувак потом расскажет.
315 1214565
>>14564

>расскажет.


Почему тогда он говорит, что это функция?
Ты вообще видео смотрел?
316 1214567
>>14565
Если мои слова для тебя пиздеж тупой, иди на википедию, читай, что такое функция и сравни её с оператором +.
317 1214568
>>14567
Даже видео называет Операторы, а не функции.
318 1214570
>>14568

>Даже видео называет Операторы, а не функции.


Смог всё-таки перевести название через гугл транслейт, молодец. Жаль только, что содержимое не осилил.
319 1214573
>>14570
Ну куда уж мне до тебя.
320 1214586
Аноны, помогите разобраться. Выдали мне ТЗ:

1) Сделать сайт. Стиль и содержание не важно.
2) Разместить на всех страницах меню для перехода по страницам с использованием javascript XMLHttpRequest.
переход по страницам без перезагрузки)
3) Для реализации не использовать сторонние js плагины, только нативный js.


Так это первый сайт в моей жизни очень туплю. Результат 15ти часов мозговых усилий работает так:

Со стартовой страницы localhosta переход действительно выполняется без обновления странички. Однако затем наступает крах. Т.е. перешёл с main на, скажем, 1 - всё ок. А уже обратно - нет. Впрочем, если затем перейти, допустим, с 2 на 3, то код тоже не сработает, но зато сработает ОБРАТНО. Короче, я запутался совсем.

КТО ПОМОЖЕТ РАЗОБРАТЬСЯ - СКИНУ 100 РУБЛЕЙ НА ТЕЛЕФОН
321 1214587
>>14513

>const


>не могу представить юзкейс, где она бы решала какую-то проблему


Есть такая вещь, как стиль.
В смысле - хороший.
Или его отсутствие, вот, как в твоём случае.
322 1214588
>>14540
Это в лиспе и в схеме так.
323 1214589
>>14588

>Это в лиспе и в схеме так.


А в жс?
Я же выше видео даже скинул ёпт
324 1214594
>>14589
Погуглил, нихуя не нашёл такого.
Видео не смотрел.
325 1214598
>>14589
Бегло просмотрел видео без звука.
Так про другое, лол.

Но, если тебя возбуждают такие вещи, тебе обязательно надо открыть для себя LISP (Scheme).

Кстати, есть такая точка зрения, что JS - это Scheme с сишным синтаксисом, лол. Только не надо понимать это буквально.
326 1214600
>>14598

>Так про другое, лол.


Чего?
327 1214601
>>14600

>Так


Там
изображение.png56 Кб, 1600x900
Изучение js для разработчика на Java Васян 328 1214627
Всем привет! Уже год пишу на java. Могу в android. Знаю spring и другие мелкие библеотеки. Ближе к делу. Перед тем как начать изучать яву, я прошел коротенький бесплатный курс по javascript на geekbrains, мне он тогда не очень зашел кстати почему он мне не понравился я так и не понял, но сейчас загорелся желанием писать и на js тоже. Как мне следует начать его учить? В программирование в целом я уже могу, поэтому Марейн Хавербек - "Выразительный JavaScript" мне наверное не подойдет? Если так, то сможет ли Дэвид Фленеган - "JavaScript: Подробное руководство" научить меня, как новичка в js его синтаксису и особенностям? Может быть есть какие-либо годные видео курсы при изучении java читал книгу и паралельно смотрел нужные видео туториалы . Какие книги читали вы, в самом начале изучения?
329 1214634
>>14627
А чем ява отличается от яваскрипта? Это же одно и то же.
Васян 330 1214638
>>14634
java - сильно типизированный язык
js - слабо типизированный язык
331 1214672
>>14634

>ява


>яваскрипт



С козырей зашёл, содомит.
332 1214689
>>14634
Ява это сигареты. А яваскрипт вовсе неведомая хуета какая-то тобою выдуманная.
333 1214697
>>14689
Тогда чому челик выше про яву пишет?
334 1214698
Аноны, объясните глупому: почему при оборачивании вызова в функцию контекст не теряется и берется по замыканию? Разве обычный вызов не так же работает, т.е. сначала переменная ищется внутри, а потом - снаружи? С меня как обычно.
335 1214705
>>14627
Читай Кантора в самый раз будет.
336 1214706
>>14698
Ты про возврат функции в return и с помощью этого последующий доступ в закрытую функцию замыканием?
337 1214710
>>14698
Ты пример кода покажи, нихуя же не понятно, о чём ты.
Лучше в JS Fiddle или типа того.
338 1214716
>>14705
Я как раз это и делаю и че-то не совсем понимаю пример этот: https://learn.javascript.ru/bind#решение-1-сделать-обёртку
339 1214719
>>14716
Аххахахах, ты не можешь в карринг? Ебать лох!
340 1214723
>>14716
Ну блин. Привыкай.
У нас тут коллбеки, замыкания, контексты. Можем явно указывать, что является this...
Я сам с джавы пересел на джваскрипт, некоторые моменты показались очень странными.
341 1214724
>>14719
Я не про это скинул.
Карринг вроде понял.
342 1214725
>>14724
Крч смотри.
Ты передал функцию, в которой есть обращение к контексту (this). Ты передал саму функцию, отдельно от объекта user, потому что user.sayHi не более, чем переменная.
343 1214726
>>14716
Отличный пример того, что этот ваш кантор - полное говно в качестве учебника.

Если ты о первом блоке кода в подразделе, о том, где написано "Теперь код работает, так как user достаётся из замыкания." - то смысла в нём нет вообще никакого, поэтому искать его бесполезно.
344 1214732
>>14726

>Если ты о первом блоке кода в подразделе, о том, где написано "Теперь код работает, так как user достаётся из замыкания." - то смысла в нём нет вообще никакого, поэтому искать его бесполезно.


Два чаю.
Я всегда говорил, что этот ваш кантор говнище полное.
345 1214733
>>14732
>>14726
Именно это я и имел в виду. А что тогда человеческое есть из учебников (не сраные курсы)?
>>14725
Ок, поебал пример этот туда-сюда. Работает же нормально, если тупо написать setTimeout(user.sayHi(), 1000);. Зачем ебля с врапперами?
346 1214737
>>14733

> setTimeout(user.sayHi(), 1000);


Не будет работать, потому что функция выполнится сразу же, ибо скобки, а для таймера нужно «без скобок».
347 1214741
>>14733
В setTimeout нужно передавать функцию, которая выполнится через время во втором аргументе.
Если передавать в setTimeout функцию(), то функция выполняется сразу, а setTimeout будет пытаться выполнить уже результат выполнения функции через указанное время.
348 1214747
>>14741
Хорошо, тогда вариант user.sayHi.bind(user) будет правильно работать?
349 1214749
Есть тут те, кто пишет/писали серьёзный бэкэнд на жс? Или серьёзного бэкэнда на жс не бывает?
350 1214750
>>14747
будет
351 1214751
Чему равно a?

a = 3 < 2 < 1;
352 1214752
>>14749
У меня на работе 9 проектов, на каждом своя тима пишет фронт и бэк на джс.
353 1214753
>>14747
Бинд будет работать, бинд возвращает из себя функцию.
Апплай и колл не будут, они выполняют функцию сразу.
354 1214762
>>14752
Что за проекты? Микросервисы какие-нибудь? Какой стек?
355 1214764
>>14762
Пожалуй, не буду отвечать, извини.
356 1214767
>>14764
Чё, даже стек зажал? Или просто не знаешь?
357 1214769
>>14767
Он сам сидит на шее у мамки, и всё нафантазировал
358 1214772
>>14586
Парни, две сотки!
359 1214774
>>14751

>3 < 2 < 1;


Свою тупость пришел показать? JS не поддерживает комбинированные сравнения. Правильно писать так
a = 3 < 2 && 2 < 1;
360 1214777
>>14751

>a = 3 < 2 < 1;


>a = (3 < 2) < 1;


>a = false < 1;


>a = true


Что тебе не понятно? Не осилил неявное приведение типов?
361 1214779
>>14767
Соре, вылетело из головы. Про других не скажу, но у нас: react, react native, koa, mongoDB, sockets.io, doker, ansible, drone CI.
>>14769
маняпроекции
362 1214786
>>14774

> JS не поддерживает комбинированные сравнения


Это как-раз таки ты тупой.

>>14777
А почему ты берёшь 3 и 2 в скобки?
363 1214787
>>14779
Мерси за стек. А с реакт нейтивом проблем много? Нативные компоненты для реакт нейтива специальные ведро/ябло-программисты пишут?
365 1214790
>>14787
Особых проблем нет, как обычный реакт, различий минимум. У нас апликуха чисто под андройд, и я иногда предлагал ПМу некоторые нативные вещи писать самому (хорошо знаю джава), но он отказывается, говорит, проще найти готовые решения, и пока все находили.

Я на самом деле много вещей из стека пропустил, их так и не упомнишь. Redux, postcss... много чего используем.
366 1214791
>>14788
Я помню в коде в дофига местах написал "parrent", охренел потом исправлять...
367 1214814
>>14791
Ну ты индус)
replace all & find all для кого сделали?
368 1214834
>>14733
На самом деле, им можно пользоваться как учебником, но, при условии, что ты не воспринимаешь его как истину в последней инстанции.

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

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

Если интересно, что ещё бывает из учебных материалов - читни этот тред за последние пару дней, хотя-бы. Ну и шапку, конечно.
369 1214838
>>14786
Это не я беру. Это я тебе показываю, в каком порядке происходит вычисление.
370 1214916
>>14838
Но ты же взял в скобки на втором шаге.

Ок, а почему именно в таком порядке?
Аноним 371 1214930
>>06689 (OP)
Жду оценок парсера
16лвл 2года программирования, стаж - 1год фронт и бэк(React/Node)
372 1214931
a^b

Что это за оператор?
374 1214933
>>14930
пиздабол
Аноним 375 1214934
>>14933
Бля тебе скрин проекта на котором работаю кинуть, лол
376 1214935
>>14934
давай, пиздюк малолетний
image.png141 Кб, 1905x930
Аноним 377 1214936
>>14935
Вот ветка в которой только мои изменения, перенес функционал чата (личный кабинет) с jquery на реакт(не весь еще) и верстку (готовую) по компонентам разбросал
378 1214937
>>14932
хуйня, я делал парсер, который пиздил цп у роскомнадзора
379 1214938
>>14936
То есть по сути ты нихуя не сделал, а только слепил из одного говна другое, макака?
Аноним 380 1214939
>>14938
Лол, думай как хочешь , я дохуя чего сделал, мне то по кайфу в 16лет рубить доухя бабла
381 1214940
>>14939

>доухя бабла


150$
Аноним 382 1214941
>>14940
Хех, если для тебя 150 зеленых это дохуя, то...
383 1214942
>>14941
Я немного больше получаю (в 10 раз), но все равно мало. А ты дальше хуярь свое говно на джиквери
Аноним 384 1214943
>>14942

>Я немного больше получаю (в 10 раз)


Ну, знаешь не намного больше меня(850).
А ты дальше хуярь свое говно на джиквери

>Соре, реакт онли

Аноним 385 1214944
>>14943
Налажал с ">" ))
386 1214946
>>14943
У тебя еще все с математикой хуево, ясно
Аноним 387 1214948
>>14946

>У тебя еще все с математикой хуево, ясно



че ты до математики доебался, лол. Я к тому что тебе за 20, а мне 16 и относительно этого разница небольшая.

Ты сказал 1500, лол, а че так мало?? Нормальные кодеры по 2500+ берут, я еще джун со мной все ясно, а ты ??
388 1214950
>>14930

>16лвл


>>14939

>16лет


>>14948

>мне 16


Да мы поняли, что ты свое скудоумие возрастом оправдываешь.
У меня в компании в год +500 к зп, пока не будет 3000, такие дела. Так что через 1.5 годика буду нормальным кодером в твоем манямирке.
image.png40 Кб, 185x185
Аноним 389 1214952
>>14950

>Да мы поняли, что ты свое скудоумие возрастом оправдываешь.



Я не тупой
390 1214957
>>14952
И то верно, незачем тупых обижать.
Ты не тупой, ты малолетний визгливый олигофрен.
391 1214961
>>14719
Кантор тоже не может в карринг.
Потому, что то, что он называет каррингом, на самом деле называется partial application.
А карринг - это немножко другое.
392 1214974
>>14961

>Кантор тоже не может в карринг.


Та как так? Он же кумир молодежи. Идол вкатывальщиков. Учился в самом МГУ, защитил кандидатскую диссертацию. Неужели правда не может? Неужели? Неужели правда? Я не верю! Слышите! Не верю!
393 1214984
>>14916

>почему именно в таком порядке?


Потому что в соответствии со спецификацией.
sage 394 1215044
Javascript — костыльно-ориентированный язык программирования.
sage 395 1215046
3 главных принципа костыльно-ориентированного программирования, а именно инкостыляция, костылирование и поликостылизм, полностью поддерживаются Javascript.
396 1215049
>>15044
>>15046
это мемы из 2008-го?))
397 1215074
>>14984

>в соответствии со спецификацией.


Какая ещё спецификация, лол?
Ты ответь на вопрос, зачем ты взял в скобки 3 и 2?
sage 398 1215095
>>15074
Это что, троллинг тупостью? Иди нахуй, долбаёб.
399 1215107
>>15095
Всё ясно с тобой, школолошка.
Скорее бы у вас уже каникулы закончились.

Ещё и сажу прилепил в тематике, лол.
400 1215118
>>15074

>зачем ты взял в скобки 3 и 2?


Тебе ответили выше. Ты дурак?
Тебе показали порядок вычислений. Дечись.
401 1215138
Бля, чем бы такого написать, что бы один раз и потом вообще ничего не писать и получать пассивный доход тысяч 100 в мес?
402 1215140
>>15118
Это ты дурак, если не знаешь, что скобки - это ВНЕЗАПНО тоже оператор, и не можешь объяснить, почему там такой как ты скОзал порядок.
403 1215141
>>15140
Ты сумашедший, чувак.
404 1215142
>>15140

> не можешь объяснить, почему там такой как ты скОзал порядок


Тебе так же ответили, почему там именно такой порядок.
405 1215149
>>15141

>сумашедший


Не надо лести, обычный дебил.
Как и принято среди веб-дегенератов (вас).
406 1215155
>>15142
И почему же?

>>15149
Вот только я знаю ответ, а ты нет. И кто из нас после этого дебил?
Люблю спрашивать на собесах этот вопрос, и всякие вкатывальщики начинают бубнеть под нос что-то несуразное - ведь они учились по кантору и кокодемии, где их учили формочки шлепать, а как устроен язык они не знают.
sage 407 1215164
>>15155
На каких собесах, шизик? Ты опять таблетки забыл принять? Ты же, блядь, унитазы чистишь в Макдаке!
408 1215165
>>15155

>как устроен язык


Как говно.
И хорошо что хотя бы не как goвно.
409 1215256
Нужно расширение для jq ищущие ближайший подходящий элемент, не .parent(), .children(), .closest(). А именно ближайший подходящий, поебать на удаление, пусть он хоть на другом краю DOMа лежит, чет загуглить не получается, я хз как такую годноту не заделали, а самому писать влом.
410 1215299
>>15256
Годнота довольно сомнительна, мне кажется.
И операция очень затратная была бы.

У тебя, скорее всего, что-то не то с постановкой задачи или со структурой дома.
411 1215306
>>15138
Борду
люблю.jpg579 Кб, 850x1200
412 1215327
Готов отсосать у каждого в этом треде. Обожаю крутых программистов.
413 1215346
>>15306

>и потом вообще ничего не писать и получать пассивный доход


>пассивный доход



Перекатиться в гей-шлюхи, очевидно же.
sage 414 1215363
>>15327
>>15346
-> /ga/

Зарепортил
415 1215370
Не могу загуглить вопрос, не получается сформулировать просто. Нужна помощь.

Скажем есть строка, пускай будет 'Hello, World'. Есть еще одна строка, пускай будет 'Hello, Wo'. Каким образом мне найти оставшуюся часть второй строки до первой? То есть rld?

Спасибо.
416 1215374
>>15370
Пока курил придумал, что если тупо взять из разности длинны строк индексы и найти что надо? Не совсем хуйня получается?
417 1215377
>>15374
Это если ты 100% уверен, что одна строка является началом другой.
Т.е. надо добавить проверку sA.startsWith(sB).
418 1215384
>>15377

>sA.startsWith


Вот за это спасибо. То, что надо!
419 1215396
>>15370
О регулярках не слышал?
>>15299
Написал рекурсивный обход вверх, ограничил 5ю уровнями, чтоб не сильно много жрало.
420 1215490
Господавры, помогите пожалуйста сделать так, чтобы первый пункт меню (Меню1) была активной по умолчанию.

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

с меня сотни нефти
421 1215495
>>15490
добавь к меню1 класс menu-item--active, а в стилях пропиши .menu-item--active .submenu {display: block}
422 1215530
>>15396

>О регулярках не слышал?


Слышал конечно. Но изучить как-то руки не доходили. Охуенная оказывается вещь, строку блядь менять можно как хочешь. на хую прямо вертеть!
423 1215555
>>15495
Спасибо большое. Немного по-другому сделал.
Не подскажешь как сделать так, чтобы меню не пропадало, когда кликаешь вне меню?
424 1215561
>>15555
Попробуй запихнуть в условие кликера на документе что-то типа target.id! = 'nav' или target.tagName != 'body'
425 1215575
>>15561
Так?
document.getElementById('nav').onclick= function(event) {
var target = event.target; // где был клик?
if (target.className == 'menu-item' && target.className!= 'result') {
var s=target.getElementsByClassName('submenu');
closeMenu();
s[0].style.display='block';
}
}

не выходит что-то.
426 1215590
>>15363
остальные поддержали
427 1215621
Можно в реакт завязывать начальное состояние state, на получаемых props?

state = { value: this.props.value }
428 1215622
>>15621
дополню: через какой хук теперь отлавливать новые props, если componentwillreceiveprops обьявили устаревшим?
431 1215629
>>15627
>>15628
Спасибо братцы, в api reference не углублялся до этих пор
432 1215700
>>15575
Не, в другой кликер, который на документ вешается
433 1215701
>>15629

>componentwillreceiveprops обьявили устаревшим?



Да, реакт ни разу не opinionated, lol.

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

Типа - да, надо дрочить вприсядку, но зато ...

А на простого васю из мухосранска им глубоко поебать.
434 1215744
Можно ли в реакте мап в мапе вызвать для рендера, например, строки таблицы и ячеек?
{
rows.map((row) => (
<TableRow key={row.id}>
{
row.map((cell) => (
<TableCell>{cell}</TableCell>
))
}
</TableRow>
))
}
Так делаю, но выдает row.map is not a function.
435 1215751
>>15744
У тебя row - массив?
436 1215755
>>15751
Точно, там объект.
437 1215768
Можно ли писать функции в stateless компонентах? Если нет, то как тогда поступить, если нужна функция, например, для форматирования вывода?
438 1215774
>>15768
Stateless компонент - это функция.
Может ли быть функция в функции?
Конечно, может.
Вот прямо только что такую написал, и именно в функциональном компоненте, лол.

>>15744
Тэги JSX - это вызовы функций, возвращающие значения. Аттрибуты = параметры.
Исходя из этого и определяется, что можно, что нельзя.
439 1215780
>>15774
Ну т.е. это не говнокод и все так делают?
440 1215781
>>15780
Да, так и делают.

Но, в твоём случае row.map((cell) => ... выглядит как-то сомнительно. Не в смысле говнокода, а вообще. Хотя, выше уже написали.

Вообще - посмотри примеры в интернетах, их же полно.
441 1215782
>>15781
Я про функции в функциях
442 1215784
>>15782
Это не просто не говнокод.
Это ровно наоборот, лол.

Особенно, если ты используешь лямбды (толстые стрелки). Только нужно иметь в виду, что у них нет своего this.
443 1215787
>>15782
Вот тебе, кстати, пример (хотя, немного на другую тему):

const add = a => b => c => a + b + c;

Это функция - функция - функция.
В middleware к редуксу такие вещи можно увидеть, например.
В данном случае - это каррированая функция сложения трёх аргументов.

Вызывается так:
const result = add(1)(2)(3);

Или так:
const add1 = add(1);
const add1and2 = add1(2);
const result = add1and2(3);

Т.е. можно получать промежуточные специализированные варианты.
Напоминает наследование в ООП.
444 1215794
>>15787
Он же не про это. Он в своих функциональных-компонентах хочет просто обьявлять функции-помощники. Он не собирается их возвращать. Он хочет их использовать просто как использует методы в классах-компонентах
Я сам правда не знаю принято ли так делать, или лучше функции обьявлять не в самом компоненте, а вне его.
445 1215798
>>15794
Я же написал - это пример немного на другую тему.
А перед этим ответил ему, что да, так делают.
И это не говнокод.

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

Смысл того, что я хотел сказать, в том, что функция в JS - это ровно такой же объект, как число или массив.
Ты же используешь числа в функциях?
Ну и вот.
446 1215802
Какие существуют игровые движки на основе verlet.js?
447 1215817
>>15787
Бля, какой же уебанский стиль.
448 1215821
>>15817
А как бы ты хотел это записывать?

Нормальный стиль, лучше не бывает, на самом деле, ты просто не привык, лол.
Ты пытаешься в голове что-то наворачивать поверх этих стрелок, в то время, как их надо просто читать буквально.
449 1215850
Парин, я умираю, я не могу, как заставить говно работать с нескольики вебсокетами? Пилю парашу webgl С# и не могу сука сделать номральное взаимодействие с вебсокетами. Ну с одним заработало, а с нескольими хуй, я скачал jslib, но что там внутри не могу понять. Почему-то SocketCreate возвращает всегда ноль, и происходит какая-то поебата, не могу номрально разделить. В общем может кто поможет или ссылчоек на готовыйе примеры накидает. Пиздец.

https://github.com/realtime-framework/unity3d-plugin/blob/master/lib/WebSocket.jslib
450 1215905
>>15817
Это просто дерьмовый упрощенный пример прямиком из статеек "ФП в жисе это круто мне так сказали но на функциональных языках я не писал", вот он и нечитабелен.
>>15787
Это называется композиция и в ООП она прекрасно применяется.
451 1215994
>>15821
Ох ебать, маня прошла пару курсов говнокекслета и всем поясняет про то как надо читать и воспринимать блять.
452 1216053
>>12010
Перекатиться из мертворожденного языка для смузихлебов в один популярнейших и востребованных языков мира.
Все правильно делает.
453 1216056
Какой же говеный тред.
454 1216064
>>15994
Нихуя себе, у тебя дар телепатии, лол.

>>15905
Это не называется композиция.
И что там не читабельно, лол?

Дети, идите на хуй в /бэ.
455 1216183
Подскажите, где я обосрался?
Есть веб-приложение на чистом реакте, в нем - корневой компонент, как полагаться - es6 class.
У этого класса есть метод, componentWillMount, где я открываю вебсокет. JSON с сервера обновляет стейт, что позволяет отображать данные в реальном времени, а JSON с клиента обновляет определенные данные на сервере. Всё работает, но только на десктопе. В мобильном браузере - не работает ws. При том что поддержка ws у него есть. react-websocket не подходит, т.к. нужна двухсторонняя передача данных, а у него нет метода send, AJAX параллельно сокету выглядит костыльно.
456 1216186
>>16056
Какой язык, такой и тред.
457 1216197
>>16056
>>16186
Сам написал, и сам ответил?
458 1216201
Пойдет ли моча и чай для юнит тестов под ноду?
459 1216202
>>16201
Если у вас не пишут тесты нахрена тебе это надо? Ведь речь идет о вебне?
460 1216204
>>16202
Да я для своего проекта. Слишком много говна накопилось чтобы руками тестить
461 1216205
>>16202
Нарыл гайд, но там еще дженкинс, а он мне пока нах не нужен. Думаю как этот индус сделать.
https://medium.com/prismapp/10-steps-how-to-automate-your-api-testing-effectively-af866fba942f
462 1216228
приветствую господ программистов!!
подскажите плиз ньюфагу - как перемножить два больших числа так, что бы в результате не было что то типа такого 1.7588313343976082e+21 а было бы само число
его ведь можно как-то преобразовать, правильно? но как??
463 1216230
>>16228
num => Math.floor(num*1000)/1000.
464 1216232
>>16230
такой же результат получается - 1.7588313343976082e+21
что я делаю не так?
465 1216239
>>16228
Это троллинг тупостью?
466 1216276
>>16228
Используй сторонние библиотеки, например, https://www.npmjs.com/package/big-integer
14963021184540.jpg55 Кб, 510x604
467 1216284
Сука почему моча такой уебищный фреймворк для тестов. Пиздец просто! Почему вместо вот этого
[CODE]
describe('GET /user', function() {
it('respond with json', function(done) {
request(app)
.get('/user')
.set('Accept', 'application/json')
.expect('Content-Type', /json/)
.expect(200, done);
});
});
[/CODE]

не сделать json в котором описать все тесты, типо:

[CODE]
{
"name": "test login",
"main": "server.js",
"tests": {
"test0": "foobar",
"test1": "foobar",
"test2": "foobar",
"test3": "foobar",
"test4": "foobar",
"test5": "foobar",
"test6": "foobar",
"test7": "foobar",
"test8":"foobar"
},
[/CODE]

где foobar это конструкция вида
[CODE]
{
"request": "localhost:8080/api/login",
"data": {
"login" : "foo"
"password":"bar"
},
"headers": {...},
"positivecase": {...},
"negativecase": {...}
}
[/CODE]

Скорее всего проебусь с разметкой, но суть вы поняли. Может в треде есть дохуя опытные автотестеры чтобы пояснить мне нубу, почему моча такая какая она есть?
14963021184540.jpg55 Кб, 510x604
467 1216284
Сука почему моча такой уебищный фреймворк для тестов. Пиздец просто! Почему вместо вот этого
[CODE]
describe('GET /user', function() {
it('respond with json', function(done) {
request(app)
.get('/user')
.set('Accept', 'application/json')
.expect('Content-Type', /json/)
.expect(200, done);
});
});
[/CODE]

не сделать json в котором описать все тесты, типо:

[CODE]
{
"name": "test login",
"main": "server.js",
"tests": {
"test0": "foobar",
"test1": "foobar",
"test2": "foobar",
"test3": "foobar",
"test4": "foobar",
"test5": "foobar",
"test6": "foobar",
"test7": "foobar",
"test8":"foobar"
},
[/CODE]

где foobar это конструкция вида
[CODE]
{
"request": "localhost:8080/api/login",
"data": {
"login" : "foo"
"password":"bar"
},
"headers": {...},
"positivecase": {...},
"negativecase": {...}
}
[/CODE]

Скорее всего проебусь с разметкой, но суть вы поняли. Может в треде есть дохуя опытные автотестеры чтобы пояснить мне нубу, почему моча такая какая она есть?
468 1216300
>>16284
Возьми и напиши сам, увидишь к чему приведет.
469 1216302
>>16300
Да вот уже рука порывается, но ради своего проекта не хочется еще и движок для тестов писать 3 дня. Легче уже руками протестить, написав тест дизайн. Но бля... Че за черт эта моча?
sage 470 1216305
>>16302
Не нравится — пиши своё, питух.
разработчик Моки
471 1216306
>>16284
Мока лишь среда тестирования, она условно говоря проходит по файлам, ищет тесты среди них и запускает, а за синтаксис обычно отвечают всякие там Chai(или supertester судя по тому что ты скинул)
472 1216309
>>16305
Мочехлеб, плз.
473 1216311
>>16309
Не моча, а мокко.
474 1216312
>>16306
Т.е отдельно автотесты я написать не могу? Только в код интегрировать? А минифицировать потом файлы для прода можно будет? Просто ну пиздец если еще и тесты в коде будут, то получится гигант просто.
sage 475 1216313
>>16312
А ты думал, что в сказку попал??
476 1216314
>>16311
Да понятно как оно по английски читается, но людям не англоговорящим сочетание ch читается как "ч" интуитивно.
477 1216316
>>16313
Не зря я отдельную ветку завел... Ну пиздец теперь... А где есть документация этого чуда? Просто на их сайте нет. Да и туториалы всяких васянов читать себе дороже
478 1216319
>>16314
Оно ещё и как "хэ" читается, и как "шэ".
479 1216321
>>16319
Да я то знаю, я говорю за большинство, просто у меня в детстве была чашка с принтом "mocha". Пока английским не занялся в плотную, думал что это чашка для мочи
480 1216323
>>16312
Тут недавно был чувак, который яростно топил за тесты в js.
Перечитай прошлый тред, там много годных советов было.
481 1216325
>>16323
Ок. спс
482 1216329
>>16232
А, так у тебя число в 21 степени, оно хуй у тебя запишется просто так.
483 1216384
https://ideone.com/fynakg
Как оно работает, может кто-нибудь тугому объяснить? Вот мы задаем значение num для функции, а как и откуда потом появляется acc, как на 7 строчке оно работает если не вводили никаких acc? С рекурсией все было намного понятнее.
484 1216391
>>16384
Так это и есть рекурсия.
485 1216393
>>16384
acc - это параметр внутренней функции iter.
Сначала iter вызывается с параметром 2.
А потом - рекурсивно, с уточнённым параметром.
Пока не будет достигнуто одно из условий выхода из рекурсии (if'ы).

Имя переменной acc - подразумевает аккумулятор (в рекурсивных функциях).

num берётся из внешней функции.

Тебе надо разобраться с замыканиями (closure) и рекурсией.
486 1216396
>>16393
acc - это параметр внутренней функции iter, а для чего ему параметр 2?
https://jsfiddle.net/q6v79gnu/8/
Вот меняю параметр и ничего не меняется, почему так, зачем он? в бесплотных на хеслете говорят что итеративное решение
487 1216398
>>16393
Например, надо найти наименьший делитель для числа 5. Это будет само число 5, естественно.

Тогда будет такая цепочка вызовов:
iter(2){iter(3){iter(4){iter(5)}}}

Слово return я убрал, оно подразумевается.
Т.е. iter(2) вернёт результат _позже_ всех, когда все внутренние вызовы вернут результаты в обратном порядке.
Т.е., число 5 будет передано по цепочке вызовов наверх.
488 1216402
>>16396
2 - это то, с чего начинают искать ответ.
Это не параметр, а значение параметра.
Можешь хоть с 100 начинать, только вот, что ты найдёшь таким образом?
489 1216404
>>16396

>говорят что итеративное решение



Нет.
Это рекурсия - функция вызывает сама себя с новым значением параметра.
Другой вопрос, что рекурсия тут простейшая, и её можно просто заменить на цикл.
490 1216407
Всё ребята я разобрался, спасибо за такой быстрый фидбек!
491 1216478
Тупой нубский вопрос - допустим есть такой класс:

class myClass { constructor(a){ this.a = a; this.b = this.a*2;} }

let obj = new myClass(5);
obj.a выдаст в консоли 5, а obj.b выдаст 10

но при этом если присвоить
obj.a = 6
то obj.b по-прежнему будет показывать 10!
why?
как эту срань перерассчитать?
492 1216486
>>16478

>как эту срань перерассчитать?



Если тебе нужно именно это, надо делать геттер (гугол в помощь).
Или просто метод getB() {return this.a * 2}
493 1216487
>>16478
Что тебя смущает? То, что значение переменным присваивается при создании объекта, или то, что b хранит значение переменной, а не ссылку на a?
494 1216495
>>16487

>что b хранит значение переменной, а не ссылку на a


Да, вот это вот и смущает
495 1216498
>>16495
Насколько я знаю, в жс ссылочное присваивание идет только к объектам и функциям.
496 1216502
Ребята, потянет ли какое-нибудь из этих говн Jetbrains WebStorm без тормозов? Или без 16 Гб оперативки можно даже не мечтать?
497 1216505
>>16487
>>16495
Дело тут совсем не в том, ссылка это или нет.
А в том, что _выражение_ вычисляется один раз в конструкторе, при создании данного объекта.

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

Короче, пойми разницу между значением и выражением, и т.п.
498 1216511
>>16502
SSD нужно ставить.
И Core i5 + 8 Gb.

Алсо, ноутбук для серьёзного кодинга - это не очень хорошая идея.
Мобильный проц он такой мобильный, лол.
Или ты думаешь на нормальном процессоре полкило меди просто так висит?

Не надо смотреть на хипстеров в кофешопах, это просто картинки.
А суровая реальность - сурова.
499 1216517
>>16511
Охуеть, я-то думал, что вы будете отвечать, мол, конечно, потянет, это же Вебсторм, а не Far Cry 5. А тут вон всё как печально. :(
500 1216520
>>16505
Да, разобрался, спасибо. Так и пришлось мутить сеттер, чтоб он "переустанавливал" заново нужные мне поля
501 1216524
>>16511
Посмотрел у себя.
На десктопе i7 3770K + 16 Gb + SSD Samsung 850 Pro 256 Gb.

Запущеа идея, в ней открыт большой java проект.
И запущена виртуальная машина VmWare с сервером.
Памяти израсходовано 5.1 Gb.
Всё работает быстро и хорошо.

JavaScript побольше отожрал бы, конечно.
Но не думаю, что намного.

Короче - ssd + проц решают.
502 1216529
>>16520
Можно и сеттер.
Если читаешь много раз, а пишешь мало.
Но, без нужды лучше лишнее состояние не хранить.

>>16517
Он потянет.
Особенно, если ты поставишь любой SSD.
Я же говорил не о "потянет", а о получении удовольствия.
503 1216532
>>16529
И да, большой экран.
Минимум 24" full hd.
504 1216543
Кто-нибудь знает, как правильно деплоить приложения с помощью PM2?

Под правильно я подразумеваю, что установка зависимостей и конпеляция должны происходить на билд-сервере. То, что есть в документации PM2 — это какой-то пиздец: git clone, npm install, grunt dist выполняется на целевом сервере.

Очевидное решение — копировать билд-артефакт с помощью rsync и вызывать "pm2 reload" через ssh, но вроде как PM2 уже предоставляет средства удаленного деплоя, так что странно им не воспользоваться, если он настраивается как надо.
505 1216545
>>16502
А нужен ли тебе жырный вебшторм, если в VS Code есть все необходимое?
14463967080240.png1,9 Мб, 1920x3131
506 1216562
сильно начинающий вопрос
Привет анон! подскажи пожалуйста по нескольким вопросам.
Есть JS динамически генепирующий кучу контента типа статей
Есть директория к кучей изображений и текстов .
Я к сожалению пока пишу только на JS и то новичок , поэтому не придумал ничего лучше чем забирать тексты из JSON ajax запросом и для каждой картинки прописывать URL и высоту- ширину . В общем кошмар .

Задача "сгенерировать HTML считывая картинки и тексты из файлов" вообще решается только на JS с jquery ?
Если нет скорее всего нет какой самый простой бекенд для этого нужен. Может джанго или rails
507 1216602
Аноны, че-то я туплю, как мне нормально сделать, чтобы в компоненте реакта одно поле стейста подсчитывало длину массива в другом поле? И нужно, чтобы она пересчитывалась каждый раз при обновлении массива. С меня как обычно.
508 1216603
>>16602

>стейта*

509 1216605
>>16602
componentDidUpdate
510 1216613
>>16605
Попробовал, но он срабатывает два раза: один раз с предыдущей длиной, второй - с новой. Так и должно быть?
511 1216629
>>16613
А массив у тебя как в компонент попадает?
512 1216650
Возможно ли вывести request headers как в дебагере во вкладке Network?
513 1216655
>>16602

>одно поле стейста подсчитывало длину массива в другом поле?



Спрашивается, нахуя?
Вычисляй вычисляемое прямо в render() или где ты там его используешь.

Один из хороших принципов программирования - не храни лишние состояния без нужды.
1.jpg8 Кб, 233x217
514 1216656
Писал я, короче, маленькую йобу и дописался до того, что мне нужно из одного компонента поменять значение стейта другого. Естественно, все без редакса. Есть какой-то костыль для такого?
515 1216658
>>16656
Lifting state up + forwarding refs.
516 1216660
>>16656
Если они логически не связаны или общий родитель слишком далеко, то создай простенький стейт контейнер сам, это не сложно. Необязательно глобальный.
517 1216665
>>16658
А рефы тут причём?
Общее состояние вынести наверх, в общий компонент, да.
Если общего компонента нет - создать фейковый.

В процессе можешь поймать себя на мысли, что уже пишешь редукс. В этот момент надо перестать - он уже есть готовый, лол.
518 1216668
>>16064
Практический смысл этой хуйни - именно композиция и ничто иное.
519 1216682
>>16668
Какая, блядь, композиция?
Чего и с чем?

Набери в гугле functional composition и почитай.
520 1216691
>>16682
Шизоид, не позорься хоть.
521 1216695
>>16682

>Шизоид


Это ты меня, типа, оскорбил, лол?

Аргументы будут?

У тебя очевидные проблемы с пониманием смысла слова "композиция" (и слова "шизоид", кстати).
522 1216705
Можно как-то анимировать закрытие модалки на реакте? Появление я сделал, а вот закрытие по кнопке хз.
523 1216719
>>16502
А почему у тебя на втором скрине цифра 8 отфотошоплена?
524 1216736
>>16502

> Jetbrains WebStorm


emacs js2-mode, нахуя тебе это говно-ide?
525 1216737
>>16695
Ну ты реально шизоид, сам себе отвечаешь.
526 1216758
>>16737
Ну, это аргумент, конечно.
527 1216765
>>16719
Потому что изначально там стояло 4 Гб, а я добавил ещё одну планку на 4 Гб.
528 1216912
Кто то там говорил, что я неудачник. Тот кто говорил - засунь себе свой поганый язык в анус, неудачник. У меня всё ништяк. Продолжаю саморазвитие, обретаю новые вещи. Успех, удача со мной всегда !!! Строю новые планы на будущее. (А ты продолжай мечтать об фирме своей в москве, о том как ты будешь там директором. Не надейся, мудак деревенский))))
изображение.png244 Кб, 500x300
529 1217214
Только что закончил читать первую часть кантора. хочется попрактиковаться и написать что-нибудь длиннее 100 строк. Где можно стырить практические задания без знания ДОМа?
image.png300 Кб, 1920x1080
530 1217235
>>17214
кодворс мб

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

Подскажите, есть ли реализации лучше и почему моя может быть говном?
531 1217240
Когда реакт сдохнет?
532 1217243
Можно как-нибудь сделать так, чтобы функция byExtension возвращала значение resolve из промиса?

Написал промисификацию readBook через асинхронный createReadStream. И вот теперь не знаю, как сделать ее синхронным. А это один из кусочков условия по расширению, и переписывать все из-за промиса не хочется.

[code]
let byExtension = function (filePath) {
var ext = path.extname(filePath);
if (ext === '.json') {
return JSON.parse(fs.readFileSync(filePath));
}
else {
return readBook(filePath).then(function (value) { return value });
};
};

console.log(byExtension('./example1.xlsx'));
[/code]
533 1217253
>>17240
вчера
534 1217255
>>17243
а сейчас что возвращает, ыт же зэн написал
535 1217257
>>17255
Он возвращает состояние Promise { <pending> }

Пытался через async/await. Тоже самое.
536 1217261
>>17257
хуй знает.

>твое лицо, когда кодишь на реакте, а не на жаваскрипте

537 1217318
Вопрос по DOM: как получить xpath от одного элемента до другого. Например, от инпута до связанного с ним через for лейбла? Чтобы на выходе получить что-то вроде ./../../div/huina/malafia/label
538 1217338
>>17318
querySelector
539 1217339
>>17235
По-хорошему разлогинивать надо на сервере. Разлогин по таймауту - это так-то для безопасности придумано, а в твоем случае если кто-то таки угонит сессию, то он совершенно точно позаботится над тем, чтобы твой клиентский код по разлогину не сработает.
Ну и

>mousemove


>scroll


ты хоть debounce на это дело повесь.
540 1217345
>>17338
Квериселектор просто отбирает элемент по селектору. У меня уже отобраны элементы и нужно найти xpath между ними.
541 1217348
>>17339

>debounce


От маузмува лисенеры же все равно будут лисенить, запросов будет столько же, и одно присвоение переменной дела не сделает, разве нет?
618015htmlm70404ffe.png4 Кб, 874x346
542 1217352
ПЕРЕКАТ

>>1217351 (OP)
>>1217351 (OP)
>>1217351 (OP)

ПЕРЕКАТ
543 1217436
>>17235
Ебать меня залепило на кодворсе. Чому я раньше его не юзал. Спасибо.
image.png321 Кб, 1920x1080
544 1217549
>>17339
Сделал, как ты сказал, вышло круто!
545 1218327
Учусь погромировать на freecodecamp, дошел до легких алгоритмов, все довольно быстро решил, а с этой тупяк, помогите(только не решайте за меня, дайте наводку)

Условие задачи:
Return the lowest index at which a value (second argument) should be inserted into an array (first argument) once it has been sorted. The returned value should be a number.

For example, getIndexToIns([1,2,3,4], 1.5) should return 1 because it is greater than 1 (index 0), but less than 2 (index 1).

Likewise, getIndexToIns([20,3,5], 19) should return 2 because once the array has been sorted it will look like [3,5,20] and 19 is less than 20 (index 2) and greater than 5 (index 1).

Как отсортировать массив - я узнал сразу - для этого уже есть встроенный метод sort. Но как сравнить элементы и найти приближенное число? Чёт не пойму.
546 1218704
Привет, друг анон. Объясни, почему не работает этот код? (не ленись, там две строчки)
https://codepen.io/anon/pen/EROKMw

спасибо.
548 1219983
>>18704
>>18712

жквери забыл подключить
SAGE 549 1220034
>>06861
Для маленьких проектов подходит тот "фреймворк", у которого больше комьюнити.
Вкатываясь в новый проект на реакте, в первую очередь ты получаешь готовые свистелки-пердерлки с гита на все случае в жизни, а на Vue тебе придется стать инжинером велосипедостроителем
SAGE 550 1220035
>>06904
Начни с того, что подумай о жизни
Тем ли ты вообще занимаешься?

Динамическая типизация - это манна небесная, это клиллер фича JS'а
SAGE 551 1220042
>>08712
Хуя ты настрочил, можно было ограничиться этой строчкой

>airbnb

552 1220868
>>19983
ха ха ебать я чёрт. спасибо братуха
553 1220919
пацаны, как поставить бесконечный луп сюда? чтобы текст fadeout & fadein бесконечно
https://codepen.io/anon/pen/PaVOxM
спасибо.
554 1221056
>>20919
отбой
15045600932920.png1,1 Мб, 954x968
555 1224683
Анон , Я вот только поставил Node , начал изучать , подскажи какой самый простой способ работать с изображениями?
Нужно все парсить все изображения из определенной директории , собирая их url , размеры и тд .
В целом просто нужно выводить изображения из папки в DOM
Тред утонул или удален.
Это копия, сохраненная 26 августа 2018 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски