Этого треда уже нет.
Это копия, сохраненная 24 февраля 2020 года.

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

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
JavaScript.thread = Number(`151`); // thesweetfeed.com edition /js/ 1562152 В конец треда | Веб
Предыдущий: >>1552228 (OP)

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Для программирования на ХТМЛ https://codepen.io/pen/
Для Ноды с консолькой https://repl.it/languages/nodejs
Для фреймворков https://codesandbox.io/
Залить, задеплоить страничку, сервер, контейнер https://zeit.co/now

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

Если рассчитываешь получить дельный ответ, формулируй правильно вопрос:

У меня есть проблема\задача (А) %текст-ошибки или задача%. Я пытался решить ее так %кусок-кода-опционально% (Б), у меня не вышло %текст-ошибки%. Я погуглил, почитал документацию и попробовал сделать так %кусок-кода-%(В), но получаю ошибку (Г).

Сделай песочницу по ссылкам выше для ясности и удобства. Если никогда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
2 1562196
Не вкатился в прошлом году, вкачусь сейчас.
15651886144211.jpg57 Кб, 604x403
3 1562197
С новым годом анончики!
Спасибо вам за все ответы на мои тупы вопросики.
4 1562367
С прошедшими вас баки!
5 1562521
Аноны, подскажите, как за две недели подготовить себя к собесу на позицию джуна? Что посоветуете?
6 1562547
>>62521

>как за две недели подготовить себя к собесу на позицию джуна?


Если совсем нулевой, то никак.
7 1562556
>>62521
Какой у тебя бэкграунд? Насколько знаешь ванилу, что по либам/фреймам/пет проектам?

В общем случае learn.javascript от корки до корки + гугл "вопросы javascript собеседования" (вместо JS может быть React, SQL и тд, в зависимости от позиции).

В целом вопросы на собесах обычно очень типовые, могут посадить код писать на бумажке или на компе. Если это твой первый собес, у меня для тебя не самые хорошие новости, но шансы есть всегда.
8 1562564
>>62547
Не, не нулевой.

>>62556
Из проектов доделываю мувисёрчер на ваниле и на Реакте писал туду и минипроект для универа.
Да, собес первый
9 1562628
>>62564
Ну тогда в общем-то всё, как я и написал выше. Если вакансия фронта, то в разной степени соотношения будут спрашивать ванилу, вёрстку и что-то из того, что используется на проекте, может быть и "общее" вроде React/Redux/Saga. Могут что-то про вебпак и бабель. Смотри на ютубе видосы про собесы на JS. Ну и самое главное: собес - это совсем не то же самое, когда сидишь дома уютно перед своим компом. Нервы будут, и не факт, что ты идеально будешь выдавать даже то, что на самом деле знаешь.
10 1562692
Как же я ЛЮБЛЮ БТС❤❤, вот они
слева направо: Намджун, Чонгук, Чингачгук, Гойко Митич
Люблю вас❤❤❤
CmBIv2B9XQA.jpg36 Кб, 694x456
11 1562734
Почему в консоли браузера и онлайн эдите разные результаты? И не в первый раз такое уже
image.png3 Кб, 180x111
12 1562798
13 1562925
>>62798
И что, моя опера барахлит?
14 1562937
>>62925
Консоль то ты где открывал? На сайте codepen? Если да, то неудивительно почему результат такой.
15 1562963
>>62628
Спасибо анончик
16 1562987
>>62937
Почему не удивительно?
17 1562990
>>62987
Потому что сайт может влиять на вывод в консоль, codepen это как раз тот случай.
18 1563172
>>62990
Не, я с пустой странички запускал
19 1563240
>>62734
1) ты, надеюсь, в курсе, что у тебя функция и её исполнение тут вообще лишние.
2) это особенности работы консоли, тк лог ничего не возвращает
20 1563264
Хочу хорошо изучить браузер: девтулзы, пейнт, лэйаут, ивентлупы-залупы. Можете посоветовать какие-то годные курсы/ресурсы для изучения этого всего?
21 1563284
>>63264
Какой браузер то? Открываешь документацию любого понравившегося и читаешь.
22 1563292
>>63284
Все, хочу процессы построения страницы понять и все, что происходит у браузеров под капотом. DOM, CSSOM, как хтмлька рендерится, вот это всё. Мудаки из гугла понаписали кучу гайдов на эту тему на основу старой девтулзы, затем изменили её до неузнаваемости и забили хуй. Хотелось бы найти что-то вроде гугловских гайдов с web fundamentials, но с современной девтулзой.
23 1563295
>>63292
Прочитай старую, а об изменениях из пачноутов узнаешь. По сути поменялся только интерфейс.
24 1563296
>>63292
Ну и с такими вопросами тебе не в js надо, хром не на нём написан, а на плюсах.
25 1563466
Хуйню какую-то обсуждаете.
Вот настоящая проблема:
1. есть говно мамонта в виде хуево написанного приложения на angular 1.6.
2. Поверхностные знания в angular и js в целом

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

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

Какие подводные? Был у кого-то подобный опыт?
EAUyXqlXkAIfJqS.jpg41 Кб, 769x960
26 1563474
>>63466
Как typescript и babel связаны? Тайпскрипт имеет свой собственный компилятор. Это будет либо awesome-typescript-loader либо ts-loader. Они делают тоже самое, что и babel. Для поддержки типов древнего ангуляра ставишь npm пакет @types/angular

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

hasLayout, presto, windows safari - all those moments will be lost in time like tears in rain.
27 1563479
>>63474

>hasLayout, presto, windows safari


ie6
28 1563484
>>63479
hasLayout это и есть про ie6-7.
Это свойство в свое время было даже выпилено из официальной документации МС что бы скрыть весь тот пиздец, который творился в их коде. И сейчас упоминания о нем можно найти только в архивах мамонта. По версии МС такого скрытого свойства никогда не существовало.

Методом обратной разработки и анализа была составлена следующая картина: когда стали выходить новые стандарты индусам была дана задача в кратчайшие сроки написать новый парсер вместо того говна, что тянулось еще со времен мозаика. Однако, судя по всему, все сроки были проебаны, потому они нашли очень кардинальное решение - они втулили в шестого ослика сразу два парсера - старый и новый, который не успели дописать к срокам. свойство же hasLayout определяло, какой из движков будет отрисовывать элемент на странице. Естественно, что это все на практике вылилось в лютейший пиздец и фикс багов ие6 мог занимать по времени столько же, сколько изначальное написание верстки/скриптов. А все потому, что явно его задать было невозможно, никакой документации по нему не было. Потому все определялось методом проб и ошибок и фиксилось откровенными хаками.
29 1563490
Кто из вас вкатывался в поддержку опенсорсных проектов? Как вкатывались? Как ощущения? Помогает качнуть скилл?
30 1563563
Аноны, мучаюсь уже несколько часов и не могу понять в чем проблема. Есть пикрелейтед 1 и 2. Я абсолютно не понимаю : почему у меня работает только класс контейнер? Т.е. все остальные классы он просто игнорирует, даже если я захочу бэкграунд перекрасить в красный.
31 1563564
>>63563
className - свойство dom узлов. Остальные элементы у тебя там это реактовские компоненты, они просто принимают пропс className и ничего с ним не делают, так как ты для этого никакой логики не написал.
32 1563571
>>63564
спасибо огромное. Удивительно, но я думал, что className зарезервированное слово и прописать этот атрибут компоненте равносильно, что прописать его обертке этой компоненты
33 1563583
>>63564
PS
Какой вариант лучше использовать 1ый и 2ой пикрелейтед , или 3ий или есть более верный вариант?
34 1563599
>>62734

> var


> function


Если ты не зеленый, то забудь про эту хуйню и пиши как нормальный человек на ES6.
35 1563606
>>63599
Это пример из книги Фримена
image.png15 Кб, 309x309
36 1563669
бесполезное говно. дискасс
37 1563671
>>63583
Нахуя ты это делаешь? Просто пиши ебучие классы строкой, между className={s.container} и className="container" нет абсолютно никакой разницы, только лишняя ебля в первом случае.
38 1563677
>>63669
В нормальных языках тебя компилятор пиздить будет.
39 1563688
>>63677
В нормальных явках точек с запятой в конце строки не ставят.
40 1563692
>>63688

>языках

41 1563695
>>63669
return
0

Интерпретируется как:
return;
0;

Если ты отказываешься от ; , то автоматически соглашаешься ебать себе мозг звучиванием всех случаев автоматической расстановки ;
42 1563722
>>63695
Я бы написал

return (
0
)

Ничего заучивать не нужно, всё интуитивно понятно
Screenshot from 2020-01-03 12-08-02.png84 Кб, 1165x787
43 1563726
>>62152 (OP)
призываю в тред опытного помидора @ юзаю Promise.all(stats); как на пикрелейте, сейчас в директории находится овер 20к файлов, т.е. если я правильно понимаю, для этих 20к файлов создаётся 20к промисов?

сомневаюсь что это норм подход, так как через время там будет 40-50к файлов, это не сломает Promise.all? У Promise.all есть вообще какой-то лимит на кол-во промисов?
44 1563732
>>63677
я сейчас только про js
45 1563734
>>63695
return 0

He?
46 1563739
>>63669

// консоль выдаст ошибку "Uncaught TypeError: 1 is not a function":

const huj = 1

(() => {

})()

// всё ок:

const huj = 1;

(() => {

})()
47 1563741
>>63669
Двачую
Бесят эти хуйни
>>63695

> return


> 0


Ну и зачем так писать?
Ты же не долбоеб?
48 1563742
>>63739
Кто вообще такие конструкции пишет? в трезвом уме
49 1563743
>>63739

> (() => {


> })()


Зачем тебе эту хуйню писать?
51 1563752
>>63739
Ещё такое есть

const op = 'pidor'

['h', 'u', 'i'].forEach(gavno => console.log(gavno))

Но я ни разу в жизни не использовал ничего из этих примеров
52 1563755
>>63741
Никто так специально писать, конечно, не будет, но поведение немного неожиданное. Если опечатаешься и не заметишь, то пиздец.
53 1563760
>>63755
Линтер поправит или варнинг в консоли
54 1563762
>>63739
Можно просто кодблок ебануть лол

const hui = 1

{}

(() => {
console.log('чё бля')
})()

// чё бля

Я бы очень сильно охуел, еслиб такое увидел в коде
55 1563770
>>63750
The key to understanding design patterns such as IIFE is to realize that prior to ES6, JavaScript only featured function scope (thus lacking block scope), passing values by reference inside closures.[8] This is no longer the case, as the ES6 version of JavaScript implements block scoping using the new let and const keywords.

Нах?
Screenshot from 2020-01-03 12-51-08.png49 Кб, 920x661
56 1563771
>>63762

>Я бы очень сильно охуел



у меня от тебя асинхронная рекурсия сломалась
57 1563775
>>63771
Ужос
58 1563781
>>63775
чому ужос, обычный код @ представь такое на коллбэках, вот это будет ужос
59 1563782
>>63726
У тебя stats массив объектов, а не промисов, никакой promise.all использовать не нужно, просто возвращай stats.
60 1563784
>>63782
какой ты умный)
61 1563795
>>63726

>т.е. если я правильно понимаю, для этих 20к файлов создаётся 20к промисов?


Да.

>там будет 40-50к файлов, это не сломает Promise.all?


Нет.

>У Promise.all есть вообще какой-то лимит на кол-во промисов?


Лимит там как и у любого массива - на сколько памяти хватит.
62 1563799
>>63795

> Promise.all is the best way to aggregate a group of promises to a single promise. This is one of the ways of achieving concurrency in JavaScript.


>achieving concurrency in JavaScript


>concurrency



хм, меня смущает, что эти 20к промисов обрабатываются параллельно, а там сервер, который в это время должен раздавать контент @ если там потом будет овер 50к параллельных тредов, то вангую сервер может покрашится
63 1563803
>>63799
Тогда проблема явно не в Promise.all, а в том, что ты за каким-то хуем даешь пользователю сервера возможность читать 50к файлов прямо с диска в каждом запросе, вместо того чтобы закешировать их или использовать БД как нормальный человек.
Screenshot from 2020-01-03 13-35-55.png10 Кб, 432x308
64 1563804
>>63782
если сделать как ты предлагаешь, то console.log(stats) покажет пикрелейт, там нужно юзать promise.all
65 1563807
>>63803

>даешь пользователю сервера возможность читать 50к файлов прямо с диска в каждом запросе,



лол не, это не пользователь делает, а таймер с этого скрина >>63771

смотри там строку 54
66 1563813
>>63799
Ты путаешь concurrency и parallelism. Всё это в ноде делается под капотом и ограничено количествами ядер процессора, т. е. нода не будет создавать 50к параллельных тредов, а будет поочередно их выполнять в n потоках где n это количество ядер процессора.
67 1563822
>>63671
я пользуюсь css module, есть какой-то их особый стиль записи или просто не надо ими пользоваться?
68 1563825
>>63813
Сейчас бы выполнять что-то на n-потоках на однопоточном движке.
69 1563828
>>63739
зачем IIFE в 2020 году использовать?
70 1563838
>>63825
Сейчас бы не знать о внутреннем устройстве ноды и что-то пукать в тред.
71 1563844
>>63828
>>63838

Пруфы, жду.
1evOcy9n3vslkDt0Mj8mBYw[1].jpeg72 Кб, 1024x468
72 1563856
>>63844
https://blog.risingstack.com/node-hero-async-programming-in-node-js/

>Also, as we have already learned in the first chapter, Node.js is single-threaded - from a developer's point of view. It means that you don't have to deal with threads and synchronizing them, Node.jsabstracts this complexity away.



Понял, чепуш? С точки зрения разработчика, который пишет код, она однопоточная, потому что у тебя нет инструментов для управления этими потоками.

И вот для закрепления:
https://itnext.io/multi-threading-and-multi-process-in-node-js-ffa5bb5cde98

>Node.js is a single threaded language which in background uses multiple threads to execute asynchronous code.

73 1563868
>>63856
На русском давай, кого наебать решил?
74 1563875
>>63868
Учи английский, может в следующий раз подумаешь перед тем как в штаны срать.
75 1563878
>>63875
Я тебя не оскорблял. Как нода может создавать n потоков, если количество потоков ограничено процессором ?
76 1563887
>>63856

>потому что у тебя нет инструментов для управления этими потоками


Так то есть. С версии 10.5.0 появились воркеры.
2019-01-18 161015.724834.jpg87 Кб, 768x768
77 1563903
>>63875

>Учи английский



двачую, после прочтения оригинальной статьи на энгельском, глянул релейт для фана https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Promise

с-Водка, что за бредятина, кек такое в присутствии иностранцев лучше не говорить вслух
78 1563905
>>63828

>зачем IIFE в 2020 году использовать?



очевидно же, что для асинхронной рекурсии как на скрине тут >>63771
79 1563920
>>63739
const so = 'see'

!function() {
console.log('pidor')
}()
80 1563924
>>63726
Тут мои догадки и никак эти слова не подкрепленны. Весь тред пишет про потоки. Я лично не знаю, что там творится в ноде и как это оптимизируется, но я уверен, что если у тебя есть возможность раздробить файлы и упорядочить их (на основании зависимостей) , то запускай хоть 10 нод. Нода это ближайший язык к клиенту и он предполагает, что если ты делаешь софт, то чтобы клиенту хватало ресурсов на свои перделки и это все при том что нода достаточно прожорливый язык.
81 1563927
>>63924

читни этого Анона >>63856

>internal c++ thread pool



вот это меня и беспокоит
82 1563940
>>63856
щас сделаем ассемблерную вставочку хуе мое и плов готов
83 1563960
>>63878
Также как и в любом коде, который использует многопоточность - проверяешь сколько у процессора ядер и в зависимости от этого запускаешь n потоков. И количество потоков не ограничено процессором, но безопаснее всего использовать столько, сколько у процессора ядер, для того чтобы избежать оверхеда который сведёт на нет все плюсы многопоточности. В нормальных ЯП ты можешь и 1000 потоков создать на одноядерном процессоре, вот только получишь от этого уменьшение производительности, а не прирост.
84 1563965
>>63927
Раз это делается под капотом, значит выбран самый оптимальный вариант, т. е. у тебя не будет создано больше потоков, чем есть ядер на процессоре который запускает ноду.
85 1563974
>>63965

там сервер раздаёт сайт, и каждый час чистит файлы @ в момент чистки файлов может не хватить потоков на две эти задачи, ферштейн?

я что то сомневаюсь, что в ноде есть такой механизм, который расставляет приоритеты для потоков, типо какие потоки нужно оставить для раздачи сайта с запросами в бд и рендером шаблонов, и какие для других нужд, типо скрипта для чистки каталога с файлами
86 1563990
>>63974
Тебе просто нужно почитать про многопоточность и асинхронность. Нет смысла пытаться объяснить тебе это на пальцах в двух постах, ты продолжаешь срать своими представлениями, основанными на фантазиях из манямирка.
87 1564016
>>63990
кек ну ты и олень, тебе ясно тут описали проблему >>63974, нахуй ты это всё высрал сейчас?
88 1564018
>>64016
Как ты определил проблему, если не имеешь ни малейшего представления о многопоточности и асинхронности? А также о том, как это реализовано в инструменте который ты используешь. Вот и выходит, что не проблему ты описал, а догадки своего манямирка.
89 1564025
>>64018

ой мудак. это что по твоему: >>63726 @ ещё разок: эта хуитка работает на сервере
90 1564061
>>64018

>если не имеешь ни малейшего представления о многопоточности и асинхронности



я читнул этого Анона >>63856 и тут https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop
91 1564193
>>63838
Нода - однопоточный кал с кооперативной многозадачность без SMP.
92 1564228
>>63887

>воркеры


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

>>64193

>Нода - однопоточный кал


Полностью солидарен.
93 1564267
>>64228

>эвент луп нельзя блокировать


А надо?
Надо глупой мартышке боевую гранату давать, потому, что ей игрушечная не нравится?
94 1564270
>>64267

>А надо?


В мире розовых пони не надо. На практике легко прострелить себе ногу херово написанным колбеком/await и огрести блокировку.
каджит.png230 Кб, 410x375
95 1564280
>>63695

>Если ты отказываешься от ; , то автоматически соглашаешься ебать себе мозг звучиванием всех случаев автоматической расстановки ;


Возможно, лет 10 назад. Но сейчас ты уже в здравом уме не сможешь написать так, чтобы что-то сломать. Твой пример - в 99 случаях сверх редкая опечатка, чем кто-то в здравом уме такое решит написать. Я уверен, что некоторые олдовые мидлы могут даже не подозревать, что можно так написать.

Ну а вот это
const huj = 1;

(() => {

})()
тень прошлого. Самовызывающиеся функции описывают в книжках, курсах, но увидеть их можно лишь в очень старом коде. И это причина, почему их до сих пор описывают в книгах. Но никто ими уже не пользуется. + Тебя даже в этом треде за это обоссут.
96 1564288
>>64270
>>64280

кек одна история ахуительнее другой
97 1564302
>>64288
Govno is that you?
98 1564320
>>63583
Мне не нравится идея передачи стилей как пропсов. Каждый компонент должен сам отвечать за свою стилизацию. А внесение стилей на уровне тем должно реализовываться отдельно - класс на body, темы material ui или темы styled component, whatever. Но ни в коем случае не передавать стили между компонентами - это рушит принцип атомарности и автономности. Любой твой компонент должен с минимальными изменениями быть переставлен на новый проект, если таковое потребуется.
99 1564321
>>63669
Бля, возможно ты прав, но я с этой хуйни не могу слезть как с наркоты. Привычка выработанная годами. памагите.
100 1564323
>>63770
Вот этот прав. IIFE всегда было чисто костылем. В современных реалиях в них нет никакого смысла.

Хотя там есть такая хуита, что код в IIFE будет выполнен до всплытия (hoist). Но мне сложно представить, когда это может быть полезным, учитывая, что общая тенденция развития JS идет в сторону отказ от использования "преимуществ" всплытия (let, const, arrow functions).
101 1564328
>>64321
Просто берёшь и без задней перестаёшь их ставить, 2-3 дня и привыкнешь, всего-то делов.
102 1564346
Ебаная хуитка
103 1564349
>>64320
Да, ты прав. Я не подумал об этом >Любой твой компонент должен с минимальными изменениями быть переставлен на новый проект, если таковое потребуется.

Но я все же уточню про >Каждый компонент должен сам отвечать за свою стилизацию

Если у нас есть грид и мы хотим объяснить компонентам, как они должны располагаться. Мы должны их положение прописывать обертке внутри этого компонента ( return( <div className="...">...<div>)) или мы все же имеем право обернуть компоненту в <div> на том уровне где создается грид и там все описать?

Я это уточняю, потому что как-то выглядит некрасиво, когда в одном ксс ты определяешь как гриды себя ведут, а в других ксс определяешь их классы. Я так понимаю оно все при сборке превратится в один css , но возможно это сложнее читать/исправлять
104 1564352
>>64349
PS

>>внутри этого компонента


внутри каждого компонента (которые являются дочерними элементами грид компоненты)
105 1564354
>>64349
Ну можешь тогда использовать именованные ячейки гриды и передавать в компоненты это имя. Наверно это приемлемо.

https://developer.mozilla.org/ru/docs/Web/CSS/CSS_Grid_Layout/Грид-области
106 1564376
>>64270

>легко прострелить себе ногу херово написанным колбеком


Значит надо всякой мартышке давать больше возможностей прострелить себе ногу, но с уже нормально написанными колбэками и испорченным грязными ручонками эвент лупом?
По-моему от розовых поней пишешь именно ты.
107 1564382
import React, { Component } from ‘react’

Антон поясни как это работает пожалуйста.
В исходниках реакта из файла импортится по умолчанию только сам объект реакт, там нету отдельного именованного экспорта Component.

Это Бабель так делает, что я могу вытаскивать свойства объекта, как будто бы они тоже экспортятся?
108 1564388
>>64382

>Это Бабель


Мне кажется это вебпак. Собери свой проект в дев режиме и посмотри, во что превращаются все импорты\экспорты
Модули в функции, возвращающие объекты. Импорты в использование специальной функции, которая соответственно вернет ранее возвращенный объект из специального словаря. Так что ты просто деконструктишь объект а может и нет, я хуй знает
109 1564400
>>64267>>64376

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


Мерзость.
image.png31 Кб, 668x860
110 1564404
>>64382

>Это Бабель так делает, что я могу вытаскивать свойства объекта, как будто бы они тоже экспортятся?


Так работает module.exports. А если точнее, то это костыль для совместимости es6-импортов с commonjs экспортами, добро пожаловать в мир костыльного жопаскрипта.
111 1564416
какой положняк по жс и ноде на начало 2020?
112 1564445
>>64400

>пукнуть зеленью


Аргументация глупой мартышки как есть.
113 1564568
>>64382
Поведение описанное стандартом EcmaScripts modules.

export default Huita
export additionalHuita
export huitaHelper

import Huita, { additionalHuita, huitaHelper }
Huita - дефолтный экспорт либы
{...} - опциональные экспорты либы

Сам реакт, впрочем, по моему упакован не в esm, а в commonJS или AMD, так что компиляцию из них в esm тебе будет делать либо бебел, либо typescript лоадер. Но любой другой модуль так же имеет понятие дефолтного экспорта и опциональных экспортов.
115 1564582
>>64568
В исхолниках реакта анон выше кинул скрин.

Есть только
export default React

И больше ничего из файла не экспортится
Там нету
export { Component }
116 1564586
>>64382
>>64568
>>64582

В общем глянул что там в npm react. там сразу два пакета - для comonJS и UMD (если есть UMD, зачем тогда commonJS?).

CommonJS имеет одну точку выхода, опциональные экспорты походу действительно просто как поля к нему прицепляются. Бебел походу все поля объекта экспорта транспилит в опциональные экспорты ESM (ебать дикость).

Короче, 2020 год, а у нас основные либы до сих пор упакованы в формат мамонта.

Странно, почему там и UMD и CMJ, потому-что UMD это какбе универсальная обертка и для CMJ и для AMD.
117 1564592
>>64582
Вот нормальное пояснение.
https://dev.to/exacs/node-js-12-supports-es-modules-do-you-know-the-difference-between-commonjs-and-es2015-modules-hg9

В commonJS реально module.exports это дефолтный экспорт, а все его поля становятся опциональными экспортами. А за всеми трансформациями между форматами пакетов стоит ваш сборщик.
118 1564606
И да, я подчеркну, что в 2020 в JS у нас до сих пор 4 (ЧЕТЫРЕ) различных форматов пакетов.

1. commonJS - древняя залупа
2. AMD - еще одна древняя залупа
3. UMD - древняя залупа, которая попыталась примерить все другие древние залупы (а если запустить в чистом окружение браузера, то оно вообще весь пакет высрет в глобал window)
4. ESM - ответ на крик "так жить нельзя". Большинство разработчиков перешли на него (когда ты пишешь import/export - ты используешь ESM). Но 90% либ все еще упаковано в древние залупы и что бы их подключать в свой новенький проект на ESM тебе необходимы транспилеры.

Так и живем.

Анон, если будешь делать свою либу - пакуй в ESM и в UMD. Это покроет все юзкейсы, даже прямо в браузер можно будет грузить без каких либо сборщиков.
119 1564612
>>64592
Почему в официальных доках они сами используют такой костыльный импорт, а не делают просто так
import react from ‘react’
const {Component } = react

Они совсем конченые там? Хотя бы объяснили что у них нету экспорта Component по умолчанию.
120 1564627
>>64606

>Анон, если будешь делать свою либу - пакуй в ESM и в UMD


Ага, и сделать свою либу неимпортируемой по умолчанию в окружение ноды без бабеля. Охуенный совет. Главный дистрибутив для уважающей себя либы делается в cjs, а все остальное говно только бонусом.
121 1564633
>>64627
Ты упоротый? UMD поддерживает commonJS.

А во вторых - пошел ты нахуй, потому-что node 12+ официально поддерживает ESM.
122 1564644
>>64633

>node 12+ официально поддерживает ESM.


По умолчанию не поддерживает, это нужно указывать отдельно через type module. Ну и осталось дождаться, пока все перейдут на 12 ноду, оставив остальные версии позади, и пока не сделают type module дефолтным, так что лет через пять приходи с охуительными советами.
123 1564652
>>64644
Не важно. CommonJS агрегатор все равно сожрет UMD пакет как если бы он был commonJS.

Древние пакетные менеджеры создают отдельный скоуп, в котором создают объект аля module. После этого они запускают в нем нужный файл. Этот файл должен записать в объект module поле export. В AMD примерно такой же принцип.

UMD же просто делает проверку на то, какие объекты присутствуют в исполняемом скоупе. Если он находит module - он срет в него. если он находит define - он срет в него. Если он не находит ни того, ни того - он срет в глобал.

Вот начал UMD пакета, к слову:

(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
typeof define === 'function' && define.amd ? define(factory) :
(global = global || self, global.huita= factory());
}(this, (function () { 'use strict';
....

Каждый пакетный менеджер в итоге получит то, что он ожидает получить.
124 1564674
>>64652
Это говно по сути нужно только для поддержки AMD и браузеров, а браузерные импорты это смешно, никто слава богу ими в здравом уме не пользуется и пользоваться не будет. Если ты пишешь js-либу, то в 99% случаев цель у тебя только одна - это окружения ноды, поэтому выбор идет между cjs и ESM дистрибутивом, из которых очевидно выбирается cjs.
125 1564685
>>64674

>из которых очевидно выбирается cjs.


Ничего одно не выбирается. Обычно там 2 или даже 3 формата пакетов заливают в npm. Тот же реакт устанавливается в cjs и в umd версиях. Но обычно сейчас либы идут с esm и cjs/umd.

Это если кому интересно, почему node_modules так много весит. Момент, когда cjs/amd/umd окончательно умрут будет моментом, когда папки node_modules уменьшаться в два раза. Потому, анон, всеми силами приближай победу ESM.
126 1564692
>>64685

>Тот же реакт устанавливается в cjs и в umd версиях


Какая из этих версий у реакта по умолчанию используется, не подскажешь?
127 1564702
Какой же сложный язык JS. Столько всего неявного, столько магии, столько фич. До сих пор в ахуе после "сложных" плюсов. Одни вышеупомянутые импорты чего стоят. А я думал, что понимал их. И раз он такой ебически сложный, почему все так советуют начинать программировать с него?
128 1564708
>>64692
Хочешь сказать, что один из пакетов просто по фану туда заливают, что бы npm пакет в два раза больше весил?

Это делается для того, что бы любой цугундер-сборщик или окружение само решало, что оно хочет получить и тащило соответствующий пакет.
129 1564709
>>64702
JS урезанный, никто с него не рекомендует начинать. Начинать надо с языков со строгой статической типизацией и полноценными классами.
130 1564714
>>64702
Многие уродские вещи в JS вызваны тем, что его изначально делали как язык рисования снежинок на страничках девочек 13 лет, а потом ВНЕЗАПНО его стали использовать как коммерческий язык для написания от серверов до десктопных приложений. В него стали лихорадочно и быстро втуливать все недостающие вещи под новые задачи, при этом куча старого говна по прежнему отказывается умирать.

На самом деле самый болезненный период уже пройдет. Это было где-то в 13-16х годах. Сейчас более-менее все стало устаканиваться. Тот же стандартизированный ESM заменит собой нестандартные пакеты в ближайшие пару лет.

>>64709
This.
131 1564732
>>64708
Его засовывают туда потому, что реакт - популярная библиотека и им не сложно добавить одну строчку в свой компайлер, чтобы угодить 1% пользователей. "В два раза больше весит" это смешной аргумент, если либа у тебя на сервере/компьютере, то этот лишний мегабайт не имеет никакого значения в 2020 году, а если в готовом билде, то лишнего мегабайта просто нет. А суть агрумента в том, что по умолчанию они(и абсолютно любая либа, какую найдешь) предоставляют cjs модуль, а не umd, хотя казалось бы по твоим заверениям, umd - это тот же cjs, только с бонусами на самом деле нет.
132 1564736
>>62196
нет
133 1564743
>>64702
Сам JS очень простой язык с минимумом синтаксиса, а сложность обычно заключается в том, чтобы разобраться со всеми костылями, которые его окружают, уровня прикрученной сбоку модульной системы в самом жсе модули добавили только совсем недавно, бабеля, плагинов для бабеля, вебпака и прочей хуйни.
134 1564763
Пиздец хуйня ебаная хосспаде
Лучшее на питоняше сервер накатаю, чем на ноде ебливой
135 1564782
>>64709

> никто с него не рекомендует начинать


Всё же рекомендуют, потому что он якобы простой, и чтобы новичок не испугался. Так думают многие и пишут свои топ-5-языков-для-новичков с JS на первом месте. Хотя сам я так не считаю.

>>64714

> стали лихорадочно и быстро втуливать все недостающие вещи


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

> самый болезненный период уже пройдет


Это хорошо. А то я заебался натыкаться на статьи, написанные год назад, но уже неактуальные.

>>64743
Классический браузерный JS действительно прост, даже пресловутые преобразования типов логичные, хоть и не очевидные. Но вот постоянно меняющаяся экосистема ноды очень огорчает.
136 1564813
>>64763
онлайн игру сделаешь?
6RLIZQE9gWU.jpg148 Кб, 830x836
137 1564840
Объясните в чем прекол
138 1564852
>>64813
Конечно
У меня уже идея есть
Гача-гейм типа girl's frontline но с мемасами
139 1564855
>>64840
clunkCounter будет увеличиваться при thunk и clank, а должен только при clunk.
140 1564856
>>64840
Проиграл
Чё за книжка?
141 1564866
Аноны, подскажите.
Написал скрипт и решил вынести часть функций в отдельные файлы. Когда вынес делаю стандартный импорт, то ловлю такую ошибку: Cannot use import statement outside a module.

Гугл посоветовал поставить бабель, но они ничем не помог. Как фиксить?
Снимок экрана (1).png193 Кб, 1920x1080
142 1564881
script.js:4 Uncaught TypeError: Cannot read property 'classList' of null
at script.js:4

Абсолютно не могу понять в чём ошибка, аноны, спасите. скорее всего ошибка очень глупая, у меня из-за этого очень полыхает на самого себя
143 1564884
>>64881
Знаешь что такое id?
144 1564886
>>64884
Да, но ход товоей мысли не понял (я ещё совсем глупый ньюфаг)
145 1564888
>>64886
В селекторе впиши точку. То есть у тебя class=main_nav , а селектор это .main_nav
146 1564895
Фримен Э. Изучаем программирвоание на Java Script
147 1564896
>>64856
Фримен Э. Изучаем программирование на Java Script
148 1564897
>>64888
Блять, вот я так изнал. Помнил, что где-то к селекторам точка не нужна, вот и не писал
Спасибо большое
149 1564900
>>64840
В конце главы есть решения, даун
150 1564910
>>64897
Без проблем
151 1564955
>>64852
от 100 игроков наебнеться
15666696693850.webm3,9 Мб, webm,
480x270, 1:15
152 1565006
>>64852

>Гача-гейм

153 1565013
>>64709
Надо начинать с того, что тебе близко, чем ты собираешься заниматься, и яп, который лучше подходит для твоих задач. Вот эти мантры "надо обязательно начинать с..." - бред.
154 1565020
>>65013
Это не мантры, это рациональный подход.
155 1565073
>>65006

> Эй, Бивис, он сказал дупло

156 1565107
>>62152 (OP)
могу делать красивые и функциональные сайтики на python+flask. пришло время начать работать с javascript. что мне прочитать, что быстро начать работать с этим языком. хочу использовать в основном на фронтенде, хочется сделать пару сайтиков на ноде+экспрессе, чтобы можно было написать в резюме что я с ними работал. могу спойно читать и слушать на английском. по джеэс огромная куча ресурсов и я не знаю, где начать.
157 1565108
>>65107
https://javascript.info
https://developer.mozilla.org/en-US/docs/Web/JavaScript

потом учишь реакт и редакс
https://reactjs.org/docs/getting-started.html
https://redux.js.org/introduction/getting-started

Можешь смело после этого писать в резюме fullstack.
158 1565110
>>65108
благодарю
159 1565119
>>64881
Только не вздумай кому-нибудь это показывать.
И бросай эту некрофилию, выучи ес5/6 и садись за фреймворк. То что ты делаешь щас в js, это не стоит твоего внимания.
160 1565127
>>65107
популярная связка django+react+postgress, редакс опционально в зависимости от твоего проекта. И если ты все же прекрутишь sql к проекту, а в стэйте будет хранится что-то кроме закрытое окно или прочитанное сообщение, то ебало знатно скорчат
161 1565131
>>62152 (OP)
Анон, что это за мода такая ублюдочная?!!
Заходишь на сайт, там, на пол окна вылазит предупреждение о том, что тебе закинут куки. И закрыть его нельзя, блядь, только принять можно... Как блочить подобную хуйню?
162 1565132
>>65131
берешь и блокируешь конкретный элемент adblock
163 1565139
>>65131
С подключением.
В ЕС приняли закон, который обязывает все сайты, где юзаются куки, говорить об этом. Как бороться? Установить специальные расширения. /s/ тебе в помощь.
164 1565140
>>65127

>а в стэйте будет хранится что-то кроме закрытое окно или прочитанное сообщение, то ебало знатно скорчат


А где тогда хранить данные, полученные с запросов?
165 1565263
>>65140
А зачем их хранить? Cразу в dom подгружай, там пусть и хранится.
166 1565271
>>65139

>Как бороться?


Надо по рукам давать быдлокодерам, рисующим эти медленные баннеры,
лезущие на пол экрана меееедлееееенннннннооооо медленно, блядь.
Нельзя что-ли как-то ненавязчиво предупредить внизу и всё?
И да, а что если юзер не хочет принимать куки? Хоть бы кнопку цепляли, не хочу печеньку, хочу пироженку.
каджит.png230 Кб, 410x375
167 1565274
>>65140

>>данные


Ты должен четко представлять, что есть данные. Фронтенд залупа - не данные, а булевые значения. API запрос возвращает данные. Затем ты вспоминаешь, что существуют ограничения API запросов. Банально у яндекс карт - определенный пул в месяц, у API фильмов не более 30 запросов в минуту. Некоторые API по дефолту платные. Ты вот так подносишь палец к подбородку и думаешь, а может мне это куда-то складировать и потом вместо того чтобы в очередной раз делать API запрос, я буду обращаться к своей постоянно пополняемой базе. Таким образом, со временем API запросы начинают заменяться на чистые SQL запросы.

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

Если у тебя в стэйте хранятся хоть какие-то данные, то ты пожрал гавна. Фронт должен рисовать картинку на основании данных, но он не должен их генерировать. Поэтому не надо путать фронт-енд задания с реальной практикой.
168 1565293
Учу javascript с нуля. Конечная цель — хочу собрать PWA приложение. Оно простое, про заметки. То бишь написал текст, сохранил, фильтры навесил.

Подскажите, что помимо дефолта HTML/CSS/JS может понадобится, без чего моя цель неосуществима?
169 1565309
Думал фронтенд это то, чем я буду в основном заниматься.
По детству учил HTML, CSS.
На данный момент учусь в университете на CS и понимаю, какая же срань - фронтенд. И как меня заебала чертова верстка.
Теперь и не знаю, то ли в Spring/.NET перемещаться, то ли вообще в мобилки уйти.
170 1565327
>>65274

>Таким образом, со временем API запросы начинают заменяться на чистые SQL запросы.


Что за хуйню я сейчас прочитал
Какие чистые sql запросы, ты просто заменяешь внешнее апи на запросы к апи своего сервера. Как это вообще соотносится со стейтом реката?
Javascript-tshirt-940x794-600x507.jpg13 Кб, 600x507
171 1565335
Если я приду на собес в такой футболке, это даст мне +1 к привлекательности?
172 1565336
>>65271

> Надо по рукам давать быдлокодерам, рисующим эти медленные баннеры,


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

> Нельзя что-ли как-то ненавязчиво предупредить внизу и всё?


Можно, конечно. Тут уже мода на долбоебизм сказывается, мешающая так делать.

> И да, а что если юзер не хочет принимать куки? Хоть бы кнопку цепляли, не хочу печеньку, хочу пироженку.


Закон предлагает предупреждать об использовании кук, но не спрашивать, согласен ли пользователь. Тупо, да.
173 1565445
>>65309

>то ли вообще в мобилки уйти.


Уходишь в мобилки @ там еще больше уебищной верстки
174 1565446
>>65336
Это не быдлокодеры, это манагеры с десигнерами и с кабанчиком в тз написали что все это должно быть и в максимально сжатые сраки сроки.
175 1565452
>>63669
Это ты бесполезное говно. А ; может предотвратить множество ошибок по невнимательности.
176 1565470
>>65131
Я стилусом https://addons.mozilla.org/ru/firefox/addon/styl-us/?src=search режу, как говорится - раз и навсегда.
177 1565504
>>63669
Вот блядь, из-за таких лентяев и приходится свой няшный старый браузер менять,
на какое-то говно китайское, без исходника, переполняющее буфер от одной gif-ки,
и ложащее винду с синим экраном после засирания файла подкачки,
на говно, вроде того же 360 Extreme Explorer для Windows XP,
зато поддерживающее УДОБНЫЙ ДЛЯ БЫДЛОКОДИНГА ES6,
без поддержки которого, блядь, двач не открывается.

Сидит, блядь, мудель, придумал сам себе что

>" ';' - говно"


и ещё и носит, заражает других былдокодеров-шкальнеков.
А потом даже дрыном им в головы не забить, что надо поставить ёбанную ";"
в какой-нибудь

>for (Выражение; Выражение; Выражение ) Оператор


чтобы throw-exceptions в консоли не срали, и скрипт не останавливали.

На, просвещайся: https://habr.com/ru/post/111563/
178 1565511
>>65452>>65504
Вот уж воистину люди готовы защищать самую иррациональную бесполезную хуйню только из-за привычки. И их даже не ебет, что есть миллион языков в сто раз более приятных по синтаксису, чем жопаскрипт, где каким-то образом обходятся без сраной точки с запятой, и каким-то магическим образом избегают ошибок, все равно будут копротивляться за свое бесполезное говно до последнего.
179 1565521
>>65511
Дурачок, в жс точка с запятой не обязательна. Я тебе больше с позиции крестоеба говорю. Взять тот же питон: тебе не приходится СТРАДАТЬ и ставить точку с запятой, но приходится ловить ошибки интерпретатора если у тебя чуть отступ съехал. Да и это естественная идея - отделять отдельные команды чем-нибудь. Так и компиляторам/интерпретаторам проще, и читаемость кода повышается. Ты же точки, чтобы разделить предложения, ставишь?
180 1565522
>>65446
Манагеры и дезигнеры не пишут код и не могут нести никакой ответственности за его качество. Если ты написал забагованное говно, то это всегда только твоя вина и ничья другая. Кукареки "мне дали мало времени" - это смешно, потому что в итоге всегда выясняется, что либо
а) быдлокодер сам поставил себе такой дедлайн
б) быдлокодеру не хватило яйчишек сказать менеджеру, что времени не хватит и что нужно урезать требуемый функционал/продлевать дедлайн, если хотите уложиться в срок, вместо этого он просто покивал головкой и убежал в свой закуток подальше от социальных взаимодействий
У менеджера нет никакой возможности оценить сложность требуемого кода, нет возможности оценить время написания кода, и т.д, все эти оценки лежат только на тебе и доносить их до менеджера должен ты, а не наоборот. Взрослей и принимай ответственность
181 1565524
>>65511
Напиши for без ;
182 1565537
>>65522
Братюнь, ты это, работать не пробовал? Сроки он менеджеру будет ставить, охуеть вообще.
image.png2 Кб, 261x85
183 1565538
>>65524
Написал.
184 1565540
>>65538
А теперь убери свое убожество назад и напиши нормально.
185 1565541
>>65537
Любой менеджер идет к программистам за сроками для написания кода, сам он не квалифицирован и физически не может их проставить. Он может проставить примерные сроки для проекта в целом, сроки для выхода на рынок и т.д, но вопрос "сколько займет написать такую хуйню" всегда задается только программистам, никому другому он задаваться не может в принципе. И если в ответ на твои "три недели" он отвечает "а может за две? у нас проект горит", а ты начинаешь мяться и в итоге соглашаешься ПОПРОБОВАТЬ сделать за две недели и делаешь забагованное дерьмо, то никакой вины менеджера тут нет.
image.png4 Кб, 363x149
186 1565551
>>65540
Ладно держи.
187 1565603
>>65541
Хуя ты жирный.

> сам он не квалифицирован и физически не может их проставить


Это реально так на говно галерах? Я рад, что там не работал. На большинстве проектов где я работал, сроки выставлял либо техдир, либо ПМ который обладает тех. навыками на уровне оценки сложности.

Зачем нужны ПМы, совсем ничего не понимающие в погромирование? Я искренне сочувствую людям, которым приходится с такими работать.
188 1565621
>>65603

>ПМ который обладает тех. навыками на уровне оценки сложности.


Единственный способ обладать такими навыками - это писать код в этот конкретный проект на постоянной основе.
189 1565625
>>65621
Или набирать ПМов на IT-проекты с образование в CS как делают нормальные компании.
190 1565629
>>65625
Ты не понимаешь, что тебе говорят? Единственные люди, которые могут обладать хоть сколько-то актуальным знанием о том, как долго займет добавление определенного функционала в проект - это программисты, пишущие код в этот конкретный проект. Никакое образование, никакой опыт "в целом" тебе этого знания не даст и дать не может.
191 1565631
>>63771
Я тупой, объясните что тут происходит?
192 1565634
>>65511

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


Хотя бы пять назовешь?
193 1565636
Насколько нужно знать ванилу, если цель дойти до фреймворка и написать что то на нем? Больше пробелов в ES6 фичах (асинки, промисы), т.к ванильный знаю достаточно, даже делал туду в ООП. Я думаю что дрочить все сразу плюшки не имеет смысла без практики, а практикой будет взять какой нибудь вью и сделать что то на нем, правильно ведь? Если что js у меня второй язык после пхп
194 1565637
>>65336
Сверхразум, ты? За всё это отвратное поведение, которое ты описываешь, ответственны менеджеры, дизайнеры, продакты и прочие писари тз. Разрабы просто реализуют то, что им говорят.
195 1565640
>>65636
Я бы сначала доки почитал, попутно делая тестовую хуйню по ходу разделов из доков. А потом уже делал бы что-то.
196 1565654
>>65637
значит, разрабы не очень, раз такое делают
197 1565656
>>65629
А потом увольняют тебя, а не программиста. Потому-что найти говно ПМа без профильного образования в CS проще, чем найти нового сеньора-помидора. Про закладывание дополнительного времени для безопасности ты слышал, кстати? Или на отечественных галерах только ковбой-кодинг?
198 1565658
>>65634
ruby, python, clojure, elixir, haskell
199 1565688
>>65658
Вот только работку ты не найдешь на этих языках
200 1565704
>>65688
Толсто.
201 1565707
>>65704
В чем толстота? Первые два может еще да. На остальное нету работы.
202 1565712
>>65511
Следует иметь а виду, что JS в первую очередь язык с си-подобным синтаксисом, а не с удобным. Со всеми вытекающими.
203 1565743
>>65712
А ведь изначально Эйхор хотел запилить что-то в духе упрощенного Scheme. Если бы не java, обмазывались бы сейчас скобочками и чистым ФП.
204 1565788
>>65743
Эххх бля
205 1565800
>>65743

> ФП


Вряд ли. ФП слишком инопланетное, мало кто осиливает.
206 1565804
>>65654
При чём тут разрабы, если им сказали такое сделать?

>>65707
Работа есть, ты плохо ищешь. Или тебе надо чтобы было 100-1000 вакансий? Устроишься всё равно на одну. Да и заграницей больше работы на этих языках, дополнительный стимул уехать.
207 1565810
>>65800
Заебали эту хуйню нести. Если речь про обычный ФП-язык, который используется на практике(кложа, эрланг, эликсир), то нихуя сложного и инопланетного там нет, специфические фичи осваиваются за неделю.
208 1565836
>>65743

>упрощенного Scheme


Куда уж проще.
209 1565857
Палю годноту быдлу
https://www.youtube.com/watch?v=nyd2_NHpyek
210 1565860
>>65810

> нихуя сложного


Если это действительно было так, это всё по популярности было на уровне сабжа или джавы. Но нет. Потому что никто не может осилить.
Снимок экрана от 2020-01-05 22-48-45.png386 Кб, 672x147
211 1565870
Как пофиксить пикрил? key принимает уникальное значение с сервера.
212 1565872
>>65870
Возможно ты key не у всех указываешь. Кинь код, зачем гадать
213 1565875
>>65870

>key принимает уникальное значение с сервера.


А в консоле тебе ведают об обратном. Есть вероятность, что это реакт пиздит, но, скорее всего, это ты где-то в глаза ебешься. Отдебаж что ты в ключи вставляешь, скорее всего у тебя где-то они повторяются или какой-то элемент без ключа идет.
214 1565876
>>65872

>Возможно ты key не у всех указываешь


Действительно, не заметил в одном месте. Спасибо!
Yi0ZZns.jpg49 Кб, 585x464
215 1565897
Аноны, как по нормальному ванильный JS-код на модули разбить?
Разбил на модули, делаю все экспорты, а когда всё запускаю, то ловлю ошибку Cannot use import statement outside a module.
Что не так?
216 1565900
>>65897
type="module" не забывает проставлять скриптам?
217 1565916
>>65857
Очередной инфоцыган-недоблоггер.
Уноси это говно.
218 1566052
Аноны, я пользуюсь реактовским .module.css, но VSCode не видит их во время авто заполнения импорта. Какой плагин нужно поставить или где нужно написать, чтобы он начал сканировать .module.css. Я пытался гуглить, но почему-то не нашел ни одного вопроса по этому поводу.
219 1566088
эээ бля, как ебучий снег отключить?
220 1566092
Братцы, хочу вкатиться в мобильную разработку. Чисто под свои нужды, сам я не профессиональньный погромист, хоть и кодю с 2000го года практически каждый день.
Присмотрелся к комбинации из native script + svetle.
Какие подводные камни? Что мне нужно будет выучить и в какой последовательности?

С жс знаком постольку-поскольку, раньше для моих нужд плюсов с питоном хватало.
221 1566143
>>66092

>svetle


В чем прекол этого модного и молодежного реймворка? Сколько раз встречал его описание, так и не понял нахуя он нужен
222 1566149
>>66143
Мне он понравился тем, что толком не понимая жс и прочих плясок вокруг ноды нпм гульпов хуюльпов всяких сасс я туда-сюда понимаю как эта хуета работает.
Чисто порогом вхождения, короче. Ну и листинги короче чем то, что я увидел на реакте и ангуляра, а мне много писать лень, после питона-то с

>импорт вунндервафыекомбайне


>вундерваффекомбайне.ду()

223 1566154
>>66143
Очередная ловушка про "очень просто и не надо знать js". Angular, react, vue - в свое время про них всех говорили так же.

Так как вышел не так давно, так что люди будут спотыкаться об не обкатанные подводные камни. Будут сталкиваться с ограниченностью экосистемы, буду велосипедить. Через год-два оно все равно разрастется по апи до реакта/вуэ или даже до ангуляра разжиреет.
224 1566156
>>66149
Готовь велосипеды, мань.
225 1566157
>>65900
Нет, прописал.
В html я подключаю только главный, в который я импорчу все остальные.
226 1566158
>>66154
>>66149
Понял, спасибо
227 1566159
>>66156
Та какие велосипеды, я хочу круд для склада и амоцрм написать чтобы видеть что мои кладовщики когда отгружают
Я это и на кажется калькуляторе или упаковке из-под пива мог бы написать, но поскольку делать мне один хуй нечего решил вот хуйней пострадать
228 1566168
>>66092
Не надо svetle, лучше уж react native возьми. Это очень молодой фреймворк, на каком-нибудь реакте уже миллион таких приложений написали и решили все проблемы у вкатывальщиков. Банально база знаний для других фреймворков больше
229 1566207
>>66092
Лучше бери Flutter, он сейчас лучше всех. Как запасные решения React Native и Ionic.
230 1566226
>>66207
А лучше хуйней вообще не занимайся и делай на нативном языке платформы
231 1566232
>>66149
В реакте с create react app тоже никаких плясок.
15702208981750.jpg417 Кб, 1900x1000
232 1566235
https://www.meshcommander.com/meshcommander

>MeshCommander is the ultimate open source Intel® AMT management console. In an effort to make Intel® AMT easier, support many platforms and over the Internet usages, MeshCommander is entirely built in JavaScript. You can now manage your Intel® AMT computers from within a browser or as a standalone tool.


>MeshCommander is entirely built in JavaScript.

233 1566242
>>66226
Двачую. Белые люди пишут мобильные приложения под гейос на свифте, а под ведро на котлине. Посоветовал флаттер как меньшее из зол.
234 1566250
>>65522
Ты такую лютую хуергу написал что это просто пиздец даже. Ты не то что в айти никогда не работал, а похоже что не работал вообще нигде и никогда.
235 1566258
>>65603

>Это реально так на говно галерах?


Нет, это только в его маняфантазиях и в студяих на три человека в чьей-то квартире.

>На большинстве проектов где я работал, сроки выставлял либо техдир, либо ПМ который обладает тех. навыками на уровне оценки сложности.


Так оно и в большинстве случаев и есть. То просто залетный кукаретик.
236 1566264
>>66052
Не работал с раектом, но проблема в VScode как я понял. И даже твоего вопроса не понял. Давай скринами
237 1566277
>>65603
Какую же ты хуйню написал.
Во-первых, оценить весь скоуп сразу может только господь бог нахуй. Человек же, каким бы неибаца спецом он не был, при таких оценках имеет все шансы ошибиться на 300%.
Пиздец, им дали аджайл, интерации, грумминг, скрам покер и другие средства гибкой разработки, нет не хочу, хочу чтоб какой-то хуй сам наверху все порешал и спустил команде, которая в эту, взятую из чьего-то мутного опыта цифру по памяти, должна попадать. Это при том что >70% всех подводных камней, противоречивых требований, недостающей информации и прочей хуиты выявляется только на стадии разработки.
Понятно, что в некоторых конторах, типа НАСА или Боинг, всякие гибкие методики не годятся, и нужен классический вотерфол, но там блять задача будет пол года проходить 7 кругов аналитиков, архитекторов и прочих уебков , пока дойдёт до разработки, а не типа один авторитетный хуй бздонул и все, отдали в работу. То что ты описал - это самая тупорылая, уебищная, бессистемная хуита уровня »Рога и Копыта» и надеюсь те редкие раковники, что до сих пор так работают, вымрут нахуй, а их дебильный менеджмент весь отправится работать в макдак.
238 1566282
>>66277
Аж трясёт нахуй.
В прошлой конторе, из которой я недавно съебал, один такой дохуя менеджер с 10 летним стажем разработчика единолично дал оценку клиенту на весь проект и обосрался в 2.5 раза, что потом сам признал. Но ему то что, признал и дальше и поздовал пердеть в кресле, а пацаны месяцами овертаймили чтоб попасть в дедлайн, потом половина перегорела и уволилась нахуй
code.png134 Кб, 1236x852
240 1566310
Нихуя не понимаю. Почему метод у созданного объекта undefined?
code.png141 Кб, 1562x852
241 1566311
>>66310
Так лучше
242 1566312
>>66311
>>66310
Сраный vscode не может сделать нормальный скрин. В общем, суть в том, что я расширяю Array своим методом getById и ничего не выходит. Где я обосрался?
image.png149 Кб, 1920x1041
244 1566317
>>66264
Да, дело не в реакте. Когда я пишу импорт файлов .module.css, то VSCode их игнорирует наличие в папке. Обычно он подсказывает в виде всплывающего окошка.

.module.css это legacy стиль написания css для реакта.
245 1566319
>>66314
Благодарю. Помогло
246 1566321
>>66317

>2020


>../../../../


Стыдно должно быть.
https://github.com/tleunen/babel-plugin-module-resolver
247 1566322
>>66319
Лучше собирай просто в es2015+
248 1566326
>>66322
Тоже работает. Вдвойне благодарю
249 1566329
>>66321
спасибо, я это тоже учту
250 1566459
>>65551

>Убрал две ;


>но поставил три.



>>65538
А теперь подумай и скажи, в каких браузерах этот говнокод не заведётся?
251 1566463
>>66459
Не ебу, что это за язык, но на JS можно написать интерпретатор, который хоть C++ схавает. Вопрос лишь в огромном оверхеде на парсинг.
252 1566469
>>62152 (OP)
Знаю основы html и css, плюс немного жабаскрипт + jquery. Сделал один сайт-презентацию.
На какую зп я смогу рассчитывать на фрилансе или в офисе?
анон 24 лвл
253 1566470
Аноны, поясните за промисы:
В какой момент промис становится асинхронным? Если создаю промис и его сразу же резолвлю, то он выполняется в общем порядке. Получается, что промис это тот же коллбэк только с более удобным синтаксисом?
254 1566472
>>66469
зависит от региона конечно, но имхо меньше 30 просить это унижение
255 1566482
>>66470
Он в любом случае будет выполняться асинхронно, потому что компилятор не может определить, как скоро твой промис изменит своё состояние. Поэтому их нужно использовать только там, где ты либо выполняешь какую-то долгую работу на стороне своего кода, либо когда обращаешься к стороннему ресурсу (сетевые запросы, жесткий диск).
256 1566487
>>66470
Объект промиса создастся синхронно.
Функция которую ты в него передал выполнится синхронно.
then/await у него пойдёт асинхронно, даже если коллбэки ты дёрнешь синхронно.
257 1566489
>>66482
>>66487
Спасибо
258 1566509
>>66482

>компилятор


Какой компилятор?
Джаваскрипт это скриптовый язык.
259 1566510
>>66509
Typescript компилируется javascript’ом
260 1566514
>>66510
Не отвечай ему, спорить с буквоедами бесполезно. Они считают себя самыми правыми.
261 1566516
>>66509
И? Любой язык нужно компилировать в байт-код, разница лишь в том, сделаешь ли ты это заранее или "на лету".
262 1566517
>>66516
Есть более общий и универсальный термин "транслятор", но всем как всегда.

мимо
263 1566519
>>66517
Тогда не транслятор, а интерпретатор.
264 1566561
>>66519
https://ru.wikipedia.org/wiki/Интерпретатор
Интерпретатор (англ. interpreter ıntə:'prıtə[1], от лат. interpretator - толкователь[2]) — программа (разновидность транслятора), выполняющая интерпретацию[3].

Интерпретация — построчный анализ, обработка и выполнение исходного кода программы или запроса (в отличие от компиляции, где весь текст программы, перед запуском, анализируется и транслируется в машинный или байт-код, без её выполнения) [4][5][6].
265 1566565
>>66561
Что ты мне то это суешь? Или тебе так легче запоминается? В случае с JS как раз идёт интерпретация, а не компиляция. При этом для того чтобы выполнить исходный код, в любом случае нужно скомпилировать его в байт-код. Интерпретация это совокупность операций, одной из которых является компиляция.
266 1566567
>>66565
Если жс был интерпритатором, то бы скрипт частично выполнялся при наличии синтаксических ошибок, т.к построчно или по одной инструкции. Но жс код превращается в AST, а затем в байткод. Интерпритаторов практически не осталось. Bash например
267 1566568
>>66565
Добавлю.Промышленные компиляторы поддерживают несколько языков и стандартов, поэтому поэтому в них компиляция имеет промежуточную фазу похожую на байткод
268 1566569
>>66567
JIT компиляция это развитие интерпретации. Поэтому если ты говоришь о JS, то и то и другое будет верным, даже не смотря на редкость использования. Не понятно только зачем нужно было разводить этот срач на ровном месте.
269 1566570
>>66567
В определении на Википедии можно написать что угодно, хоть "интерпретатор - это программа, написанная тем, кто ебётся в жопу". На английском википедии вот не сказано, что исполнение обязательно должно быть построчным:
https://en.wikipedia.org/wiki/Interpreter_(computing)

Так что хуйня вся эта терминология с определениями. Пока не примут соответствующий RFC, пусть компилятор хоть микроволновкой называют, менее правыми они не будут.
270 1566572
>>66569
Причем здесь жит? У тебя сейчас везде байткод даже в cpu так как нужна обратная совместимость
271 1566573
>>66572
При том, что это метод компиляции JS-кода.
Специально использовал слово "компиляция", потому что это к любому языку относится, но нет, жопаскрипт макака настолько тупая, что даже не знает об этом и думает, что его жопаскрипт приводится в действие какой-то магией, лол.
272 1566577
>>66573
Так это ты тупая обезьянка, которая все свела к дихотомии: интерпретируемый - значит как древний тормозной бейсик, компилируемый - это как быстрый C. Говорил бы по нормальному: высокоуровневый или нет, кросплатформенный или нет.
273 1566579
Почему нет отдельного JS треда для программистов? Я имею ввиду ноду. Не хочется сидеть с вами, говноедами. Хочу общаться с программистами
274 1566584
>>66579
Здесь почти все фронтендеры-вкатывальщики, так что это мало кому интересно. Попробуй создать, может и взлетит.
275 1566585
>>66577
У кого значит? У тебя и таких же долбоебов как ты? Java, С# тоже компилируемые языки, но не такие же быстрые как C, потому что используют JIT-компиляцию.

>Говорил бы по нормальному: высокоуровневый или нет, кросплатформенный или нет.


>код компилируется высокоуровнивается


хмм, это какой-то особоый язык жопаскрипт-макак?
276 1566587
Довольно простая практическая задачка для ждуна:

Есть такая функция: const multiple = (x,y,z) => x y z
Мы можем вызвать её обычным способом: multiple(1,2,3) // 6

Мы можем создать каррирующую версию функции выше:
const multiple = x => y => z => x y z
multiple(1)(2)(3) // 6

Задача такая: написать функцию curry, которая может каррировать любую функцию, принимаемую на вход.

const curriedMultiple = curry(multiple);
curriedMultiple(1)(2)(3); // 6

функция может принимать аргументы для передачи в каррирующую функцию:
const curriedMultiple = curry(multiple, 1, 2);
curriedMultiple(3); //6

Вы можете передать более чем 1 аргумент в каждую каррирующую функцию:
const curriedMultiple = curry(multiple);
curriedMultiple(1, 2)(3); //6

Или можете не передавать аргументы вовсе:
const curriedMultiple = curry(multiple);
curriedMultiple(1)()()()()(2)(3); //6

const curriedMultiple = curry(multiple);
curry(curriedMultiple)(1)(2)(3); //6
curry(curry(curry(curriedMultiple)(1)))(2)(3); //6

Функция каррирования не сохраняет внутренний стейт:
const curriedMultiple = curry(multiple)(1);
curriedMultiple(2)(3); //6
curriedMultiple(2)(4); //7

Избыточные аргументы должны быть проигнорированы:
const curriedMultiple = curry(multiple);
curry(curriedMultiple)(1)(2)(3, 4, 5); //6

И ещё кое-что: не используйте, пожалуйста, функции call, apply и bind.
276 1566587
Довольно простая практическая задачка для ждуна:

Есть такая функция: const multiple = (x,y,z) => x y z
Мы можем вызвать её обычным способом: multiple(1,2,3) // 6

Мы можем создать каррирующую версию функции выше:
const multiple = x => y => z => x y z
multiple(1)(2)(3) // 6

Задача такая: написать функцию curry, которая может каррировать любую функцию, принимаемую на вход.

const curriedMultiple = curry(multiple);
curriedMultiple(1)(2)(3); // 6

функция может принимать аргументы для передачи в каррирующую функцию:
const curriedMultiple = curry(multiple, 1, 2);
curriedMultiple(3); //6

Вы можете передать более чем 1 аргумент в каждую каррирующую функцию:
const curriedMultiple = curry(multiple);
curriedMultiple(1, 2)(3); //6

Или можете не передавать аргументы вовсе:
const curriedMultiple = curry(multiple);
curriedMultiple(1)()()()()(2)(3); //6

const curriedMultiple = curry(multiple);
curry(curriedMultiple)(1)(2)(3); //6
curry(curry(curry(curriedMultiple)(1)))(2)(3); //6

Функция каррирования не сохраняет внутренний стейт:
const curriedMultiple = curry(multiple)(1);
curriedMultiple(2)(3); //6
curriedMultiple(2)(4); //7

Избыточные аргументы должны быть проигнорированы:
const curriedMultiple = curry(multiple);
curry(curriedMultiple)(1)(2)(3, 4, 5); //6

И ещё кое-что: не используйте, пожалуйста, функции call, apply и bind.
277 1566588
>>66587
Ты даже codepen/repl/textbin не освоил. Какие нахуй задачки? Не позорься.
278 1566589
>>66588
Описанных мною условий достаточно, я всё внятно написал.
Задачку можно решить в https://jsfiddle.net/ или аналогичной ей песочнице.
279 1566591
Ах, да: абу съел часть разметки, символ звёздочки не поставился. нувыпоняли, что multiple просто умножает переданные аргументы.
280 1566594
>>66587
>>66589
>>66591
А когда тебя возьмут, свои рабочие задачи тоже сюда будешь кидать?
Берёшь такой arguments и реализуешь
281 1566595
>>66587
Я же тебе решение писал для multiply, ты даже спасибо не сказал. Всё еще не понял как такое решать и опять приполз?
282 1566597
>>66594
Меня уже взяли. Эту задачку я уже решал, она показалась мне интересной и я её решил показать вам. Она элементарна, каждый ждун должен уметь решать подобного рода задачи.

Ещё могу написать задачку про бесконечно каррирующую функцию или про рекурсивную функцию Nat, но вы решите сначала эту.
283 1566598
>>66595
Я в этот тред раз в год захожу. Давай, решай, а не болтай языком, ждун.
Раньше ещё сидел в МВП, но тот тред заполонили мальчики, косящие под девочек.
284 1566599
Да по-любому так и есть!
285 1566606
>>66597
Пруфай договором с sup /b/
286 1566608
>>66579
Я думал создать отдельно backend тред, но говноеды, которые бэкенд пишут на ноде, там будут не нужны
287 1566626
>>66587

>элементарная задача для ждунов


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



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

Это действительно решается просто, рекурсивно возвращаешь вызов функции с args и длинной args в качестве параметров, но на хуй это не нужно знать джуну. Я бы понял, если б такую хуйню спрашивали у тырпрайз-макак, от которых требуют 2.5 технологии, да ещё КАКИХ. Мне в последнее время кажется, что аучиться правильное конфигурировать вебпак под конкретный проект сложнее, чем выучить спринг или осознать ооп
288 1566633
>>66608
Существуют еще какието ЯП которые развиваются кроме ЖС?

Может на старом говне мамонта джаве писать?
Может на пиздоне у которого свой особый путь и вечная судьба быть на вторых ролях?
Может на го, который не пришей пизде рукав так и не стал язык-классикой с прочным фундаментом?
Может на пхп битриксе?
Может на руби который сдох?
289 1566641
>>66633

>старом говне мамонта


К жсу идеально подходит

> у которого свой особый путь и вечная судьба быть на вторых ролях?


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

>который не пришей пизде рукав так и не стал язык-классикой с прочным фундаментом?


Ну ты понял.
290 1566647
>>66641
Только отличительная черта жс - браузеры у него в заложниках
291 1566649
>>66626

>это получается сейчас фронтенд-джуну нужно идеально знать ванильный жс, реакт, редакс, advanced верстку,


Я всё это знал, когда был джуном. Ну, только вёрстка хромала, а в остальном на тот момент пару мувичёрчеров было, переписывал их на реакт/ангуляр со всем соопутствующим зоопарком типа редакс и саги для реакта/IoC(DI) + RxJS для ангуляра

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


В ФП языках это используется повсеместно. Я вообще сторонник того, что лучший способ обучения - это реализация того, что тебе непонятно самому и что ты сообственно изучаешь. Вот тогда тебе более практичная задача https://www.codewars.com/kata/advanced-events/train/javascript - требуется написать свой ивент с подпиской/отпиской и emit'ом.

>Это действительно решается просто, рекурсивно возвращаешь вызов функции с args и длинной args в качестве параметров


Ну, в принципе верно. Вот эта задача на codewars - попробуй её решить там.
https://www.codewars.com/kata/yack-yet-another-currying-kata/train/javascript
292 1566658
>>66472

>меньше 30 просить это унижение



Ну не толсти уж так
293 1566664
>>66658
Что, ты считаешь это мало?
В моей мухосрани 30к - это зп кассира в пятерочке
294 1566692
>>66664
Я считаю что это не то что много, а просто дохуя, ибо 90% джунов готовы работать бесплатно ради опыта. 30ка это зарплата крепкого мидла в Казани например, хз что у тебя за мухосрань такая где столько кассиры получают
295 1566700
>>66692

>Я считаю что это не то что много, а просто дохуя, ибо 90% джунов готовы работать бесплатно ради опыта.


Очень толсто.
296 1566710
>>66692

>крепкий мидл


>Крепись! Кому сейчас легко?!

297 1566725
>>66692

>90% джунов готовы работать бесплатно ради опыта


Не видел такого нигде - все минимум 30к требуют. А те, кто меньше - то лучше этих вообще не брать. Такого понапишут, что потом сам вздёрнешься.
Невозможно стать хорошим специалистом, не имея уважения к своему делу - работая бесплатно. Этот факт давно уже все знают, кроме тебя.
298 1566756
>>66725

>А те, кто меньше - то лучше этих вообще не брать. Такого понапишут, что потом сам вздёрнешься.


>Невозможно стать хорошим специалистом, не имея уважения к своему делу - работая бесплатно



Причём тут уважение?
299 1566785
>>66756
Я ж написал вроде - без этого хорошим специалистом не стать.
300 1566817
Есть желание вкатиться в фронт, но нет желания заниматься рутинными задачами. Вёрстка, как правило, для меня является рутиной. Те, кто уже вкатились, расскажите, как много вам приходится заниматься вёрсткой (да и вообще скучными вещами)?
У меня хорошее профильное образование, учусь последний год, но со сферой так и не могу определиться, т.к. плохо понимаю, чем занимаются джуны-мидлы-сеньоры в разных областях it.
Просто интересно, много ли сейчас интересных задач есть на фронте для людей, которые любят в логику, программирование, но не очень любят иметь дело с чем-то уж очень рутинным?
И если не фронт, то куда лучше двигаться с такими хотелками?
301 1566835
>>66817
Работа === рутина
It is what it is.
302 1566875
>>66817

>И если не фронт, то куда лучше двигаться с такими хотелками?


В бэк. Фронт это всегда история про интерфейсы, количество вёрстки сильно зависит от проекта, его стадии и задачи. Обычно работаешь уже с какой-нибудь либой, в которой уже есть все нужные тебе компоненты и вся вёрстка сводиться к чему-нибудь типо - col-6 col-sm-4
303 1566900
>>66875
Спасибо!
304 1566963
>>66641

>К жсу идеально подходит


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

>особый говнопуть


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

>Ну ты понял.


Нет не понял.

К слову сказать пхп, не стоит спорить, весьма популярный язык с кучей фреймворков и цмс. Разрабы пыхи перед выходом 7.4 так и написали что у них не так дохуя бабосов как например у жс, поэтому вынуждены отставать. Что гвоорить про другие, менее популярные языки
305 1567009
>>66875

>В бэк.


Там тоже порой верстать приходится. Как минимум вёрстку знать и применять надо уметь.
Ну и помимо самого программирования всякого говна тоже навалом, вплоть до админского.

>>66963

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


Такие вещи много бабосов не требуют. Просто пхп это серверсайд, а там всё аккуратнее делать надо, иначе у тебя не то что вёрстка поедет, а сам сервер ляжет. Поэтому и медленнее вводят новшества.
306 1567017
Вы все хуесосы
307 1567038
Господа, я понимаю что это не CSS тред, но я задам вопрос здесь, так как я уверен что для вас он тривиальный.

Обычно я делал это через отступы и я знаю как это сделать через гриды

Однако, я не знаю как это сделать через обычный CSS или флекс бокс.

У меня есть контейнер от грида (синего цвета), есть h2 заголовок, который ml 15% и есть линки. Я хочу, чтобы ширина h2 соответствовала размеру содержимого, а вся остаточная ширина (- ml 15% и - ширина h2) являлась шириной для линков. Другими словами, хочу получить всю возможную ширину для красного контейнера.

PS

Вот что получается, если задать width: 100% контейнеру с линками.
308 1567039
В чем отличия == от ===?
image.png487 Кб, 1913x969
309 1567041
>>67038
Вот это пикрелейтед 1, остальные - копии 2 пикрелейтед.
sage 310 1567042
>>67039
=== == =
311 1567044
>>67039

> ==


Приводятся к одному типу и только потом сравниваются.
312 1567046
>>67038
calc()
313 1567048
>>67042
У JS равно самое длинное.
314 1567051
>>67046
спасибо, пойду читать
315 1567059
>>67039
научись гуглить
image.png32 Кб, 756x431
316 1567069
>>67059
Эх, как же хорошо жить в 2020 году, когда гугл наконец-то научился искать спецсимволы.

мимо
317 1567080
А можно в css var инициализировать ширину блока на основании ее размера содержимого. Условно я не знаю ее размер на момент декларации.
318 1567096
>>67044
Т.е. если я сравниваю
'12' == 12 / true
'12' === 12 / false
?
319 1567098
>>67096
Да. Сначала сравниваются типы, и если они разные, то false. Если одинаковые, то уже сравниваются значения.
+d5229dbc96222aa14e89a4015e99568f.jpg51 Кб, 685x567
320 1567100
321 1567148
>>67009

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


Я тебе говорю что это разраб пхп сказал, а ты ему говоришь что он не прав. Ну хз
322 1567158
>>67009

> пхп это серверсайд, а там всё аккуратнее делать надо


Пхп - это последний язык для бека, про который так можно сказать. Обновляешь такой версию пхп - и у тебя в лучшем случае сайт заработает с варнингами, что такие-то функции устарели, а в худшем вообще не заработает, потому что их удалили нахуй.
323 1567223
Привет!
В nodejs-скрипте ставлю пакет с помощью кода:

childProcess.execSync('npm i '+module)

И тут же подключаю его с помощью require, но ловлю ошибку, что пакет не найден, хотя пакет ставится в node_modules и при следующем запуске скрипта пакет нормально подключается. почему так?
324 1567225
>>67223
уже не надо
325 1567240
>>65504
Кто дедушку разбудил?
326 1567252
>>66963

>Если кто-то шагает впереди всех


Ебанутый, дядя? Куда жопоскрипт шагает и что там придумали такого, чего в программировании не было 50 лет назад? Если ты лично свою первую монаду увидел именно в жопаскрипте, то это не значит, что он куда-то там шагает.
327 1567295
Взял тестовое на ждуна и охуел. Надо сделать аудиоплеер на чистом жс с дополнительным функционалом. В гугле информация оче скудная, готовых решений на гитхабе нет. Придется тыкаться в web audio api аки слепой котенок.
Как же хочется написать еще один муисерчер, крад или лаповую тудушечбку...
328 1567299
>>67295
https://github.com/topics/audio-player?l=js
Вот эти решения не подходят?
329 1567316
>>67295
любой js фрэймворк и jQ это чистый js.
В гугле куча плагинов написанных на jQ. Берешь один из них и переписываешь на legacy. Но я посоветовал забить. Если у тебя там в потрфолио несколько готовых проектов и предлагают какую-то дичь. То такое. На твоем месте я бы вообще панель саундклауда или ютуба прикрутил бы с видосом пошел нахуй пидарас. А вообще кидай тз, может ты в дебри уходишь
330 1567326
>>67252

>чего в программировании не было 50 лет назад?


Например не было ЯП на котором можно писать все.
Например у той же джавы нет ни одной IDE единственное платное говно от идеи не в счет.
Тайпскрипта не было нигде. Не было постоянно подерживаемых линтеров всяких, а не хуйни необновляемой. Не было бабилей способных транспайлить скрипт в ранние версии. Не было ни одного языка который был бы говняным по своей структуре, но изза этого все начали считать не его структуру говняной, а говняным MVC и ООП в целом. И т.д. можно бесконечно продолжать. ЖС - единственный ЯП. Все остальное дохлое или мертворожденное говно мамонта. И если изобретут новый язык то это будет продолжение ЖС, а не чтото новое
331 1567337
>>67295
Скидывай сюда, интересно
332 1567367
>>67295

https://www.w3schools.com/tags/ref_av_dom.asp

Если посмотреть что делают методы, всякие пропертисы и эвенты, то там есть примеры их использования и объяснение что они делают.
333 1567369
>>67295

Алсо, подумай о паттернах. Там где есть интерфейс с кнопками, там почти наверняка есть паттерн Команда, чтобы не хардкодить код в кнопке. Вот пример:

https://www.youtube.com/watch?v=GQzfF5EMD7o
334 1567380
>>62152 (OP)
Чтобы подключить jquery достаточно только одного файла - jquery-3.4.1.min.js, а jquery-3.4.1.js можно выкинуть нахуй?
335 1567387
>>67380
Как же мне горит с этого треда
336 1567389
>>67387
Выкатывайся
337 1567390
>>66633

> Может на старом говне мамонта джаве писать


Лол, то, что Джава старая, не делает её плохим языком. Да и к тому же ни у одного языка и близко нет настолько развитой экосистемы. На ноде самый популярный фреймворк для бэка сейчас NestJS, вот только с тем же Спрингом он и близко не стоит по количеству всяких плюшек, которые сильно упрощают жизнь (хотя он и усиленно пытается косплеить Спринг).
338 1567397
>>67390

>то, что Джава старая, не делает её плохим языком


Делает.
А спринг - говно для индусов, с совершенно ебанутым взглядом на веб, который был устаревшим ещё в день релиза этого говна.
339 1567399
>>67390

>самый популярный фреймворк для бэка сейчас NestJS


Нет, ему до express/koa как до луны
image.png89 Кб, 200x200
340 1567400
341 1567402
>>67399

>express/koa


Ты на этом дерьме вообще пробовал что-то писать? Это не современные фреймворки, а низкоуровневый скелет, на который нужно накидывать кучу либ и собственного кода, чтобы он стал хоть немного юзабельным. Единственное, что там можно написать - это хеллоуворлды, даже простейшую рест-залупу заебешься пилить и выйдет лютое неподдерживаемое говнище в итоге.
342 1567406
>>67402
Хуя даун
343 1567419
>>67399
Я бы не назвал это фреймворками полноценными. Скорее библиотеки/микрофеймворки.
344 1567423
>>67397
Толсто :)
345 1567433
Ктот на js фбчатбота хуету писал?
346 1567434
>>67390

>то, что Джава старая, не делает её плохим языком



Делает, у неё даже логотип какое-то душное говно из мобилок нулевых
347 1567437
>>67434
Тогда и ЖС тоже говно.
Java:

>First appearedMay 23, 1995; 24 years ago


Javascript:

>First appearedDecember 4, 1995; 24 years ago

348 1567451
Какой минимум нужно знать чтобы на джуна взяли на фронт? Заебало не работать.
349 1567453
>>67451
Открываешь вакансии в своем городе -> смотришь требования.
вот тебе и минимум
350 1567454
>>67453
Спасибо
На каких сайтах посмотреть можнокроме очевидно ххру
351 1567458
>>67454
Не очень понимаю, чем тебе не нравится хх - крупнейший сайт же.
Ну можешь еще career.habr.com посмотреть, там только разработка.
352 1567463
>>66469
Доплачивать нужно будет за возможность работать
353 1567466
>>67295
Сбрось нормальное описание тестового
354 1567486
>>66469
Вы рофлите всем тредом? Я когда устраивался на бэк ждуном за 30к, я все это что описал анон знал + имел опыт работы с vue. Но у меня блять рука не поднялась сказать что я могу во фронт.

Ахуеть как збс что мне приходится конкурировать с вами
355 1567492
>>67486

>Я когда устраивался на бэк ждуном за 30к


Анон ты на ноде вкатывался в бек ? что по стеку посоветуешь ? я так понимаю, это базы данных, какой нибудь нод фрейворк и пет в виде чата ?
356 1567497
>>67492
Нет. Вкатывался на пхп лол. Но сейчас перекатываюсь на ноду
357 1567521
>>67148

>это разраб пхп сказал


Какой именно и где? Пока что слышно только как бабка на лавочке сплетничает.

>ты ему говоришь что он не прав


Ты у нас за разрабов ПХП что ли? Я тебе говорю.

>>67158

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


>Обновляешь такой версию пхп - и у тебя в лучшем случае сайт заработает с варнингами


Зачем ты на 0 поделил в одном посте?
Заявил, что в ПХП не важно предварительное тестирование функционала вновой версии, и тут же что от кривого обновления у тебя бекенд может упасть. Что ты доказать хотел этим?
358 1567522
Господа офицеры, через месяц собираюсь начинать ходить по собеседованиям на фронт джуна, оцените стек изученного:
1.html
- устройство страницы
- тэги
- свойства
- dom
- bom
- event's
2.css
- основы или как тут написать, хуй знает
- блочная вёртска(когда div'ами всё делаешь)
- адаптивная вёрстка
- отзывчивая вёрстка
- медиа-запросы
- flexbox
- cssgrid
- scss/sass препроцессор
3. javascript
- Основы естественно, и всякие тонкости типа контекста, замыканий, this'a и всяких bind/call/aplly, асинхронные функции, промисы, прототипное наследование, fetch и xmlhttprequest запросы.
- ES6 со всеми приколами, шаблонные строки, стрелочные функции, генераторы, оператор ...spread
4. react
- основные концепты по официальной документации: virtual-dom, классовые и функциональные компоненты, стейтлес и стейтфул компоненты, состояния и пропсы, контекст, жизненный цикл компонентов, jsx(лол)
- из продвинутой документации: композиция, propTypes, хуки, компоненты высшего порядка
5. redux
- концепция флюкс
- концепция редакса
- react-redux как библиотека для связи, хули ей
и кроме этого знаю всякую мелочь, типа использования гита в проекте, использование вебпака для сборки проекта с нуля, всякие по мелочи библиотеки, которые в документах реакта и редакса попадались, типа react-router и redux-thunk или redux-saga. Вопрос вот в чём, что мне быстро добирать в стек с учётом того, что у меня месяц-полтора на подготовку к собесу и, надеюсь, своей первой РАБоте
4.
358 1567522
Господа офицеры, через месяц собираюсь начинать ходить по собеседованиям на фронт джуна, оцените стек изученного:
1.html
- устройство страницы
- тэги
- свойства
- dom
- bom
- event's
2.css
- основы или как тут написать, хуй знает
- блочная вёртска(когда div'ами всё делаешь)
- адаптивная вёрстка
- отзывчивая вёрстка
- медиа-запросы
- flexbox
- cssgrid
- scss/sass препроцессор
3. javascript
- Основы естественно, и всякие тонкости типа контекста, замыканий, this'a и всяких bind/call/aplly, асинхронные функции, промисы, прототипное наследование, fetch и xmlhttprequest запросы.
- ES6 со всеми приколами, шаблонные строки, стрелочные функции, генераторы, оператор ...spread
4. react
- основные концепты по официальной документации: virtual-dom, классовые и функциональные компоненты, стейтлес и стейтфул компоненты, состояния и пропсы, контекст, жизненный цикл компонентов, jsx(лол)
- из продвинутой документации: композиция, propTypes, хуки, компоненты высшего порядка
5. redux
- концепция флюкс
- концепция редакса
- react-redux как библиотека для связи, хули ей
и кроме этого знаю всякую мелочь, типа использования гита в проекте, использование вебпака для сборки проекта с нуля, всякие по мелочи библиотеки, которые в документах реакта и редакса попадались, типа react-router и redux-thunk или redux-saga. Вопрос вот в чём, что мне быстро добирать в стек с учётом того, что у меня месяц-полтора на подготовку к собесу и, надеюсь, своей первой РАБоте
4.
359 1567531
>>67522
Уже щас можешь пиздовать
360 1567533
>>67522
Показывай гитхаб и профиль на литкоде
361 1567536
>>67522
чем

>адаптивная вёрстка


отличается от

>отзывчивая вёрстка


и >меда-запросы

Нахуй ты указываешь вот это все, просто пиши html/css/js, React/redux

>месяц-полтора на подготовку к собесу


Завтра устраиваться иди, какие полтора месяца подготовки
362 1567557
>>67521

> Заявил, что в ПХП не важно предварительное тестирование функционала вновой версии


Это другой анон был.
Пора уже ввести здесь регистрацию с привязкой номера, чтобы такой путаницы не было.
363 1567573
Анончики, подскажите:
у меня есть элемент, на котором висят два обработчика и при определённом действии я удаляю этот элемент. Нужно ли мне как-то дополнительно удалять эти обработчики или достаточно просто удалить элемент?
364 1567596
>>67573
Утечка памяти может быть в старых браузерах.
https://stackoverflow.com/questions/6033821/do-i-need-to-remove-event-listeners-before-removing-elements
365 1567614
>>62152 (OP)
Как сделать чтобы запретить открывать ссылку в новой вкладке (не спрашивайте меня зачем) ? т.е человек может перейти по ссылке только напрямую щелкнув по ней левой кнопкой мыши.
У меня пока самая банальная идея это запретить правый щелчок, но наверняка есть возможность открывать пустую вкладку, когда щелкается правая мышка и выбирается "Открыть в новой вкладке"
366 1567616
>>67536
отзывчивая, это когда шаблон условно "резиновый", сжимается и растягивается, без проёбов.
адаптивный, это когда есть несколько макетов, под основные разрешения экранов, условные >1280px, 600px и 480px
По крайней мере я это так понял, может и не прав, я самоучка
367 1567625
>>67614
Ещё запретить клик колёсиком, Ctrl+клик и хуеву тучу других способов, зависящих ещё и от браузера.
Ты ведь понимаешь, что это обходится на раз-два?
368 1567627
>>67614
Никак. Можно только сделать что-то типа того https://jsfiddle.net/ndg39rhx/
369 1567649
>>67614
Хотя я придумал, как сделать подобное, но это довольно костыльно и я не уверен, что это будет работать.

На самой странице, переход по которой должен быть только из твоей доменной области - добавить такой код

if(document.referrer !== location.origin) {
window.close()
}

Но энивей страницу можно будет выкачать
370 1567653
>>67614
Никак.
Сделай ссылку не ссылкой, а кодом (e.onclick = () => location.href = ''). За это тебя обоссут половина пользователей, поисковые алгоритмы, все слегка альтернативные браузеры (нет, я не про файрфокс), всякая аналитика и тот кто будет после тебя иметь дело с кодом, но большинство пользователей не догадается как открыть не кликом.
371 1567654
>>67557

>Это другой анон был.


Что, один пост 2 разных анона писали?

>>67158
Там написано в первом предложении, что ПХП это последний язык для бека, в котором нужно аккуратно обновления вводить. А во втором, что от кривых обновлений как минимум варнинги сыпятся, а то и хуже.
Предложения противоречат друг-другу. Подозреваю, что у кого-то проблемы с логикой а это беда для программиста.

Вообще подозреваю, что разрабы ПХП уже наломали дров и набили шишек с этими своими обновлениями и теперь не торопятся с новыми фичами. А некоторые уже думаю решать проблему радикально и пилить язык P+ или как-то так где будет выпилено всё легаси и костыли, но будет куча новых фич.
Правда пока одни разговоры идут.
372 1567664
>>67654
А, вот ты о чём, я криво выразился. Имелось в виду, что пхп сделан через жопу, поэтому слово "аккуратнее" к нему неприменимо. "Аккуратнее" было бы взять что-нибудь другое.
Впрочем, хз, что там с ним сейчас, но я до сих пор натыкаюсь на сайтики, где на самом верху два-три варнинга. Хотя бы выключали их, что ли.
373 1567671
>>67522
Список ничего не говорит, к сожалению. В принципе всё по делу, но вопрос, на каком уровне ты всё это реально знаешь, без домашнего компа, без бумажки и закладок в браузере.
374 1567677
>>67664

>что пхп сделан через жопу


>натыкаюсь на сайтики


Так я и на ЖС говна понаписать могу. Теперь и его через жопу сделанным назовёшь?

В общем понятно с тобой всё.
375 1567682
>>67677
На пхп как ни напиши, будет пиздец.
376 1567695
>>67596
А если у меня в обработчике будет висеть removeEvent браузеру от этого плохо не станет?
377 1567700
>>67695
Не знаю. Проверь.
378 1567729
>>67522
Сколько в целом веб изучаешь?
Хотя если все рили хорошо знаешь, то стек нормальный, можешь хоть завтра пиздошить как выше писали
379 1567734
>>67522

>нет основных фреймворков жабоскрипта


>нет php


Мы вам перезвоним.
380 1567735
>>67671

>Список ничего не говорит, к сожалению.


Двачую. В список обычно всё подряд запихивают.
Говорит только опыт работы и портфолио.
381 1567738
>>67734

>>нет основных фреймворков жабоскрипта



NodeJS, Angular?
382 1567739
>>67734

>нет основных фреймворков жабоскрипта


Но ведь реакт/редукс

>нет php


Но ведь не фуллстек.
383 1567747
>>67735
какое портфолию с джуна то?
384 1567748
Есть аноны, которые пользовались omdb api?
Он в ответ на запрос всегда присылает общее кол-во результатов и инфу о первых десяти фильмах. Как получить информацию о следующих десяти?
385 1567749
>>67748

Нет возможности задать offset?
386 1567751
>>67749
>>67748
Слегка проебался.
387 1567752
>>67671
я не уверен что прямо все нюансы помню наизусть, но в любом случае уверено ориентируюсь, и даже если у меня вылетит правильное название какого-то метода, то мне не составит труда за пару минут с любой машины найти справку в официальных документах
388 1567753
>>67735
а что я могу сделать для портфолио, как джун без коммерческого опыта? Какие-то не продакшн проекты, на которых я тренировался? Или лучше сделать парочку вылизанных во всех аспектах, на случай кодревью
389 1567754
>>67522
Проекты есть? Сколько?
Списком этим подтереться можешь - будут смотреть твой код на твоих проектах. И если у тебя там копипаста одна с туториалов, то ты фактически ничего не знаешь.
390 1567757
>>67748
Есть параметр page же. Указываешь номер страницы и всё.
image.png41 Кб, 575x176
391 1567778
Ваши маняоправдания?
392 1567779
>>67778
Ну да, это правильно.
CaringSandyBobolink-sizerestricted.gif4 Мб, 456x262
393 1567780
>>67778

> сложно сложно ничего не понятно ряяя

394 1567781
>>67780
Лол, ты даже не понял сравнения? Тот индус португалец бомбит от переписывания костылей обёрнутых в костыли для придания хоть какого-то единообразия коду. Сейчас в одном проекте на ноде намешаны синхронщина, промисы, асинки/авэйты и говногод с глобальными переменными без use strict.
395 1567782
>>67778
Это всем очевидный факт.
Зачем оправдываться?
396 1567783
>>67781
Кто ж ноду без тайпскрипта в 2к20 использует? Конечно говно выйдет - на ванилле-то. JS не для бекенда писан изначально.
397 1567786
>>67783
Кто-то в 2к20 использует тайпскрипт?
398 1567788
>>67786
Те, кто пишут бек. Без нормального ООП у тебя всё что выше тупого эхо-бота для телеги незамедлительно начнёт превращаться в лапшу со сливками поноса.
399 1567790
Привет, есть тут кто-нибудь кто разбирается в firebase?
Вот сделал я пару записей, условно
database().ref('/users/').push({
uid: 1,
name: 'Vasya'
});
database().ref('/users/').push({
uid: 2,
name: 'Sanya'
});
И у меня в бд теперь есть объекты о двух условных пользователях, Васе и Сане, но они лежат по адресу /users/[рандомно-сгенерированая-хуйня-от-firebase]/{uid, name}
А как мне апдейтить дату теперь, или удалять, для пользователя с uid = 1? Как вот эту рандомную хуйню добавить в ref() при обращении? Я понимаю только как найти объект, типа:
database().ref('/users'/).on('child_added', snapshot => {
snapshot.val().uid === 1 ? alert(true) : alert(false)
});
А как мне для этого объекта поменять поле имя, например? Нихуя не понимаю
400 1567792
>>67790
Вот очередной чувак, который копировал сниппеты даже не пытаясь заглянуть в документацию. Точно как пэхапэшники, над которыми раньше смеялись.
401 1567804
>>67792
Точно. Копипастят только пхпшники, а другие ведь не могут - у них технической возможности нет. Всё руками переписывают, даже с других сайтов.

сегодняшние жаваскриптеры суть - вчерашние пхпшники, лалка
402 1567807
>>67792
Все так делают. Не надо пытаться уличить джаваскриптеров в латентной пхпшности.
403 1567812
>>62152 (OP)
Что в ZOZO брать в качестве веб-сервера на ноде, express, meteor, koa или ещё что-то прямо сейчас набирающее популярность? Пишу небольшое приложение для read/write в эластик (аля поисковик).
404 1567827
>>67786
Все
java.png512 Кб, 739x710
405 1567885
>>67788

кому ты пиздишь?
406 1567888
>>67069
Говорят же тебе, научись гуглить.

js comparison operators
js use async await.jpeg42 Кб, 501x361
407 1567889
>>64270

>На практике легко прострелить себе ногу херово написанным колбеком/await и огрести блокировк



Маня, у тебя один поток, твоя блокировка с "херово написанным коллбэком" будет заметна сразу после первого запуска скрипта.
408 1567890
>>67888

> тебе


Нет, не мне.
409 1567897
>>67890
Я тебе говорю, если ты автор того скрина, то учись гуглить.
410 1567898
>>67402
Чего сложного в написании рест апи на экспрессе?
411 1567899
>>67889
Уважаемый, когда нам потребуется мнение макак, которые не писали больше 10 строк кода, мы вас спросим.
412 1567902
>>67899
Очередной маня-тралль с детской попыткой подъебать и развести срач.
Наверное ты себя очень умным считаешь.
413 1567911
>>67786
Все.

>>67788
Типизация и ООП никак не связаны.

>>67885
Это джава, она образец оверинжинеринга в угоду корпоративным энтерпрайз тимворк разработкам.
414 1567921
>>67911

>Типизация и ООП никак не связаны.


Причём тут типизация?
415 1567922
>>67921
При чем тогда тайпскрипт и "нормальное ООП"? ООП на основе классов есть давно и в нативном жс.
416 1567927
>>67922
Ты бы википедию хотя бы почитал перед тем как что-то доказывать. Ты даже не понимаешь о чём идёт речь.
417 1567931
>>67897
Зачем? Гугл и так всё нашёл.
418 1567950
>>66626

>мертвых шаблонах типа каррировния


Держи макаку!
419 1567953
>>67950
Либо ты борщехлёб, либо макака?
420 1568004
Я у мамы сеньор, думаю попробовать уйти от фронта и погрузиться в язык (да, каким бы уебанским он не был).
На фронте не интересны вёртска и войны фреймворков, на бэке не интересны бд, ресты-хуесты – всё рутина.
В идеале хочу наверное заниматься ванилой на острие стандартов, хоть в TC39 пошёл бы заседать. Скорее всего ищу где нужно писать фреймворки-библиотеки-инструменты – нравится вертеть AST и разбираться в работе интерпретатора.
Каким вообще компаниям и сферам такое может понабится?
421 1568008
>>68004
жужл
422 1568014
>>68004

>Каким вообще компаниям и сферам такое может понабится?


Универститетам

>хоть в TC39 пошёл бы заседать


Там все работают на дядю или по конференциям есздиют и еблом торгуют.
me-tries-to-migrate-a-highly-dynamic-javascript-file-to-395[...].png147 Кб, 500x745
423 1568019
Призываю тайпскрипт-богов в этот тред. Как сделать так, чтобы код работал, используя в тернарке isSelected переменную isMultiple? Если isMultiple заменить на Array.isArray(value) в тернарке, то код скомпилится, но это будет отстойно, ведь я сделаю одну и ту же проверку два раза. Почему оно вообще так работает?

https://www.typescriptlang.org/play/?target=7#code/MYewdgzgLgBAZmGBeGAKAbgQwDYFcCmAXDNAE4CWYA5jAD4lQXUDaAugDQwgAOU54EYmUpU2ASmQA+GAG8AsACgYymKEixyEALK5sfbtnzIYAQVKlMATwB0msxcsYcBMYsUquvfpGtwQpAFFMYAALVB4+cClZdw8VAHp4mEBWEEBBEEBuEEAOEBhAJhBAHhA0wCEQQD4QGE0dPXIDI0B+EGLAFhBUwsAGEBzMwsAZEFNzK1sIeysnPHwxThKYYsAJEEzARhBALhBswF4QZJgZwGEQeuTCmGzC1Jg6wE4QAsLOQHEQccLMmpgsYYYmUVZYuJhEmDziwDYQRdKsmFSm3SzU65xKM0A0iAwQACIM0ZsUWulSmdktDkoB2EAOqOSBUWizWgDkQMraXT6QwvOJqaDEgDK+EMwCg+AAJsZyqSquSlK84gB+GAAQgFdwIvkozKG0TuyCQKAi3lc3J5KmIIqMsrlXnAAG4KQBfRV6oA
424 1568026
>>67747
C прошлого места работы, например.
>>67753

>без коммерческого опыта?


Это плохо, тогда придётся сначала работать за жрат.
425 1568027
Товарищи, вопрос.

Есть одна карусель, при наведении на элемент карусели (mouseover), должен показаться следующий слайд.

Сейчас мой код имеет вид:

$('#slide').on('mouseover', function() {
....myslider.trigger('next.owl.carousel');
})

Но при таком подходе при наведении на один слайд начинается очень быстрая прокрутка всех слайдов. Как установить задержку для отработки события после триггера? Чтобы навел мышь на слайд, сработало событие, а следующее срабатывание было возможно только через 3 секунды. (Дабы избавиться от быстрой прокрутки всех слайдов при наведении на один)
426 1568028
>>67739

>реакт/редукс


Всего два фреймворка и не знаешь самых последних модных фрейморков.
Следующий!
428 1568032
>>68027
Попробуй обработчик события mouseover в ф-ю throttle обернуть. В лодаше можешь взять эту ф-ю или npm пакетом скачать.
429 1568034
>>68031
для всего года пара фичей?
430 1568036
432 1568047
>>67927
Какой же ты тупой. Выйти и зайди заново в класс и расскажи заново без историй про википедию. Завтра придешь с родителями.
433 1568048
>>68027

Сделай вращалку карусели и напиши в ней логику срабатывания вращения.

Например https://jsfiddle.net/z63epjwy/7/

Если будешь наводить на ЛОЛ, то у тебе к КЕК будет добавляться строка, но не чаще чем раз в 5 секунд.

Думаю идею ты понил.
434 1568058
Аноны я нихуя не знаю и иду на собес, скорей всего меня возьмут, потому что я наглый ероха жулик.
435 1568066
>>68058

Веди себя прилично, увидят что ничего не знаешь, так хоть вменяемым и обучаемым себя покажешь.
436 1568074
Пояните за деньги, мид на беке больше фронта получает?
437 1568076
>>68074

>мид на беке


получает столько, сколько попросит
439 1568094
>>68019
Еще можно самому явно приводить аля (value as string[]).find
Но лучше делать через гарды как у >>68078 куна.

Я не уверен на счет ручных приведений как допустимой практики. В обычной тернарке это может быть более оправданным, чем написание тайпгарда, но вообще ручные приведения потенциально опасны и можно таким образом успешно обмануть и компилятор и себя.
440 1568114
>>68078
>>68094
спасибо, посоны
441 1568134
Решил включить замерялку FPS в девтулзе, почему у меня большую часть времени очень мало фпс, 1-5, когда ничего особо не кликаю и у меня не лагает? В играх, например, если ничего не делаешь и смотришьв стену, то всегда много фпс, а в браузере мало. Чем фпс в браузере отличается от того, что в играх?
442 1568138
>>67739>>68028
Ни реакт, ни редух, фреймворками не являются. Перезвоним обоим.
444 1568147
>>68138
Таблетки выпить забыл?
445 1568151
>>68147
Ребенок, не позорься, еще годик в ридонли посиди и вопросы позадавай, потом может быть сможешь высказывать мнение, имеющее хоть какую-то ценность.
446 1568157
>>68151
Это говорит человек, который предлагает вместо реата учить вью\ангуляр, потому что реакт это БИБЛИОТЕКА
447 1568160
>>68147
Ну какбэ этот анон прав, это библиотеки, а не фреймворки, у тебя из штанов странно пахнет.
sage 448 1568174
>>68138
Пиздец, этот тред по своей тупости пробил дно. Казалось бы, куда уж дальше, ан нет, можно вбросить тупой срач о терминологии, оказывается.
449 1568178
>>68157
Шизик, ты опять с голосами в голове говоришь? Где там хоть слово про ангуляры с вью?
450 1568183
>>68174
Нельзя позволять, чтобы в лучшем треде программача говорили глупости. Будем сраться до последнего, пока за шизиком не придут санитары.
451 1568187
>>68160
В чём разница?
452 1568227
В коде есть функция для расчета погрешности азимута, есть переменная, которая держит последнюю посчитанную погрешность и span, в которой она записывается после того, как посчитать. Как их все назвать по разному? У меня получается 3 bearingError, это же хуйня.
453 1568231
>>68187
Очень аморфно, на самом деле.

Вообще:

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

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

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

Ангуляр же своими разработчиками вообще позиционируется как платформа для разработки, подразумевая, что они за тебя вообще постарались решить практически все и тебе осталось там только писать хелоу ворлды (на самом деле нет).
454 1568241
>>68187
>>68231
Вообще не парься. Определение фреймворк-библиотека-платформа это что-то из разряда вопросов философии/политоты. Очень часто что-то называют фреймворком, библиотекой или платформой из скорее маркетинговых соображений, нежели из за реальной скрупулезной номенклатуры.

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

>Определение фреймворк-библиотека-платформа это что-то из разряда вопросов философии/политоты


Только в манямирке неполовозрелых фронтендеров.
У взрослых дядь библиотека — это набор функций, фреймворк — это набор функций (см. libcurl) + использующих их функций, а также паттернов написания кода с использованием этих функций (см. Rails). Вот платформа, да, не имеет ничего общего с точной терминологией.
456 1568262
>>68253
Почему Реакт не фреймворк тогда? Он диктует тебе набор последующих решений своей экосистемы и он диктует тебе flux архитектуру от который ты вынужден потом строить все свое приложение.
457 1568271
>>68134
Браузер ничего не перерисовывает, на странице ничего не меняется, новых фреймов нет.
Игры часто физику или мир просчитывают в том же ивевентлупе что графику. И вообще там другой фпс считается, игра тоже может оптимизировать себя и ничего не считать, но видеокарта всё-равно будет ебашить.
458 1568282
>>68262
Хуй знает, я редукс вообще нахуй выпилил из приложения, оставил только аполло - так заебись стало.
459 1568297
>>68262
Да потому что хуйня это всё. У лингвистов есть аналогичныф срач "Язык vs диалект". Много петушни, мало толку.
Называй так, как называют авторы, не ошибёшься. Но факт знания, что это именно библиотека, а не фреймворк, в ходе разработки не пригодится точно.
460 1568301
>>68271
А как мне понять, что у меня хуевый фпс? Вроде как фпс должен быть не ниже 60, но в реальности у меня почти постоянно фпс ниже 60, но ничего не лагает при этом.
461 1568306
>>68297
Срач хоть и петушиный, но у меня не один раз на собесах спрашивали, что такое реакт, ожидая, что я скажу, что это фреймворк, чтобы потом обоссать меня с ног до головы. Но анон не дурак.
462 1568308
как и кто пилит новые фичи для жс?
sage 463 1568311
>>68282
И что, костыль с графкуель работает быстрее редакса?
464 1568313
Ебаная сажа с ебаной куклой, сука блядь.
465 1568314
>>68301
ФПС чего? Очевидно ты ничего не рисуешь.
Дроч на фпс это не про веб если ты не на канвасе рисуешь что-то.
466 1568318
>>67911

> Типизация и ООП никак не связаны.


Труъ-ооп, по заветам Кея, как раз таки должно реализовываться в языках с динамической типизацией. Все эти ваши джавошарпы настолько же далеки от ООП, насколько далеко от ФП реакт.

Дебилам просто протолкнули очередную модную хуетень под соусом чего-то большего, чем просто очередной уровень абстракции, а они и рады. Схавали за обе щеки, так сказать.
467 1568320
>>68318

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


руби?
468 1568321
>>68314
а ок, я так понимаю, имеет смысл только фпс анимаций замерять
469 1568323
>>68187
Библиотека не диктует тебе, как нужно организовывать бизнес логику, она просто дает набор функций для реализации какой-либо задачи. В реактоприложении ты можешь легко вынести 90% любой логики компонента(10% - это дроч со стейтом, но и его хуками теперь можно изолировать кое-как) в любой удобный формат и использовать реакт только для того чтобы писать шаблон в dom, что и есть та самая единственная задача, которую реакт помогает решить как библиотека.
470 1568325
а можно сделать так,что кусок кода в спа нельзя было увидеть или понять?
471 1568326
>>68320
Эрланг/эликсир.
472 1568328
>>68326
это не ооп языки
473 1568329
>>68325
Вынести его на сервер.
474 1568331
>>68329
это спа
475 1568332
>>68328
Но при этом ООП они реализуют как по определению. Ты наверное вообще охуеешь, если узнаешь, что ФП и ООП друг друга никоим образом не исключают и обе парадигмы можно использовать вместе.
476 1568333
>>68331
Отправляешь своим клиентам html файлы по почте?
477 1568336
>>68331
ну так захуярь из кода, который ты не хочешь показывать, внешний апи и дёргай его из кода, на который тебе похуй.
478 1568338
>>68331
минифицируй, специально говнокодь как индус
479 1568340
>>68332
ну да,со скалой работал
480 1568353
>>68338
Если у человека есть прямой доступ к сурс-коду и желание разобраться, что этот код делает, то он разберется не то что в индусском говне, а даже в бинарнике. Так что не советуй хуйню ньюфагам, единственный способ "спрятать" код от клиента - это вынести этот код на сервер, больше никаких.
481 1568358
Хочу написать бота для этйо поеботы https://orteil.dashnet.org/cookieclicker/
Хотел найти инфу про хуки в js - не нашел. Куда искать? Что почитать на эту тему?
482 1568359
>>68358
Autoit
image.png102 Кб, 480x400
483 1568360
>>68332

>что ФП и ООП друг друга никоим образом не исключают и обе парадигмы можно использовать вместе.

484 1568367
>>68359
Там перехватывать можно события браузера? Это же вроде просто набор команд для управления вводом клавомыши. А мне надо еще и печеньки ловить, которые в случайном месте появляются.
Screen Recording 2020-01-09 at 22.01.07.mov10,8 Мб, mp4,
856x884, 0:13
485 1568375
>>68358
Я б тебе не перезвонил
486 1568377
>>68308
OpenJS Foundation, в которую объединились JS Foundation и Node.js Foundation. Потом на бумаге все решения заверяют в Ecma International как часть стандарта ECMAScript.

Вот тут можно публичные обсуждения и стадии разных предложений посмотреть.
https://github.com/tc39
487 1568379
>>68320
Тоже не тру. Внезапно, ближе всего к тому самому смоллтоку именно жс. А долбоебы типа вот этого, >>67788, боготворящие убогую концепцию классошлепства вместо программирования, являются настоящими макаками.

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

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

Предлагаю заклеймить ооп-выродков раком айти и ссаными макаками, гнобить и унижать их при каждом удобном случае.
488 1568381
>>68377
а че пяток фич в год?
489 1568383
>>68358
async function sleep(ms) {
return new Promise(res=>setTimeout(res, ms));
}
for (let i = 0; i != 100; i++)
{
await sleep(5);
document.getElementById("bigCookie").click();
}
490 1568384
>>68318
Страуструп угнал этот термин и его ООП в коммерческой разработке стало более популярным. Объективная реальность.

Неадекват это любой, кто не понимает такое положение дел и петушится про то, что НАСТОЯЩЕЕ ООП ЭТО ТОЛЬКО ПРО КЛАССЫ/ПРОТОТИПЫ по заветам Страуструпа или ТОЛЬКО ПРО АКТОРЫ ПО ЗАВЕТАМ Кея.

Определение ООП это одна из тупейших спец-олимпиад в мире погромирования. За такое пора уже в биореактор отправлять.
491 1568392
>>68381
Потому-что в ~2016 все начали неистово умолять писателей жс фреймворков и новых фич в языке немного астанавиться и они реально немного астанавились.

Вот тут можешь оценить масштаб нытья того периода.
https://habr.com/ru/post/312022/
492 1568393
>>68384

>я дурачок и не могу выделить единственную уникальную фичу ООП парадигмы, а значит это спецолимпиада


Держи в курсе.
493 1568394
>>68392

>Потому-что в ~2016 все начали неистово умолять писателей жс фреймворков и новых фич в языке немного астанавиться и они реально немного астанавились.


Нихуя они не остановились. Кто хочет - тот пишет. А ты не обязан изучать каждый пук твоего любомого разработчика.
494 1568395
>>68384

> Страуструп угнал этот термин и его ООП в коммерческой разработке стало более популярным. Объективная реальность.



> Неадекват это любой, кто не понимает такое положение дел и петушится про то, что НАСТОЯЩЕЕ ООП ЭТО ТОЛЬКО ПРО КЛАССЫ/ПРОТОТИПЫ по заветам Страуструпа или ТОЛЬКО ПРО АКТОРЫ ПО ЗАВЕТАМ Кея.



Миллионы мух не могут ошибаться? То, что сейчас называют ООП, стало популярно лишь из-за общего уровня снижения математической подготовки разработчиков, которых нужно загонять в строгие рамки, дабы избежать тонн говнокода. Это объективно плохо.
Благо современные инструменты стараются делать, как минимум, мультипарадигменными.
495 1568399
>>68392
и что,в жс фич больше,чем в питоне,руби,жаве?
496 1568401
>>68399
Да. Если брать всю экосистему жс, то там фич будет больше, чем во всех перечисленных тобой языках вместе взятых. И их экосистемах.
497 1568403
>>68395
Речь идет о том, что человек который доебывается до сраусиного определения ООП слегка долбоеб, потому-что так уже случилось и ничего с этим поделать нельзя. Ты реально на работе тоже будешь доебываться колег из за того, что под ООП в переписке будут подразумивать страусинное ООП?
498 1568405
>>68401
а правда,что в жс кастрированое ООП?
499 1568406
>>68405
Там все кастрированое.
500 1568407
Вот еще классика того периода. Смешное было время.

https://www.youtube.com/watch?v=8p1uLKYAwEw
501 1568411
>>68406
те написать что то может сложнее,чем на жаве?
полкчается нода с жс-галимое прототипирование?
502 1568414
>>68405
По определению страусинного ООП - да.
В JS ООП как в языке Self, в котором взяли за основу страусинное, но потом слегка свернули в сторону.
503 1568416
>>68405
>>68414
Уже почти пришли к страусиному на самом деле.
Остались только приватные проперти и они в стейдж 2 или 3.

А ваще в жс всё объект, даже функция, даже аллах. Объектно-ориентирование некуда.
504 1568420
>>68403

>так уж случилось


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

>>68405
Если ты про ООП а-ля «наебашим классов, обмажемся полиморфизмом и будем НАСЛЕДОВАТЬ» - да, инструменты для такой разработки в жс менее мощные, чем в джавошарпах.
>>68411

> те написать что то может сложнее,чем на жаве?


> полкчается нода с жс-галимое прототипирование?


Почитай тред. Я только что объяснял, почему то, что ты подразумеваешь под ООП - хуетень.
505 1568421
>>68416
Не совсем. Потому-что классы в жс это сахарная обертка над прототипами. Под капотом там все равно остается прототипное наследование.
506 1568424
Размышления о "настоящем ООП" это все равно что размышления о настоящем говне. Может ли вот этот катяшок считаться настоящим Говном с большой буквы или он слишком мал для этого? Что на счет поноса - нужна ли для него отдельная категория. И так далее и так далее. Охуеть как глубоко и увлекательно.
507 1568425
>>68421
костыль для костыля
170402lcsihzbkndom.png283 Кб, 586x634
508 1568428
>>68424
Осторожнее, ты на двачах. Сейчас еще реальные ценители говна прибегут и засрут весь тред срачем о том, какой формы должно быть настоящее говно.
509 1568431
>>68416

> А ваще в жс всё объект, даже функция, даже аллах. Объектно-ориентирование некуда.


Ещё один человек, который не понимает, что функции первого - не признак страуструпского говна, а наоборот.
510 1568432
>>68431
первого класса

фикс*
511 1568433
когда уже на ноде можно запилить тырпрайз?
512 1568444
>>68379
Ну ведь это удобно
513 1568446
>>68416
Далеко не всё. Примитивные значения - не объект. Операторы - не объект. Ключевые слова - не объект.

>>68421
Неверная мантра. Это не просто "сахарная обёртка". Есть довольно существенные отличия "класса" от обычных прототипов.
514 1568472
es 2020 приймут в начале года или в конце?
515 1568480
>>68472
Нет никакого примут.
Да и никакого 2020 тоже нет, это условное спекулятивное обозначение.
Те фичи который сейчас называют es2020 (glolbalThis, ??) уже формально часть стандарта, но не высечены пером, это вот-вот в январе должно случиться.
Если в феврале что-нибудь ещё приедет в стейдж 4 это тоже будет называться es2020.
516 1568485
>>68480
получается.в начале года они принимают в целом фичи на весь 2020?
517 1568505
>>68446

>Неверная мантра. Это не просто "сахарная обёртка". Есть довольно существенные отличия "класса" от обычных прототипов.


Поясняй давай, что имел в виду. Классы в JS - сахар, обычные объекты, строго говоря, классов в привычном понимании относительно других языков в JS вообще нет.
518 1568507
вам не похуй,как оно там устроено,главное чтобы удобно было
519 1568550
>>68505

>Поясняй давай, что имел в виду. Классы в JS - сахар, обычные объекты


Понятие "класс" и ему соответсвующие термины в контексте JS действительно ввелись ради упрощения освоения языка другим программистам, придешдших с классовых ООП языков. Но я имел ввиду не это. Например, функцию можно сразу как бы заранее использовать, перед тем, как реализовать и благодаря механизму "поднятия" интерпретатор JS не выбросит никакой ошибки, в отличии от класса: https://jsfiddle.net/3Lzgoh1y/
Ещё одно известное мне отличие - в классах нельзя объявлять методы с помощью стрелочной функции(без бабеля). Ну и вообще классы имееют иную структуру для AST.

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


Ну типа да, но вместо классов есть прототипы. Вообще, JS выбрал протипы из-за своей недальновидности - раньше и браузеры были медленее и непредсказуемые, а реализация поведения через прототипы была намного проще.
520 1568553
когда ломать и переписывать,добавлять фичи ради фич перестанут?
521 1568558
Из-за чего addEventListener на элементе может срабатывать только один раз?
522 1568569
шалом, программисты, у меня тут вопросик появился, он мне кажется совсем идиотским, но я что-то подвис. В общем я тут практикуюсь в реакте-редаксе, делаю свою версию популярного из примеров приложения todo-app прикрутив всё это дело к firebase. Хранится у меня массив этих todo'шек в базе, при загрузки странички я диспатчу ээкшен который включает сагу, и этот массив загружается и отображается на страничке. То есть я вынес асинхронный экшон в редак-сагу, тут всё понятно, грубо говоря это запрос get. Но на самой страничке я сделал два обработчика прямо в jsx, без вынесения в сагу, там у меня точно такое же асинхронное действие, даже сложнее, я сначала загружаю с базы данных, потом перебираю то что получил, и ещё раз обращаюсь к конкретной записи для удаления. По идеи это тоже асинхронное действие, но никаких проблем в выполнении это не вызывает. Вопрос: где именно я долбаёб и почему?
523 1568570
>>68558
незнаю у меня все нормально работает
524 1568572
>>68569
Очень тяжело понять что у тебя вообще происходит. Выкладывай на гитхаб.
525 1568574
>>68569

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


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

Для элементарных действий вроде выгрузки каких-то данных с АПИ можешь прямо в компоненте всё это делать. Если что-то посложнее и ты чувствуешь, что это может где-то переиспользоваться - лучше вынести в сагу.
526 1568576
Переформулирую >>68558
У меня есть спан, на который я навешиваю два обработчика https://jsfiddle.net/ofvjkb1L/
Первый срабатывает только один раз, после этого одиночные клики он не распознаёт.
527 1568577
>>68574
а как-же "Action-функции обязательно должны быть чистыми"? Разве не для любой асинхронищины используют мидлвары?
528 1568586
>>68572
я обращаюсь к firebase realtime database нативными функциями из пакета firebase внутри обычной функции-обработчика, которая висит на компоненте.
Мой диссонанс в том, что это работает. Читая документацию я чётко усвоил что любой асинхронный код надо выносить в мидлвары, и теперь я не понимаю нихуя
529 1568595
>>68577
Должны, но я говорил не про редакс, а про реакт. Это редакс по дефолту не поддерживает асинк флоу и поэтому используют миддлвары. Я например для каких-нибудь статичных страниц могу вытянуть данные прямо в хуке useEffect и ничего страшного у меня не происходит. Если поведение чуть-более сложнее, чем просто взять, отфильтровать и засетить в стейт - тогда использую сагу.
530 1568598
>>68586

>Мой диссонанс в том, что это работает. Читая документацию я чётко усвоил что любой асинхронный код надо выносить в мидлвары, и теперь я не понимаю нихуя


А почему это не должно работать? Реакт !== Редакс. В реакте можно делать асинхронные вещи. И сайд эффекты иметь можно.
531 1568605
>>68595
>>68598

> Аноним 09/01/20 Чтв 21:09:15 №1568598 530


я, кажется, понял, почему я долбаёб. Получается я могу оставить всё как есть. Будет один мидлвар, который загружает к хранилище массив этих заметок при монтировании странички. А удаление и редактирование записей будет без вынесения в экшены и связей с редаксом, просто кодом на компоненте. Благодарю
532 1568609
Анончики, ответьте на этот вопрос плз >>68576
533 1568620
>>68609
незнаем у нас всё работает
https://www.youtube.com/watch?v=DcOD4YHEKqc
534 1568621
>>68609
Сделай нормальную демку, где проблема воспроизводится.
535 1568628
>>68621
Да мне тогда придётся весь проект запихивать
536 1568706
>>68621
Вот укороченная версия
https://jsfiddle.net/r3c8xsu9/1/
При первом клике на спан вылетает алерт, но последующие клики он не ловит.
537 1568709
>>68706
timer = null добавь после алерта.
538 1568712
>>68706
>>68709
А в условии isNaN(timer); Тогда будет и тротлиться и срабатывать.
539 1568713
>>68709
>>68712
Спасибо большое.
540 1568714
>>68712
>>68709
А нет, не null а undefined.
541 1568750
>>68714
Может тогда уж delete timer?
542 1568775
>>68558
У тебя первый обработчик всегда будет перекрывать второй. Вешать на один элемент и click и dblclick - очень плохо.
543 1568828
>>68750
Меня вариант с undefined вполне устраивает, т.к. эти обработчики висят на элементе поиска, который может использоваться неоднократно.

>>68775
Такое задание
544 1568902
545 1569007
Будет ли ухудшаться производительность, если ставить одно и то же цсс свойство дом узлу? Например, если по клику на кнопку делать так: btn.onclick = () => btn.style.width = '250px', браузер будет перерисовывать кнопку каждый раз, когда я на неё кликну или он поймет, что кнопка и так 250 пикселей, а значит её не надо перерисовывать?
546 1569009
547 1569010
>>69007
Да 07
548 1569065
>>69007
Зависит от алгоритмов браузера.
Скорее всего будет пересчёт, не будет перекомпоновки и перерисовки.
549 1569106
>>69007
Существуют даже хаки связанные с обращением к свойствам элементам, что бы тригернуть пересчет их рендера.

Вот такая вот хуйня void elem.offsetWidth; (вместо offsetWidth любое другое подобное свойство может быть) может заставить браузер пересчитать состояние анимации на элементе. Я таким образом чинил баг в какой-то из версий хрома (с анимациями там что-то постоянно ломают, так как последний год они принялись очень активно такие вещи оптимизировать в плане производительности, но как бекфайр - в некоторых очень сложных конструкциях анимации начинали сильно глючить).

Но вообще, я думаю, что это не покрыто какими-то стандартами (пруф ми вронг, если кто прошарен) и нет никаких гарантий, что такое поведение будет постоянным на протяжение будущих обновлений.
.png50 Кб, 1004x234
550 1569135
+ $10000
551 1569153
>>68605
Нет, если используешь редакс, выноси всю асихронную логику в него. Хз как саги, я это делал через thunk
552 1569163
Подкиньте мотивации пожалуйста.
553 1569165
>>69163
Вкатился на реакт без опыта на мидл вакансию на 70к за 2 месяца, дефицит кадров пиздец. До этого год фрилансил на битриксе
554 1569171
>>69165
ДС?
В моей мухосрани только похапе(уии) программисты нужны.
555 1569172
>>69171
Ну иди поработай пхп погромистом. Набей опыта, а потом укатывайся в удаленку - там вообще пофиг в какой мухосрани ты живешь, лишь бы интернет был.
556 1569173
>>69172
Окей
557 1569174
>>69173
Но вообще можешь повисеть в поисках удаленки на реакт на джуна. К концу января должен рынок активизироваться. Проблема удаленки только в том, что туда чаще ищут опытных девов. Но в теории и джуна могут куда-то взять. Ищи везде, где только можно, включая канал в телеге.
558 1569176
>>69173
И сделай какой-то свой сайт, где бы ты выкладывал какие-то крутые штуки, которые ты накодил - это кайнд оф заменитель опыта работы.
559 1569179
>>69171
Томск, хотя недавно видел в обсуждении на хабре, что в Томске завышены зп в ИТ в силу конкуренции
image.png2 Кб, 259x81
560 1569182
Аноны, ищу работу в ДС на hh (фронт джуниор/стажер). Откликаюсь на frontend и постоянно приходит вот этот результат пикрелейтед. Как это расценивать? Им лень ставить отказ или все таки есть шанс, что позовут?

Портфолио нет, доделываю потихоньку мувисерчер. В анкете есть даже мое фото + пишу сопроводительные письма. Поясните, что делаю не так на основании вашего опыта.
561 1569188
>>69176

> И сделай какой-то свой сайт


На похапе?
Щас максимум могу на питоне и жсе хуету какую-нибудь сварганить.
Без фреймворков естественно слишком сложна
Думаю мб nodejs попробовать
563 1569190
>>69188
Успехов тебе с нодой

>Без фреймворков

564 1569197
>>69190
А что такое? Без них вообще никак? Я просто для обучения принципиально ничего не хочу использовать. хз насколько правильный такой подход
565 1569198
>>69189
Спасибо. Прочитал по диагонале.
Исходя из твоего опыта, все же стоит звонить или цугцванг
566 1569213
>>69198
Исходя из моего опыта, по всем интересным резюме рекрутерша пишет первой.
567 1569220
>>68485
Комитет же не имеет четких дат
568 1569269
>>69179
Завышенные они во всей индустрии.
Джунов в Томске жопой жуй и каждый год новые из универов выпадают, а сеньоров нет, все съёбывают. Работы для сеньоров тоже почти нет впрочем.
569 1569298
Господи, как же заебали бесконечные туториалы с применением ебаных фреймворков.
Я захотел разобраться с вэб-сокетами. В node есть нативный модуль net.Socket. Который есть "интерфейс", и который обеспечивает взаимодействие между разными компами по TCP/IP. Что в общем понятно.
Но вот вэб-сокет, это уже протокол поверх все того же TCP/IP. После обмена GET запросами клиент и сервер устанавливают соединение по TCP/IP - как реализовано это соединение?
вэб-сокет это протокол которые реализует в конечном итоге сокеты? Как это работает ?

Я хочу на node запилить что то на сокетах нативно, без сторонних фреймворков. Что бы разобраться.
570 1569318
>>69298
п.с.
Я пролистал каталоги репозитория soket.io - и не нашел там никакого стороннего кода на c++. Значит этот фреймворк использует нативные возможности ноды и в частности модуля net.Socket
571 1569320
>>69163
Зачем? Оставайся в жопе.

>>69165
При всем дефиците, мидлом за 2 месяца стать нельзя. То есть твоя должность вполне может так называться, но скиллы у тебя будут джуна в лучшем случае.

>>69182
Они посмотрели. Может, позовут. Зачем это как-то ещё расценивать? Отказы обычно лепят либо сразу, либо отклик улетает в архив вместе с вакансией. Телефон твой в резюме есть? Вотсап/телега работают?

Сделай нормальный гитхаб, хотя бы с пет-проектами, лучше, если стек будет совпадать с тем, на что откликаешься. Сопровод некоторым важен, но чаще значения не имеет. Откликайся сильно больше, чем делаешь сейчас, через силу.
572 1569356
>>67463

>Доплачивать нужно будет за воз


Ну вообще-то платные стажировки это довольно распространённая практика.
573 1569367
>>69320

>>Телефон твой в резюме есть?


Есть

>>Вотсап/телега работают?


Есть

>>Сделай нормальный гитхаб


Вот делаю мувисерчер потихоньку. Очень хотелось бы сделать с бэком и sql. Но я смотрю на это все и понимаю, что возможно оно того не стоит + лучше наверное 2 проекта сделать, чем 1 фуллстак. + если в JS более менее уверен, то в многих CSS вещах не уверен, это и дополнительно заставляет задуматься о надобности этого бэка.
575 1569399
Пиздос!! Что это за синтаксис, когда это успели протащить в Жопоскрипт?!
576 1569402
>>69399
С разморозкой.
Пять лет как уже.
577 1569405
Привет! Я тот анон, что делал тестовый крад на реакте перед нг задание оказалось немного сложнее -- нужно было ещё и интегрировать бекенд, но я справился. Сдал его ещё на каникулах, вчера написала хр, мол, тестовое норм, завтра интвервью по скайпу. Сегодня мне позвонили, сначала спрашивали о семейном положении, когда я буду готов выйти и тд. Потом, другой человек задавал технические вопросы онли по реакту. И тут я, вероятно, проебался. Вопросов было штук 8-10, я совсем не ответил на два -- что такое редакс и на хуй он нужен все что я о нем знаю -- он как-то меняет поведение состояния, лол и о том, что такое контекст не сталкивался с ним делая тестовое и упустил из виду. Готовился я, к слову, по большей части к вопросам по ванильному жс.
Закономерно мне сказали, что напишут на следующей неделе, сообщат зп и тд, лол.

Ну, с первого раза, наверное, мало у кого получается, так что я хоть и расстроен, но не прям чтобы сильно. Ну и меня это очень сильно бустануло - после тестового я всего за 3 вечера написал простенький мувисерчер и тудушку. В общем, хочу поблагодарить анонов, которые помогали мне - вы крутые!
578 1569407
>>69399
Код как бы подчеркивает деградацию колеров. Им дали Promise, дали Async - но коллбеки все равно хуячат.
579 1569426
>>69399
бамп вопросу
580 1569441
>>69402
что за `fn:`?
что за `= empty`?
что за `:Promise<void>`?
это было в .js файле, я не тайпизатор
581 1569461
>>69441
fn - алиас, а остальное из тайпскрипта
582 1569465
>>69441

>что за `fn:`?


Имя параметра, за которым следует тип

>что за `= empty`?


Значение по умолчанию.

>что за `:Promise<void>`?


Тип возвращаемого значения.

И да, не пользоваться typescript в 2020 = сидеть на обочине
583 1569472
>>69179
Поподробнее.
мимо Томич
584 1569478
>>69269
Вот поэтому там дохуя вакансий для джунов. Хотя наверное в силу вышки требования пожестче, чем там, где такой конкуренции нет.

Сеньерам не то что в Томске, им в рашке делать нехуй.
585 1569479
>>69320

>При всем дефиците, мидлом за 2 месяца стать нельзя. То есть твоя должность вполне может так называться, но скиллы у тебя будут джуна в лучшем случае.


>


Речь про трудоустройство, а не скилы.
586 1569480
>>69405
Я до работы редакс не трогал, с бойлерплейтом разобрался за день, больше вопросов нет. Посмотри у буры ролик по редаксу и все поймешь. Там нихуя сложного
587 1569481
>>69465

> И да, не пользоваться typescript в 2020 = сидеть на обочине


Обоснуй, интересно
588 1569484
>>69399
это тайпскрипт
589 1569519
>>69392
И как ни странно нихуя мне не дало. Час уже сижу в доке ковыряюсь. Так и не нашел пока ответа - в Socket.io именно TCP уровень реализован на сокетах.
Как я понимаю варианта два - либо с помощью нодовских net.Socket, либо где то среди зависимостей есть пакет с бинарником на C++, на котором написана своя реализация протокола вэб-сокет. Но в этом я сомневаюсь.
590 1569522
>>69481
Поддерживается практически всеми популярными библиотеками и предотвращает кучу интеграционных ошибок между модулями.
592 1569996
Как файл через fetch отправить?
593 1570010
>>69996
Также как и через XMLHttpRequest
image.png185 Кб, 1920x1041
594 1570068
Аноны, пишу мувисерчер на реакте с легаси классами. Столкнулся с такой проблемой, что мне надо сделать кнопку, которая будет добавлять фильм в избранное из разных компонент. Как вы уже поняли я пользуюсь local state и я отлично понимаю, что подключение redux решило бы все мои проблемы, но я хочу сделать это на легаси.

Ничего лучше чем поднять стэйт на верх и передавать функцию через пропсы, которая будет добавлять в стэйт фильмы, я не придумал. Но все бы ничего, но это выглядит крайнего убого (скорей всего именно в моем случае). Взгляните пикрелейтед. Получается что у меня есть компонента MainRoute, которая вообще отвечает просто за роуты и в ней внезапно начинает появляться какой-то favouriteBar. Я уверен, что ни один разработчик этого не ожидает и это какой-то гавнокод.
595 1570075
>>70068

>Аноны, пишу мувисерчер на реакте с легаси классами.


Почему не хуки?

А вообще - раздели компоненты на компоненты-контейнеры, которые содержут логику и компоненты представления, которые эту логику рендерят.
596 1570100
>>69465

>>что за `= empty`?


>Значение по умолчанию.


Но в JS нет примитива empty, это переменная что ли?

>>что за `:Promise<void>`?


>Тип возвращаемого значения.


Promise, допустим, тип а <void> после него что такое?
597 1570103
>>70100
Это Typescript, долбоебина тупорылая.
598 1570114
>>69519

попробуй это: https://davidwalsh.name/websocket

>Socket.IO simplifies the WebSocket API and unifies the APIs of its fallback transports


>Let's take a look at the HTML5 WebSocket API: its use on the client side, server side, and an outstanding wrapper API called Socket.IO



как я понял, Socket.IO обёртка вокруг WebSocket API
599 1570156
>>70114

>>обёртка вокруг WebSocket API


Да, но у nodejs нет нативной поддержки вэб-сокетов. Только "классические" TCP сокеты.
Вот и гадаю я как реализованы вэб-сокеты в nodejs. На основе родного модуля ноды net.Socket. Или как то еще.
Надежду написать свою, самую примитивную реализацию вэб-сокета на нативной ноде я пока потерял.
600 1570162
>>70068
Почему ты называешь классы легаси? Они еще не депрекейтнуты. Это редакс потихоньку сползает в легаси, если уж на то пошло.

>я отлично понимаю, что подключение redux решило бы все мои проблемы


Ну так разберись как он работает и сделай так же.
601 1570207
>>70162

> редакс потихоньку сползает в легаси


А что сейчас моднее юзать?

мимо
602 1570217
>>70207
vue же
603 1570230
>>70068
React Context api.

>>70075

>Почему не хуки?


Слабо документируемое овверейтед говно и не нужно.

>>70207
Все еще модно, на самом деле. К сожалению.
Можно заменить на MobX или все на контексте делать (но контекст не заменяет собой полноценный стор).

>>70217
Советы уровня двачей
604 1570241
>>70230

>Слабо документируемое овверейтед говно и не нужно.


Отсталый. Всё там нормально описано. Просто ты отсталый и не разобрался в них. А там ещё асинк рендер подвозят, который многие давно долго ждали - ты тоже скажешь, что "гамно, ни нужна, я сказал!!1"?
605 1570250
>>70230

>Слабо документируемое овверейтед говно и не нужно.


Ват? Там прекрасная документация. Так и скажи что не разобрался.
606 1570266
Можно ли сделать как-нибудь, чтобы при открытии локального файла с диска подменялся адрес в адресной строке браузера?
607 1570272
608 1570282
>>70272
Охуенно. А как? Можешь пример привести, ну или погуглить за меня, потому что я нихуя не нашел.
609 1570283
>>70266
Нет
610 1570298
>>70282
Описать сложно, но тебе нужно капать в сторону расширения браузера. Браузеру можно предоставить доступ к чтению файловой системе(как и к адресной поисковой строке) и поставить хук на тот момент, когда файл открывается
611 1570302
>>70298
Спасибо, попробую.
image.png17 Кб, 688x248
612 1570316
Аноны, объясните почему на этапе 3 внезапно в стэйте появляется мой объект, хотя я еще ничего не вернул setState. На этапе 1 и 2 он пустой
613 1570319
>>70316
Удаляй этот говнокод и пиши заново.
614 1570321
>>70319
почему гавнокод, я не нарушаю идеи setState. Функция возвращает абсолютно новый стэйт, не мутируя старый.
615 1570323
>>70319

Ну кстати ты прав. Открывает кто-то метод добавления фильма в избранное и читает:

Создадим функцию "создать новый объект", которая принимает "предыдущее состояние" и "новый объект".

Шта? Чё за новый объект? Чё за старое состояние?

Нипанятна. Ниясна. Нипанятна (с) Гоблин.
616 1570330
>>70323
я согласен, что имена подобранны не верно, но с точки зрения типов, нет никаких ошибок. json - это объект, новый объект который нужно добавить в стэйт. setState ожидает новый стэйт, не мутированный, а абсолютно новый объект
617 1570331
>>70323
Ага, при этом newObj какого-то хуя отдаёт свой id, по которому потом добавляет себя в хуй знает куда. И метод названный createNewObj, почему-то возвращает newState. Просто полнейший пиздец, даже сложно понять, насколько тупоголовым нужно быть чтобы этого не видеть. Про Object.assign вместо спред оператора вообще молчу, особенно смешно это смотрится, когда в следующей строчке видишь деструктуризацию.
618 1570334
>>70330

>слабо типизированный динамический язык


>но с точки зрения типизации



Взлольнул.
619 1570356
>>70100

> Но в JS нет примитива empty, это переменная что ли?


Догадливый.

(Код писан мудаком, кстати)
620 1570357
>>70316
Когда ж макаки узнают про разницу shallow и deep copy.
(И про тулбелты типа ramda)
621 1570359
>>70316

Я думаю потому что метод console.log не ждет когда твой объект выведется в консоль, а сразу возвращает управление и начинает выполняться return. А так как ты в него передал ссылку на объект, то пока консоль возьмёт объект по этой ссылке ты уже его вернешь и там будет твоё новое состояние. Чисто моё предположение. Если бы это был PHP можно было бы вкорячить после console.log нечто вроде sleep и посмотреть на реакцию.

Попробуй вывести не this.state, а JSON.stringify(this.state)
622 1570360
>>70316
Бесмыслено в консоль смотреть после того, как все уже отработает - там будет последнее состояние объекта в рантайме, а не то, что было в точке вызова. Добавь точку прерывания и смотри.

...
console.log(this.state)
debugger
return newState
}
624 1570373
>>70357
А причём тут разница shallow и deep copy и

>внезапно в стэйте появляется мой объект


?
625 1570379
>>70373
При том.
Воткни debugger перед return и посмотри, что будет в стейте.
Развелось говнокодеров.
626 1570382
>>70379
Я не за компом сейчас.
Разницу между вышеперечисленным я знаю, но с той проблемой, как ОПа на моей памяти не сталкивался и object.assign тут ни причём, потоком управления реакта он никак не может управлять.
У ОПА скорее всего в том, что он вызывает функцию на месте. а не передаёт её в качестве коллбэка.
627 1570383
>>70382
Скорее всего проблема в том*
628 1570384
>>70373

Можешь прочитать про разницу между шалоу и дип копией

https://stackoverflow.com/questions/184710/what-is-the-difference-between-a-deep-copy-and-a-shallow-copy
629 1570390
>>70384
Бля, вот уж кого-кого, а меня учить жиэсу не стоит, побольше вас знаю, уж поверьте, тут у него в другом проблема, я выше написал
630 1570394
>>70390
this.setState((state) => createNewObject(state, json))
Вот так нужно, в его кейсе
image.png20 Кб, 667x251
631 1570396
Я решил свою проблему. Весь косяк был в том, что я передавал весь стэйт, а не часть стэйта. И как результат интересующий меня объект копировался по ссылке. Так как он же пустой находился в инициализации стэйта, то он мутировал.
632 1570401
>>70396
PS спасибо за ответы!
633 1570403
>>70382
>>70390
Реакту уже много лет, а самоуверенные макаки как не могли в иммутабельность, так и не могут до сих пор.
634 1570404
>>70396
Да блять, у тебя всё равно неправильно, ты вызываешь функцию на месте, эта функция совершенно лишняя, почему бы не сделать так
addFavouriteFilm({id) {
this.setState(state => ({favouriteFilm: id }))
}
?
635 1570407
>>70403
addFavouriteFilm({id) {
this.setState(state => ({...this.state, favouite: ...this.state.favourite, favouriteFilm: id }))
}
пофиксил, не заметил, что тебе в favourite нужно засетить
>>70403

>пук, всреньк


по делу ты так ничего и не сказал
636 1570408
>>70407
addFavouriteFilm({id) {
this.setState(state => ({...state, favouite: ....state.favourite, favouriteFilm: id }))
}
ещё раз пофиксил)
637 1570411
>>70404
>>70407
>>70408
Потому что ты, макак, даже не смог понять структуру его стейта.
favourite отображает id на дескрипрор фильма, а твой говнокод вообще дексриптор не содержит и favourite не модифицирует.

Как таких дебилов земля носит? Выучил, что в setState можно передавать updater вместо объекта, и срет этим во все посты.
638 1570414
>>70411
Да мне не особо нужно было понимать его структуру, у него там говнокод лютый, >favouriteFilm(json), даже сигнатура хуже некуда, нейминг никудышный

>Выучил, что в setState можно передавать updater вместо объекта, и срет этим во все посты.


Мань, я знаю про иммутабельность лучше, чем ты, уж поверь. Я уверен, что ты даже не знаешь, как просто можно обновить значение d в такой структуре данных, без мутации самого объекта
const obj = {
a: {
b: {
c: {
d: 4
}
}
}
}

так что закрой еблет)
639 1570417
А вообще, зачем я с вами спорю, если никто из вас не знает, что такое коллбэк и никто об этом чуваку не сказал, а ведь setstate работает асинхронно и в этом был весь косяк, а не то, что там object.assign копирует только один слой данных
640 1570418
>>70414

>Мань, я знаю про иммутабельность лучше, чем ты, уж поверь.


Но ты же три раза подряд обосрался и так и не решил исходную задачу. Что с того, что ты про стрелочные функции и spread syntax знаешь? Наука в руках обезьяны бессильна.
641 1570419
>>70417

>а ведь setstate работает асинхронно и в этом был весь косяк


Ты такой тупой, что прямо смешно.

https://reactjs.org/docs/react-component.html#setstate

> You may optionally pass an object as the first argument to setState() instead of a function:



setState(stateChange[, callback])

This performs a shallow merge of stateChange into the new state, e.g., to adjust a shopping cart item quantity:
642 1570420
ms@2.1.2
...
send@0.17.1
debug@2.6.9
ms@2.0.0
ms@2.1.1

Ставлю я, значит, пакет. У этого пакета в зависимостях пакет ms версии 2.1.2, а также пакет send версии 0.17.1. У пакета send в зависимостях пакет ms версии 2.1.1, а также пакет debug версии 2.6.9. У пакета debug в зависимостях пакет ms версии 2.0.0.
Что же делает этот незаменимый пакет ms, ТРИ разные версии которого я только что себе скачал? Наберите воздуха в грудь. Он переводит записанное строкой время в миллисекунды.

Какие же жаваскриптеры дегенераты.
643 1570422
>>70420

> Какие же жаваскриптеры дегенераты.



Пришел байтоеб, который не может не изобрести пару колес до обеда

ms('2 days') // 172800000
ms('1d') // 86400000
ms('10h') // 36000000
ms('2.5 hrs') // 9000000
ms('2h') // 7200000
ms('1m') // 60000
ms('5s') // 5000
ms('1y') // 31557600000
ms('100') // 100
ms('-3 days') // -259200000
ms('-1h') // -3600000
ms('-200') // -200
644 1570424
>>70417
this.setState(state => ({...state, favourite: {...state.favourite, id}}))
Доволен? Мне больше не о чем с тобой разговаривать, ты не знаешь базовых вещей даже. На мой вопрос ты так и не ответил, только язвишь всё. Язви дальше, оставайся токсичным дальше.
645 1570425
>>70422
Сколько разных версий ms у тебя в проекте, зумер?
646 1570427
>>70424
Ты же в четвертый раз обосрался.
Что будет в state.favourite[id]? Где, блять, дескриптор фильма?

(вот такой вод код-ревью для джуна-тормоза)
647 1570430
>>70425
Прости, дорогой, я энтерпрайзогосподин.
У нас собственный репо в котором у каждого пакета единственная тру-версия.
648 1570431
>>70427
ооокей, я с телефона, мне похуй)
this.setState(state => ({...state, [id]: state.favourite}))
649 1570433
>>70419
Я знаю про это
но это может приводить к неожиданным поведениям, как у опа
про батчинг обновлений в реакте ты ничего не слышал, конечно же
650 1570438
>>70431
Пятый обсрамс, потерял favourite.

... eще пару-тройку итераций, и мы таки дойдем до

this.setState({ favourite: { ...this.state.favourite, [json.id]: json }})
651 1570444
>>70433

>но это может приводить к неожиданным поведениям, как у опа


оп тупо модифицировал свойство-объект после shallow-copy состояния. Изменения, естественно, мгновенно отражаются и в "оригинале", и в "копии"

А если бы ты не был быдломакакой, ты бы прочитал доку на setState

> This form of setState() is also asynchronous, and multiple calls during the same cycle may be batched together.



и понял, что setState(object) точно такой же асинхронный, как и setState(updater)

Но ты же будешь упорствовать.
652 1570446
>>70438
Ну видишь, я как-то глазами даже не заметил, что в этом json'е находится структура самого объекта, я думал, что его уже перезаписывать нужно, типа ОП не знал, как правильно структуру в айдишник запихнуть.

Энивей ты клоун, только токсишь, если ты в этот раз, в этот час оказался более внимательным, чем я - то я тебя сердечно поздравляю)
653 1570448
Подождите, я читаю ваш срач но ещё не разобрался почему же исходный код опа не работал как он хотел.

Вот он вызывает функцию createNewObj и передает в неё по ссылке состояние и аргумент json

В функции он создает новоеСостояние и копирует в него староеСостояние, но это копия шалоу, то есть если у нас в состоянии есть какой-то атрибут x, который указывает на объект, то есть указывает на ссылку на объект, то скопируется ссылка, не объект по ссылке

Пруф:
$ node

> let a = {a1: 3};


> let b = {b1: a};


> console.log(b);


{ b1: { a1: 3 } }

> let c = Object.assign({}, b);


> console.log(c);


{ b1: { a1: 3 } }

> b.b1.a1 = 4;


> console.log(c);


{ b1: { a1: 4 } }

Потом он берёт id из аргумента json

И кладет в новоеСостояние.избранное.id аргумент json, то есть кладет туда ссылку на аргумент json

Но ведь он сделал шалоу копию, то есть у него что новоеСостояние.избранное, что староеСостояние.избранное - это один и тот же объект и когда он пишет новоеСостояние.избранное.id = аргумент json то он меняет (или добавляет) атрибут и в новоеСостояние и в староеСостояние.

Верно?

Если верно, то как ему надо поступить?
653 1570448
Подождите, я читаю ваш срач но ещё не разобрался почему же исходный код опа не работал как он хотел.

Вот он вызывает функцию createNewObj и передает в неё по ссылке состояние и аргумент json

В функции он создает новоеСостояние и копирует в него староеСостояние, но это копия шалоу, то есть если у нас в состоянии есть какой-то атрибут x, который указывает на объект, то есть указывает на ссылку на объект, то скопируется ссылка, не объект по ссылке

Пруф:
$ node

> let a = {a1: 3};


> let b = {b1: a};


> console.log(b);


{ b1: { a1: 3 } }

> let c = Object.assign({}, b);


> console.log(c);


{ b1: { a1: 3 } }

> b.b1.a1 = 4;


> console.log(c);


{ b1: { a1: 4 } }

Потом он берёт id из аргумента json

И кладет в новоеСостояние.избранное.id аргумент json, то есть кладет туда ссылку на аргумент json

Но ведь он сделал шалоу копию, то есть у него что новоеСостояние.избранное, что староеСостояние.избранное - это один и тот же объект и когда он пишет новоеСостояние.избранное.id = аргумент json то он меняет (или добавляет) атрибут и в новоеСостояние и в староеСостояние.

Верно?

Если верно, то как ему надо поступить?
654 1570449
>>70446

> не заметил (в трех строчках кода)


> думал


> типа


Какое милое чирикание после кукарекания в >>70414
655 1570452
>>70444
Но он гарантирует ожидаемое поведение стейта, вариант с коллбэком предпочительнее, ибо каждый сетСтейт выполнится корректно

я бы посмотрел, как ты таким вариантом обновляешь корзину у юзера и в итоге он покупает 100500 товаров за неебическую сумму как за 10 товаров, т.к срабатывал батчинг

https://stackoverflow.com/questions/48209452/when-to-use-functional-setstate
656 1570453
>>70449
А на вопрос ты так и не ответил.
657 1570455
>>70448
Верно.

Варианты:

1. использовать тот факт, что setState делает shallow merge, и явно скопировать (только те) вложенные свойства которые перезаписываются (favourite)

ОП запостил, кстати, рабочий вариант >>70396
- та же идея, что и в >>70438, просто НЕИЗЯЩНО

2. Если обновлений много в разных местах и на разных уровнях, можно написать пачку spread operators типа -
{...state, favourites: { ...state.favoriles, [json.id]: json }}
только это потом поддерживать на больших стейтах будет очень больно.

3. или воспользоваться умной библиотекой для иммутабельности assocPath(["favourites", json.id], json, oldState).

Если хочется, чтобы все тормозило, то можно deep copy делать.
socker io.png49 Кб, 1224x664
658 1570456
>>70156

есть такой вариант @ https://dzone.com/articles/everything-you-need-to-know-about-socketio

>To establish the connection, and to exchange data between client and server, Socket.IO uses Engine.IO. This is a lower-level implementation used under the hood. Engine.IO is used for the server implementation and Engine.IO-client is used for the client.



> Engine.IO



https://github.com/socketio/engine.io
659 1570457
У ОПа есть key-value массив:

favorites {
1 => объект1,
2 => объект2,
...
}

Чё ему по сути надо сделать?

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

Для этого ему надо скопировать favorites, при этом скопируется его структура, но все объекты (объект1, объект2) скопируются по ссылке, а не по значению

Затем ему надо просто отправить в setState новый пустой объект, у которого единственным атрибутом будет новый favorites

let newFavorites = Object.assign({}, this.state.favorites);
if (json.id in newFavorites) return {}; // уже есть в избранном
newFavorites[id] = json;
return { favorites: newFavorites };

Так что ли? Ну типа он свой вопрос решил не через Object.assign({}, this.state.favorites), а через {...this.state.favorites} хер знает что эффективнее и в чем разница.
660 1570459
>>70455

Спасибо, разобрался.

Блин всё просто было.
661 1570460
>>70452
Дубина, проблема опа не в этом.

И уж хранение корзины в локальном стейте компонента вместо стора - это пиздец.

(Да и в целом setState вместо управления состоянием - это 90% шансов на пиздец)
662 1570461
>>70453
В этих жалких оправданиях был вопрос?
663 1570463
>>70461
Успел за час погуглить про хелперные функции, а если бы не я - так бы и страдал бы дальше spreadhell'ами.

>(Да и в целом setState вместо управления состоянием - это 90% шансов на пиздец)


setState это вообще архаизм, нормальные люди хуки юзают.
664 1570465
>>70460

>Дубина, проблема опа не в этом.


Одна из проблем.. Скорее всего человек не знает про коллбэки, его функция вызывается на месте, пускай и возвращает объект(надеюсь ты знаешь, что функции в жс - это объекты первого класса.) Это может привести к ОЧЕНЬ неожиданным результатам.
665 1570467
>>70463

>Успел за час погуглить про хелперные функции, а если бы не я - так бы и страдал бы дальше spreadhell'ами.


Ты вообще о чем? О ramda из >>70357 или о голосах в твоей голове?
666 1570470
>>70465
Это да, это точно. Надо рассказать про коллбеки, про хуки, пять раз подряд обосраться в примерах и так и не ответить на изначальный вопрос.
667 1570473
>>70467
Так ты, дубина, тоже какой невнимательный, оказывается.

Я спрашивал, знаешь ли ты способы эффективно изменить глубоко вложенное свойство объекта без мутации. Оператор "..."(spread) не панацея, т.к глубоко вложенные свойства менять с ним жутко неудобно. Как вариант - это решается иммутабельными библиотеками, типа immutable.js или же хелперными функциями, типа immer(ты привел assocPath, это тоже как вариант, с рамдой я особо не работал зато достаточно повозился с rxjs

Можно и свою рекурсивную реализацию для этого написать, делается это не сложно.
668 1570474
>>70473

>Так ты, дубина, тоже какой невнимательный, оказывается


Дубина, я эту твою ветку просто прогнорировал, как бесполезную.
Что толку беседовать о сложных вещах с человеком, который в трёх строчках кода опа заблудился.
669 1570475
Читаю про вашу иммутабельность и мне кажется что я где-то уже всё это видел. Кажется в 90-е или 00-е годы в функциональщине.
670 1570476
>>70470
Ок, смотри ты не обосрись, когда я попрошу на маркерной доске у тебя написать реализацию AVL дерева)
671 1570477
>>70474

>иммутабельность


>сложные вещи


Всё с тобой ясно, аутист.
672 1570478
>>70475
В ФП иммутабельность повсеместно используется)
673 1570479
>>70473
Прости дорогой, я понимаю, что ты сейчас протянешь разговор в дебри подробностей, чтобы забыть о том, как ты обосрался на тривиальном примере.

Не делай этого. Это анонимная доска. Уходи, переживи это унижение и возвращайся завтра - все будет хорошо. Не надо самого себя закапывать все глубже и глубже. Теория без опыта мертва, и ты это только что показал
674 1570480
>>70477
Randa точно сложнее, чем ms с isArray, а от них уже зарево стоит.
675 1570482
>>70475
А уж оператор if так вообще с бородой
676 1570483
>>70479
Хех, ну, как говорится вчужом глазу соломину видеть, в своём — бревна не замечать. Пошёл-ка ты нахуй, токсичный мудак. Пытался быть вежливым с тобой, но ты неисправимая мразь.
677 1570485
>>70476
Ахаха, да я могу любой код написать - если ты в трёх строчках запутался, то уж реализацию дерева точно не поймешь.
678 1570487
>>70477
Для дошколят, которые умножение не знают, квадратные уравнения сложные.
Для макак, не могущих в доки на setState, обсуждение иммутабельности будет сложным, потому что базовые когнитивные способности отсутствуют.
679 1570488
>>70483
Ты не вежливым пытался быть, а тупо поддеть. Ключевое слово - тупо.
Так получай говна за шиворот.
680 1570489
>>70475
И...?

Это как что-то плохое прозвучало?
681 1570490
>>70483

>Пытался быть вежливым с тобой,


>>70414

> Я уверен, что ты даже не знаешь,


> Так что закрой еблет


Я серьезно не понимаю, ты такой тупой, что считаешь это вежливым вопросом, или просто реалистично прикидываешься имбецилом, чтобы откосить от стройбата?
682 1570491
>>70489
Недостаточно смузи :(
683 1570493
>>70465
я тоже изучаю реакт, я читал про коллбэки, но я не совсем понимаю >>его функция вызывается на месте.

А где она должа вызываться, видимо я не совсем хорошо освоил эту тему. Или напиши код, как оно должно быть.
684 1570541
>>70420
В голос. Хотя чего удивляться, если у жопоскриптеров однострочные библиотеки - самые популярные.
685 1570542
>>70430

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



В голос.
686 1570543
>>70457
Он долбоеб и накручивает дерьмо на вал, вместо того чтобы каждому объекту дать булевое свойство isFavourite и уже работать с ним, а не плодить копии объектов.
687 1570554
>>70542
Ты что-то имеешь против гугловой монорепы?
688 1570555
>>70543

> плодить копии объектов



Ты серьезно думаешь, что
favourites[film.id] = film
создаст копию объекта?
689 1570560
>>70555
Object.assign создаст, а в твоём варианте будет лишняя ссылка.
690 1570564
>>70543

Я думаю дело тут не в копировании, которого конечно нет.
А в том что, например, чтобы отобразить в интерфейсе звездочку у избранного фильма. Ему нужен обработчик из родительского компонента, который имеет инфу о юзере. Типа я рендерю компонент отображения фильма и мне надо решить показывать div с картинкой звезочкой или нет. А как? Надо проверить нет ли моего id у юзера в ищбранном. Получается зависимость.

Или это норм?
691 1570565
>>70560

Еще вчера выяснили что Object.assign создает копии не объектов, а структуры объектов. Ты осторожней выражайся :3 А то щас тебя растерзает иммутабельщик
692 1570566
>>70560

>Object.assign создаст


Не, биллиардный шар-то тоже проглотить можно. Но зачем?
693 1570569
>>70564
А потом весь это бордель масштабируется на много коллекций (избранное, хочу посмотреть, рекомендации и прочее) и модель фильма засирается 1001 флагом? Спасибо, Шахерезада, такие сказки нам не нужны.
694 1570572
>>70565

Да похуй мне, что вы там макаки выяснили. У тебя в сам метод новый объект передаётся, новый или старый в который копируются собственные свойства другого объекта. В методе выше именно создаётся новый объект Object.assign({} - вот в этом месте.
695 1570574
>>70572

Ок. Создается новый объект и в него копируется структура структура старого.
696 1570575
>>70569

Хм. Разумно мыслеш.
697 1570577
>>70572
Дубина, дескриптор фильма никогда не попадает в object.assign, только объект состояния.
698 1570581
>>70577
Какой нахуй дескриптор фильма, ты можешь на человеческом разговаривать, макака, я тебя не понимают.
>>70574
Это не Ок, потому что срёт в память созданием ненужных объектов, которые сборщик мусора соберёт не сразу.
699 1570582
>>70581
Прочти >>70543 с чувством, толком и расстановкой.
Посмотри на код >>70316
Обдумай.

Если после этого все еще хочешь побыть грелкой для Тузика, приходи снова.
700 1570590
>>70582
Да я уже понял, что нет смысла разговаривать с жопаскрипт макакой, для которой работа с памятью это что-то магическое, что само собой происходит и о чём можно не беспокоиться.
701 1570593
>>70590
Слушай, ты, прыщ на жопе мироздания... ты ведь захотел сохранить хорошую мину при плохой игре, правда? Или правда не понимаешь, что объект состояния должен пересоздаваться при каждом обновлении чтобы кишочки React и всякие shouldUpdate нормально работали, а вот объекты, на которые он ссылается - нет?
702 1570598
>>70593
Я понимаю, что пытаюсь разговаривать с макакой, которая прочитала документацию к реакту, думает, что всё поняла и теперь возомнила себя сеньором с 20-ти летним опытом, который пилит свой мувисёрчер, лол.
703 1570607
704 1570611
>>70593

По-моему он с этим не спорит и вообще не про это говорит.

Смотри.

Анон >>70543 пишет:

> а не плодить копии объектов


то есть он либо думает, что тот код создает копию фильма, либо он просто не правильно выразился

Другой анон >>70555 уточнил у него:

> Ты серьезно думаешь, что favourites[film.id] = film создаст копию объекта?



На что анон >>70560 отвечает:

> Object.assign создаст


то есть говорит, что не этот код (favourites[film.id] = film) создаст новый объект фильма, а Object.assign

Чувствуется что после этого Другой анон уже начинает закипать, потому что новый-то объект он создаст, но не фильма

А я такой пишу >>70565

> Object.assign создает копии не объектов, а структуры объектов



Но это не так, поэтому иммутабельщику стало ещё хуже и

он уже начинает орать >>70572

> Да похуй мне, что вы там макаки выяснили. В методе выше именно создаётся новый объект Object.assign({} - вот в этом месте



И тут ты такой выходишь >>70577

> Дубина, дескриптор фильма никогда не попадает в object.assign, только объект состояния



Иммутабельщик уже совсем ахуевает >>70581 и пишет

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

704 1570611
>>70593

По-моему он с этим не спорит и вообще не про это говорит.

Смотри.

Анон >>70543 пишет:

> а не плодить копии объектов


то есть он либо думает, что тот код создает копию фильма, либо он просто не правильно выразился

Другой анон >>70555 уточнил у него:

> Ты серьезно думаешь, что favourites[film.id] = film создаст копию объекта?



На что анон >>70560 отвечает:

> Object.assign создаст


то есть говорит, что не этот код (favourites[film.id] = film) создаст новый объект фильма, а Object.assign

Чувствуется что после этого Другой анон уже начинает закипать, потому что новый-то объект он создаст, но не фильма

А я такой пишу >>70565

> Object.assign создает копии не объектов, а структуры объектов



Но это не так, поэтому иммутабельщику стало ещё хуже и

он уже начинает орать >>70572

> Да похуй мне, что вы там макаки выяснили. В методе выше именно создаётся новый объект Object.assign({} - вот в этом месте



И тут ты такой выходишь >>70577

> Дубина, дескриптор фильма никогда не попадает в object.assign, только объект состояния



Иммутабельщик уже совсем ахуевает >>70581 и пишет

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

705 1570626
>>70611

>По-моему он с этим не спорит и вообще не про это говорит


Да тут целая мыльная опера, и хрен поймешь, за красных он, или за белых.

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

И кто такой иммутабельщик?
706 1570634
>>70611
При чём здесь твой фильм, хуесосина тупорылая. У тебя в метод Object.assign передаётся объект, который в этом же месте и создаётся, замени {} на new Object() чтобы тебе понятней было. Если ты 200 раз вызовешь метод, то у тебя создастся 200 таких объектов в куче.
707 1570638
>>70634
О великий прыщ-на-жопе, просвети же нас, как без создания нового объекта создавать новое состояние для Реакта.

inb4: хуячить изменения напрямую в стейт - до такого еще тред не докатился.
708 1570647
>>70638
Использовать уже существующий объект, очевидно.
709 1570652
>>70634

Да я с этим не спорю.

Просто изначально анон писал о фильме. А потом всё скатилось в выяснение того, что же делает Object.assign, но что он делает ты и раньше уже объяснял.
710 1570653
>>70647

>> inb4: хуячить изменения напрямую в стейт - до такого еще тред не докатился.


> хуячить изменения напрямую в стейт


Деграданты. Кругом одни деграданты.
711 1570708
>>70647
Бля, браток, иди во вью тред
712 1570710
Откройте для себя мемоизацию и жить станет легче, макаки)
713 1570745
>>62152 (OP)
Сап, как дела в фронтенде продакшене с версткой?
Насколько много вам приходится верстать, отрываясь от функциональщины и штамповки редюсеров?
Я вайтишник, делаю заказ для манки-бизнеса, и пиздос как от верстки трясёт, мозг вытекает от монотонности
714 1570750
>>70745

>Насколько много вам приходится верстать, отрываясь от функциональщины и штамповки редюсеров?


Очень часто.

>пиздос как от верстки трясёт, мозг вытекает от монотонности


Потому что ты не умеешь верстать и вёрстка часто приносит когнитивные диссонансы, т.к. интуитивно не всегда работает так, как задумывалось. Как научишься - "трясьти" не будет.
715 1570752
>>70750

>Потому что ты не умеешь верстать и вёрстка часто приносит когнитивные диссонансы, т.к. интуитивно не всегда работает так, как задумывалось. Как научишься - "трясьти" не будет.


И как же научиться? Тупа хуячишь интуитивно, спотыкаясь на ошибки и правя их?
716 1570761
>>70752
Ну не совсём. Если чисто интуитивно - ничего не усвоишь и постоянно будешь натыкаться на одни и те же грабли. Вёрстка - не такая уж и тривиальщина, как многие думают, иначе бы никто от неё не "трясся". Хуярь с умом. Вот ты знаешь например, как по дефолту работает расчета ширины и высоты элемента? Умеешь переопределять это поведение?
717 1570767
>>70761

>Хуярь с умом.


Хз, курсы что ли пройти какие

>Вот ты знаешь например, как по дефолту работает расчета ширины и высоты элемента? Умеешь переопределять это поведение?


Только знаю, что на 100% расстягивается и всё
718 1570777
>>70767

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

Не просто нужно курсы проходить, а нужно всё время их проходить, чтобы всё время учиться чем-то новому, иначе ты как специалист сначала отстанешь от жизни, а потом будешь никому не нужным, как я. Мне вот больше нравилось играть в вов, вместо того чтобы изучать новое по профессии. А хули? И так ведь платят. Ну да, седня платят, а завтра? А через год?
719 1570810
>>70777
Не ожидал такого
И как, платят ещё хоть?
720 1570839
Второй день срётесь, макаки.
721 1570860
>>70810

Да, но когда-нибудь перестанут и что тогда? И будет как в басне Крылова про муравья и стрекозу.
722 1570861
Срутся и тред не перекатывают.
723 1570865
>>70861
Он нам нахой не нужен, тред ваш.
724 1570866
Посоветуйте плиз где поднять скилл верстки.
html академи и прочие инфобизнесмены на мимо
725 1570873
>>70866
хауди хо посмотри
726 1570879
>>70873
что конкретно? этот инфобизнесмен еще хуже чем хтмл академи
никакой структурированности, одни ролики вы стиле "как сверстать шаблон за 1000500 долларов в наносекунду"
727 1570883
>>70879
он гений мира фронтенд, не говори про него так
728 1570887
>>70883
мож он и гений, но обуччающего контента у него нихуя нет. Одни "мотивационные" ролики.
Сколько тут не спрашивал, тут все срутся на тему реакта.
А меж тем в большинстве вакансий препроцессоры цсс3 хтмл5 идут первой строчкой и в первую очередь
Так как же поднять эти скиллы?
Гайдлайн хороший есть?
729 1570895
Что делать после мувика? Куда дальше двигаться?
730 1570905
>>70895
собесы
731 1570927
>>70887

>А меж тем в большинстве вакансий препроцессоры цсс3 хтмл5 идут первой строчкой и в первую очередь


>Так как же поднять эти скиллы?



Cейм, верстал всякую хуету, но по макету не вывожу сильно, расхождения, про пиксель перфект ваще молчу.
Реквестирую гайды, как можно улучшить верстку
732 1571188
Ананасы, нужна какая-нибудь простая cms которую можно засунуть на локальный сервер и туда уже запихать пару html + css файлов. Хочу чтобы все это висело на локалхосте и туда редиректило с пары сайтов. То есть открывается сайт Х --- редиректит на локалхост и открывает html файл с компа. Батя заебал смотреть пердильные коммедии на левых сайтах, хочу покосплеить роскомнадзор с вайт-листами.
733 1571222
Возможно ли забрать изображение с css background-image. Не url, а именно уже загруженное изображение?
image.png36 Кб, 1015x451
734 1571227
Что происходит в этом фрагменте кода?
735 1571254
>>71227
Функция Y возвращает результат функции которая принимает в аргумент саму себя. Результат этой внутренней функции будет результат вызова функции аргумента f которая принимает фукнцию которая возвращает вызов первой функции которая принимает сама себя.

Вообщем это функция которая принимает функцию, и в этой функции можно вызвать функцию аргумент чтобы вызывать эту фнукцию еще раз. Получается рекурсивный вызов функции аргумента.
736 1571335
>>71222
Получаешь таки урл сначала, а потом по нему создаешь изображение. Хз как там правильно. Точно можно получить сорс через canvas, возможно как-то можно получить и без него.
737 1571345
>>71222
попробуй html2canvas
738 1571499
Начинаю вкатываться в реакт и назрел такой вопрос - а нужно ли реактогосподину знать ООП? И вообще, если я ориентируюсь на MERN-стек, стоит ли уделять внимание этой хуетене? Меня прямо трясет от флешбеков, когда я в шараге дрочил джаву.
739 1571571
>>71499
Комбинация ООП и системы типов и синтаксиса в яве просто фантастически уебищна. Учить ООП надо, но практики явы тащить не надо.
740 1571657
>>71499
Что ты подразумеваешь под учить ООП? Ты в любом случае на жс будешь затрагивать элементы ООП даже не задумываясь над этим.

Если очень сильно постараться, ты можешь все написать функционально или процедурно. Но это надо очень сильно постараться и знать довольно много теории.
741 1571696
>>62152 (OP)
Ёп вашу мать, перешёл по ссылке в оп пике, обосрался, у меня наушники сняты были, пол офиса бы ахуело
image.png251 Кб, 450x253
742 1571697
Суп скриптонитыч.
Пишу по фану бота в дискорде. Прикрутил напоминалку через setTimeout(), всё было заебись.
Но решил я сделоть ещё и забывалку, чтобы можно было отменить задачу.
Прикрутил глобал переменную, которой присваиваю setTimeout(), чтобы иметь возможность отменить через clearTimeout(timer) из другой функции.

Ну и ясное дело, чем всё закончилось - теперь у бота только одна ячейка памяти под напоминалку, которую может стереть любой юзер.

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

Бот на node.js + diiscord.js, мб у кого был опыт/подскажет чё.
743 1571705
>>71697
кажется мне надо заебурить массив из парных элементов, один из которых - ник, а вторая - напоминалка
image.png604 Кб, 800x800
744 1571818
>>71705
короче заебенил я let timer = {},
получаю ник и ебошу в timer[author] = setTimeout()

Теперь у меня персональные напоминалки, что кру
745 1571829
>>71818
>>71705
>>71697
Сайт для 18+, ты знал?
746 1571835
Аноны, кто шарит в node.js - у меня возник такой вопрос - вот допустим я со стороннего сайта собираю всю его разметку и файлы.
К примеру с помощью модуля http.request(options[, callback]) или
http.get(url[, options][, callback]).
Тоесть я получаю из этих методов объект типа stream, который потоком льет мне разные данные.
И текст, и бинарные данные(картинки и прочее). Где почитать - а как парсить этот поток? как определить тип данны? Как определить допустим начало и конец бинарного файла в потоке?
Прошу инфы и сурс по этому вопросу.
image.png91 Кб, 225x225
747 1571910
>>71829

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


18- ты хотел сказать?
748 1572001
>>71657

> Что ты подразумеваешь под учить ООП?


Паттерны, в первую очередь

>Ты в любом случае на жс будешь затрагивать элементы ООП даже не задумываясь над этим.


Например? Прототипы это понятно, но что ещё? Классы в реакте далеко не ООП, энивей.

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


Просто я не представляю, как в реакте можно использовать ООП, особенно если ты пишешь на хуках.
749 1572064
>>71829
Злой ты, человек обрадовался (
751 1572165
>>72001
Концепция объектов в рамках ООП теории появилась. Это его элемент. Без объектов сейчас разве-что что-то низкоуровневое на С пишут.
752 1572339
>>72116
>>71835
Двачую request-promise + cheerio. Ещё можешь puppeteer использовать.
753 1572342
>>72165
Это не так. И даже если бы это было так, то все равно использовать объекты в коде != использовать ООП. Объект -- просто структура данных, ООП -- парадигма.
754 1572354
>>72116
>>72339
Да мне больше бы теоретические какие то основы. Мне не для практической задачи - а чисто учебный велосипед. Я в этой области не понимаю нихуя.

Про сheerio знаю, даже пытался код смотреть - но не особо понял.
755 1572394
>>72354
Разницы особой не будет, потому что это Node.js. Для теоретических основ тебе нужно что-то более низкоуровневое, например, C++ или, на крайний случай, C#.
756 1572419
>>72394
Но сheerio когда сдирает данные с другого сайта - получает солянку из текста и бинарников всяких.
Эта солянка льется на сервер потоком - как то же этот поток парсится, сheerio понимает что - это картинка, это текст, это ну допустим гифка. Определяет MIME типы как то и прочее - прочее.
Вот эту тему хотелось бы для себя развернуть.
757 1572425
>>72419
Тебе с ответом от сервера приходит заголовок Content-Type с указанием типа данных. Также и с типом кодировки, например, content-encoding: gzip И со всем другим тоже самое. Для этого и придумали протоколы, чтобы не нужно было гадать что и откуда ты принимаешь, и как с этими данными работать.
758 1572466
Сап трудягам.

Есть у кого-нибудь пример open source PWA приложения, чтобы нормально работало на десктопе, андроиде и ебать его в рот IOS?

Хорошие примеры PWA без исходников подойдут тожe - нужно хотябы оценить, что оно на данный момент умеет.

Планирую набросать кое-какой сервис, для начала, чтобы прощупать спрос и получить фидбек - поэтому нецелесообразно разрабатывать под нэйтив.
759 1572727
А че тред падохнул то? Кто хочет мой файлообменник заценить?
maxresdefault.jpg75 Кб, 1280x720
760 1572733
>>62152 (OP)
Двач, помоги вкатиться в JS

Дошел до методов массивов на learn.javascript.ru ( https://learn.javascript.ru/array-methods ) и Я НЕ ПОНИМАЮ find и findIndex.

Как работает этот пример?

let users = [
{id: 1, name: "Вася"},
{id: 2, name: "Петя"},
{id: 3, name: "Маша"}
];
let user = users.find(item => item.id == 1); // Что это за стрелочка???
alert(user.name); // Вася
761 1572734
>>72733
Проходи мимо, потом поймешь. И не унывай
мимо знаю о чем говорю
762 1572735
>>72734
Ну хоть скажите, что это за стрелочка let user = users.find(item => item.id == 1);
763 1572736
>>72733
Функция
764 1572737
>>72733
return
765 1572738
>>72736
Разве не должно быть так? item = () => item.id == 1
766 1572741
>>72735
>>72738
>>72736

ААААААА, я все понял
Как же это было сложно, чему так сложно?
767 1572743
>>72738
Должно быть так = (item) => {
return item.id === 1
}
768 1572744
>>72743
Тогда уж так

const condition = (item) => {
return item.id === 1;
};
let user = users.find(condition);
769 1572745
>>72743
>>72744
Спасибо, анончики :3

А чему у вас строгое сравнение?

>item.id === 1;


Что не так с == ?
770 1572747
>>72745
Лучше сравнивать строго, т.е. с учетом типа, не огребешь в ошибках приведения типов
771 1572763
>>72745
Долбоебы замедляют свою жопаскрипт парашу при любой возможности, вот почему.
772 1572766
>>72763
Чему замедляют?
773 1572769
>>72766
Потому что помимо значения проверяется еще и тип данных.
774 1572771
>>72769
А если там будет на 1 а строка, що делать?
12324534524.JPG32 Кб, 737x241
775 1572774
>>72763
ой всё
776 1572784
>>72771
Не будет, потому что ты везде написал parseInt и parseFloat
777 1572789
>>72774
Это как завести и прогреть какой-нибудь ВАЗ, после чего засечь время и замерить за сколько она до 100 км/ч разгонится, а потом сравнивать это время с разгоном до 100 км феррари, при этом запуская таймер до того как она из гаража выедет.
778 1572791
>>72789
чего блять?
779 1572793
>>72791
Ты если замеряешь, то замеряй хотя бы в разных вкладках, дурачок.
12324534524.JPG66 Кб, 548x531
780 1572795
>>72793
чего еще придумаешь?
781 1572797
>>72763
Охуительные истории.
782 1572811
Что надо знать, чтоб на стажировку напроситься? Ванилу более-менее изучил, сейчас node js осваиваю
783 1572818
>>72811
Реакт.
784 1572822
>>72818
А angular, TypeScript нужны?
785 1572841
Почему так популярен реакт? Все хотят SPA? MPA - всё?
786 1572845
>>72822
Тайпскрипт не помешает, Ангуляр потихоньку умирает.

>>72841
Мгновенно перерендерилось vs Ждать загрузки страницы с нуля.
787 1572847
Что надо знать, чтоб на стажировку напроситься? Сделал мувисерчер, канбан, расширение для гугла, файлопомойку
1579024987458.png85 Кб, 720x1280
788 1572852
Пузырь лопнул
789 1572863
>>72852

>сайт номер 1 для поиска работы


>не может определить Javascript как запрос относящийся к программированию



Вся суть IT индустрии. Ну ничего, зато аджайл практики внедряем, проводим митинги, тимбилдинги и прочую хуету.
790 1572877
>>72852
>>72863
Хоть один из вас написал в поддержку хедхантера, или вы только на дваче можете сраться?
791 1572881
>>72877
Мне вообще похуй, какая разница? Я просто пошутил
792 1572882
>>72881
Ок.
sage 793 1572884
>>72877
О чём тут в поддержку писать? Кем-то разве было заявлено, что подсказки в поиске выдаются соответственно вакансиям? Нет, они выдаются просто дополняя введённый запрос популярными словами.
794 1572891
>>72845

А как же SEO?
795 1572900
>>72877
Бабуль, ты чего тут забыла? Тех. поддержка и разработчики это не одни и тоже. Тех. поддержке похуй на разрабов, а разрабам на тех. поддержку, никто и пальцем не пошевелит ради того чтобы исправить такую "мелочь".
796 1572904
>>72884

>кем-то разве было заявлено



Да, было. Автодополнение подразумевает дополнение релевантной информацией, а не случайной.
797 1572912
>>72877
А они то не знают
20190929095249.jpg64 Кб, 1253x173
798 1572922
>>72863
>>72852
Вот, кстати, сайт для поиска работы не #1!
Вся суть бизнеса - главное кричи громче, что ты топ в своей сфере, а как там на самом деле - похуй.
799 1572931
>>72900

> это не одни и тоже


Конечно нет. "Клиенты" обращаются к техподдержке, а техподдержка уже обращается к разрабам. Напрямую написать разрабам никто не даст. Вообще, разрабы - это следующая линия поддержки

> Тех. поддержке похуй на разрабов, а разрабам на тех. поддержку


Если это какой-нибудь ООО Вектор, то да. Но не здесь.
800 1572939
>>72891
для seo есть SSR
801 1572953
>>72891
А что сео? Гугл тоже не на месте сидит и тоже научился запускать скрипты, а не тупо бегать по статической странице в поиске кейвродов.
802 1572984
>>72939
SSR, от части, да, нужен для того, чтобы покравать seo (генерация html на стороне сервера), но и так же у SSR есть куда других полезных свойств, о которых многие почему-то умалчивают.

Самый простой и примитивный пример - это first-meaningful-paint, т.е. клиенту не нужно самому в браузере "рендерить / раскрывать" html, т.к. он уже полностью отдался с backend'a => отображение первых элементов будет на порядки быстрее, нежели чем в only client mode.

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

Ииииии т.д.
803 1572986
>>72984
chunk files*
804 1573064
Аноны, где-то пол года учу JS сильно задрачивая каждую тему по учебникам you don't know JS, дополняя все множеством просмотренных видео. Буквально часами вникаю во все эти примеры, пытаясь понять все до конца. Собираюсь специализироваться в будущем на Реакте. Вопрос в том, нужно ли мне продолжать также дотошно во все это вникать, ведь, как мне быть кажется, это никому нахуй не нужно. У меня знакомый пару лет назад устроился на работу после курса юдеми блеать, а мне все кажется что ещё слишком многого не знаю. Почти потерял всю мотивацию, так как чем глубже вникаю в язык, тем больше мне кажется, что все мои знания поверхностны.
805 1573066
>>73064
Есть проекты реализованные?
806 1573067
>>73066
Да нихуя не доделываю до конца, пара незаконченных, но они почти готовы. Обычно когда нужно что-то сделать, например ajax, я начинаю зарываться в тему целиком, хотя все давно через axios сделано порой строчек кода, но меня не отпускает, пока я не исследую все до конца. В каждой теме нахожу отсылки к другим, и начинаю дрочить их, забывая о проектах.
807 1573068
>>73064

>нахуй не нужно


this
особенно в реакте
808 1573196
>>73064
забей на ванильный жс, сделай какой нибудь мувисерчер\туду на реакте и иди работать
809 1573233
>>73064

>накомый пару лет назад устроился на работу после курса юдеми



Вот это самая главная ошибка вкатывальщиков - смотрят на прошлы опыт своих друзей. Ключевое слово в твоей фразе "пару лет назад". Да, пару лет назад какого-нибудь паршивого курса было достаточно, сейчас от тебя нужны не только идеальные знания ванильного JS, но еще и React + Redux, а также MongoDB.
810 1573252
>>73196
Еще чего расскажешь?
мимо >>72847
811 1573261
>>73252
А что ты хочешь? Я сделал туду, написал резюме и пошел работать, мне не понять желание анонов выучить все кишки языка и вкатываться по полтора года
812 1573441
>>62152 (OP)
анончики, поясните как лучше и вообще как можно сделать. Каждые 5 секунд с api мне приходят данные. Мне нужно посчитать разницу между предыдущим числом, которое пришло 5 секунд назад, и тем, которое пришло сейчас. Как это сделать? Есть мысли, что тут как-то надо использовать замыкания, но пока хз как. Реакт если что!
813 1573447
>>71697

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


>


Храни переменную в localStorage
814 1573461
>>73233
Монго-то нахуя?
815 1573484
>>72789
>>72793
Долбоеб, вскройся
816 1573485
>>73233
Нахуй вы тут высираетесь долбоебы?

Вкатился с тудушкой
817 1573486
>>73441
Съеби на тостер, а лучше вскройся
818 1573497
Ну че, зацениваем мой файлообменник?
819 1573521
>>73485
Ну и как оно? Нормально за 30к работается?
820 1573533
>>73521
Хз, тебе виднее, у меня с 70к зп началась
821 1573546
822 1573547
>>73546
Записывайся на показ. Билет - 300 рублей
823 1573550
>>73547

> 300


Отсоси у программиста
824 1573587
>>73521
Лучше, чем вкатываться несколько лет
825 1573659
https://youtu.be/ip66mO6sdf8
Ебать я прозрел
826 1573660
Блядь, как научиться нормально верстать? Я с джаваскриптом и рект/редаксом меньше ебся. СУКА.
827 1573663
>>73660
и нужно ли оно так сильно?
смотрю курсы академии, а там больше части вода про доступность, нарезку фотографий в фотошопе резиновая хуиновая верстка, или может все же туду проекта на реакте будет достаточно?
828 1573664
>>73660
без задней мысли
829 1573692
>>73663
Как можно не знать верстку, это же супер легко. Те кто пишут на JS обязательно должны знать как работает верстка. ОБЯЗАТЕЛЬНО СУКА.
830 1573702
>>73692

> это же супер легко


вот и посоветуй как прокачать скилл верстки.
я не говорю что я совсем ее не знаю, но иногда выбешивают блочные модели и картинки просто пиздец.
831 1573720
как обычно... спрашиваешь в этом треде как изучить нормально верстку, и все затухает. А до этого все выебываются как легко это, знать верстку.
832 1573739
>>73692

> Pixel perfect


> Одни свойства наследуется, другие почему-то нет. Хуй знает.


> Из-за одного пикселя всё поехало


> Сука, почему не работает width


> На мобилках текст отображается по одному слову в строке


Ну да, легко.
833 1573741
>>73739
Ну ты выучи все свойства и ситуации и будет легко.
834 1573744
>>73739

>Pixel perfect


Легко.

>Одни свойства наследуется, другие почему-то нет. Хуй знает.


Осознай каскад.

>Из-за одного пикселя всё поехало


Осознай box-sizing, влияние внешних и внутренних отступов

>Сука, почему не работает width


Потому что прочитай спеку, ты высоту то задал?

>На мобилках текст отображается по одному слову в строке


Осознай адаптивную/отзывчивую вёрстку
835 1573746
>>73741

> Выучи весь стандарт C++, и будет легко


> Выучи все китайские иероглифы, и будет легко

sage 836 1573748
>>73744

> Осознай


> Осознай


> Осознай


Вот и не надо кукарекать, что это "супер легко", блеать.
837 1573751
>>73748
Легко в том плане, что это легко осознать, т.к. это интуитивно понятно, если начать разбираться.
838 1573752
>>73751
Это не интуитивно, это ты привык.
839 1573754
>>73752
Ну да, привык и ты привыкнешь. И чем больше в твоих действиях будет осознанности - тем быстрее привыкнешь и ты.
840 1573760
>>73692
>>73702
Вообще не нужно, если не пишешь под юй, не придумывай.
Нахрен прогеру в 20м верстка, если давно для повышения специализации придумали всякие фреймворки с онлайн конструкторами?

Все затухает, потому что это вопрос такой же примитивный, как и "как нормально вытирать жопу" - так же, как и нормально что угодно другое, трахаясь с ней версткой изо дня в день часами, желательно на вечнотекущих проектах.
841 1573768
>>73751
нихуя не интуитивно. Спеку читать слишком дохуя страниц.
охуиллионы страниц. Из-за ебаной верстки, которая должна быть простой поидее. Но она сложная
842 1573777
>>73768
Ну значит для тебя всё будет сложное. Займись более простым делом, уступи дорогу более смышлённым ребятам.
843 1573780
Пилю расширение для лисы. Нужно заставить ебанный ютбуб разворачиваться на весь экран автоматически.

Уже все попробовал и программно посылаю клавишу f, и посылаю все возможным айдишника от movie_player до player-container реквест на Фулл скрин. Но ютуб упорно не хочет этого делать

Что за хуйня? Почему он не хочет разворачиваться. Что это дерьмо вообще означает?

>В запросе полноэкранного режима было отказано, так как Element.requestFullscreen() не был вызван изнутри короткоживущего обработчика события, сгенерированного пользователем.

844 1573781
>>73233
Хех, ебать ты лошпек) Как там в 2018? Думал, что реакт выучил и всё? Хуй там плавал, надо ещё выучить редукс, контекст, аполло, рекомпоуз, саги, санки для сайд-эффектов, хелмет, дропзоун, спринг, дауншифт, фаербейс. Это уже не говоря о классике типа иммер, имьютбл и рамда.
845 1573786
>>73781

>дропзоун, спринг, дауншифт, фаербейс


Ну это уже жир)
846 1573787

>рекомпоуз


Алло, как там в 2020?) это же уже полтора года как неактуально. Сейчас бы хуки не знать, в 2к20 то, ну ты и отсталый конечно...
847 1573788
>>73781
GraphQL, in memory, serverless, SaaS
Быстрее, выше, хипстерскее!
848 1573854
>>73788

>SaaS


Как там в 2005?
849 1573893
Аноны, я только изучаю js, и возможно где-то объяснялся ответ на мой вопрос, но я упустил и не могу найти.
В общем мне в голову пришла такая мысль, что функция на пик2 должна перезаписать переменную "а" собственной самой функцией, и в таком случае код бы сломался, т.к. в аргументе функции по моей ебанутой логике будет сама функция, и такой код зациклится и выдаст ошибку или типа того.
Но код работает, и нет никаких ошибок.
Почему "a = someFunction ( a );" продолжает держать значение "2" когда я вроде бы как перезаписал эту переменную функцией?

Я какой-то хуйни нагородил у себя в голове, и теперь не могу от этой мысли отвязаться, спаси анончик.
850 1573895
>>73893
Ебанутый нахуй тебе это надо?
Лучшее бы ноду поставил и начал пилить свой первый мувисерчер.
А так только время зря потеряешь.
851 1573899
>>73893
В строчке со стрелкой ты не переписал "a", а просто присвоил ей результат функции "someFunction". Что собственно хотел, то и получил

Если хочешь

>Перезаписать переменную "а" собственной самой функцией


То убери скобки в конце "someFunction"
852 1573960
>>73781

>саги


а я ска все думал, кто эту хуйню в 2020 использует кроме нас ибо легаси
853 1573983
>>73960
Все, кому нужны сколь-либо сложные асинхронные флоу.
854 1573996
>>73983
async/await не завезли?
зачем городить сложные асинхронные флоу? может быть это проблемы архитектуры приложения?
855 1574000
>>73996
Генераторы более продвинутые, чем async/await
856 1574009
>>73996

>async/await не завезли?


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

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


Ну блять, бизнес-логика сложная. Не все же пишут круды с двумя запросами на приложение.
857 1574018
>>74009

>их можно стопнуть, в отличие от промисов


сомнительно async тоже можно стопнуть, но ладно

>бизнес-логика сложная


декомпозиция?
858 1574041
>>74000
Хоть раз видел генераторы в продакшн коде?
859 1574042
>>74041
Видел. Я их у себя на проектах использую, когда саги пишу. В ФП языках это вообще повсеместно используется. Она даёт ленивость. Генератор это же по-сути корутина.
15328746934.jpg43 Кб, 540x392
860 1574044
>>74042

>Генератор это же по-сути корутина

861 1574055
>>74044
Что? Это частный случай корутин же.
862 1574083
>>73777
Js для меня намного проще
863 1574153
Аноны, которые шарят за теорию, поясните:
Вот в ЖС есть Область видимости, лексическое окружение, скоуп, [[Scope]], внешние лексическое окружение. Можно сказать, что:

Область видимости = Лексическое окружение = Scope,
[[Scope]] - просто свойство объекта, которое хранит информацию о лексическом окружении и ссылается на глобальное лексическое окружение
864 1574186
Аноны. Блять. Объясните пожалуйста как работают модули в JS. Как работает import и export. Я меня жопа горит уже. Смотришь во всех видео, во всех туториолах. У всех всё работает так просто. Они просто пишет export const catAge = 13; и в другом файле пишут import {catAge as cat} from './файл.js';, и у них блять всё работает. Как только я пишу ровно такую-же хуйню, у меня в консоли Uncaught SyntaxError: Cannot use import statement outside a module. Пытаюсь найти какую-то информацию, и не понимаю. Ставлю в index.html где подключал js, в script ставлю type="module". Он мне начинает писать какую-то такую хуйню "Access to script at 'file:///F:/AnotherProjects/JSTESTS/main.js' from origin 'null' has been blocked by CORS policy: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.. Я не понимаю, пчоему у них всё работает, я делаю тоже самое и хуй.
865 1574207
>>74186
Двачую, у самого такая-же проблема. Я так понял, нужно накатывать вебпак, чтобы он потом все эти модули вместе собрал.
866 1574223
>>74207
Ну нигде ничего об этом не говориться, абсолютно. Они просто пишут export/import и всё работает.
867 1574239
>>74186
>>74207
>>74223
Встретились два одиночества.

1) Нативно импорты/Экспорты работают только если подключить входной скрипт указав type="module"
2) Свои поделия надо не из файловой системы открывать, а поднимать серверочек для них, хотя бы php -S localhost:80, о чём он тебе и пишет - протокол file:// не даёт делать кросс-доменные запросы, потому что ДОМЕНА И НЕТ НИКАКОГО.

>Ну нигде ничего об этом не говориться


Это само собой разумеется в 2020 году. Может, тебе ещё объяснять как ИДЕ поставить или как компьютер включать?
868 1574244
>>74239
Спасибо, что объяснил.
869 1574296
>>74239

>не из файловой системы открывать, а поднимать серверочек для них


CORS то флагами можно обойти, но там потом ещё много говна, например для модулей в ответе должен быть корректный mime тип. Подозреваю что твой однострочник на php не будет с этим заморачиваться тоже.
В вебшторме есть встроенный сервачок или можно что-то типа http-server из npm взять
870 1574332
>>74296

>Подозреваю что твой однострочник на php не будет с этим заморачиваться тоже


Сложно проверить?
curl -i localhost:8080/test.js
HTTP/1.1 200 OK
Host: localhost:8080
Connection: close
Content-Type: application/javascript
871 1574348
>>74296
Щас бы флаги на целый браузер вешать ради того, чтобы обойти то, что не нужно обходить. Зачем специально стараться, чтобы сделать не по-человечески?

>однострочник на php не будет с этим заморачиваться тоже.


Всё будет работать как надо, никаких маймов не нужно
872 1574358
>>74186
Почитай про вэбпак и бабел
873 1574360
>>62734
похоже на то, что у тебя отключен вывод в консоль, в правом уголке есть панелечка, там Лог, вот кликни на него чтобы завелось.
874 1574375
>>74358
А что сам посоветуешь лучше? Вебпак или бабел? Я слышал вроде что вебпак, это что-то более свежее.
875 1574381
>>74375
В мире джаваскрита нужно постоянно учить мемы, иначе станешь баттхёртом.
876 1574396
>>74375
Они нужны совсем для разного
877 1574397
>>74381
Сос мыслом
878 1574399
>>62152 (OP)
Двач, как полюционировать эволюционировать с чувачка, пишущего код с первого пика, в чувачка, пишущего код со второго?
879 1574400
>>74399
Прочитать про методы массивов да стать.

за сравнение через == получай хрртьфу в лицо
880 1574401
>>74399
Выучить все методы? Первый код будет работать быстрее.
881 1574408
>>74401

>Первый код будет работать быстрее



А какой объективно лучше?
Что проще поддерживать?
882 1574411
>>74400

>Прочитать про методы массивов да стать


Почитал на learn.javascript.ru и написал первый пик по первой задачке, а в ответах был второй пик. Я глупый?
883 1574412
>>74411
Вряд ли это к глупости имеет отношение. Просто два разных подхода. Первый быстрее, но читается хуёво, второй медленее и понятнее, хотя и мутки мутные есть с тернаркой, мельтешит.

Хочешь реально тупым себя почувстсовать? Сходи на codewars и после того как решишь очередную задачу - посмотри на чужие решения из разряда most clever, вот там у тебя самооценка-то и упадёт
884 1574414
>>74399
во втором бы еще интерполяцию строк вместо конкатенации
885 1574416
>>74399
Писать код на JS.
>>74408
Второй.
>>74411
Да, ты тупая скотина, но не потому что написал второй код с пика, а потому что думаешь, что его написал такой же вкатывальщик, как ты, а не уже состоявщийся жопаскриптер.
886 1574417
>>74414
Зочем?
887 1574426
>>74399
Это палка о двух концах. Я так на коудворс задачки решал, а потом кукухой поехал и начал ЛЮБЫЕ решения пытаться уместить в одну строчку с помощью кучей методов, мапов/редьюсов с абсолютно жуткими колбеками етц.
Не делай так.
888 1574429
>>74399
Проблема первого пика не в том, что он не использует методы массива, а в хуевом именовании переменных. (если закрыть глаза на лишнее arr[key].length)
Замени arr на words и key на index — сразу станет понятно.
889 1574482
>>74408
Объективно лучше тот, который соответствует кодстайлу, принятому на конкретном проекте.
890 1574549
А на сколько блокируется контора после неудачного собеса? Например я мувик не стану делать - приду к ним на вакансию, которая его не требует но контора с реактом работает - его по ходу дела изучать надо будет - мне скажут, что я не подхожу, а через месяц я уже сделал мувик и могу ли я снова к ним идти? Они ж обо мне помнить будут. Как к такому вообще относятся?
891 1574551
>>74549
Тебе во время отказа скажут, что добавили тебя в базу, и если им понадобится твоя кандидатура, то они тебе дадут знать. Если ты через месяц опять долбиться к ним будешь, то тебя просто в чс кинут как неадеквата.
892 1574553
>>74551

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


А они как-то мониторить будут, как я развиваюсь разве?
893 1574554
>>74549
Зависит от конторы. Если после собеса тебе говорят, что перезвонят через неделю -- забей хуй, контора говно. Если получил фитбек, узнай, можно ли попробовать ещё раз в идеале, тебе это скажут сами.

мимо устроился в датку с третьего раза
894 1574556
>>74553
кому ты сдался, мониторить тебя)
если ты не прошел собес - получай недостающие знания и иди опять на собесы
895 1574557
>>74556

> если ты не прошел собес - получай недостающие знания и иди опять на собесы


>>74551

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


Где правда то? Я может за месяц недостающие знания получу.
896 1574561
>>74557
ну сиди получай
897 1574566
>>74561
Мы все сейчас наблюдаем как ты их получаешь. Если бы тебе не хватало знаний, которые можно получить за месяц, то тебя бы взяли на исптытательный, но нет, тебе указали на дверь, значит за месяц эти знания не получаются.
898 1574578
Сколько примерно займет изучение React если выделить на чтение документации и специфических статей на хабре пол или целый день? И вообще, сложен ли он?
899 1574579
>>74578
Зависит от твоего бэкграунда.
900 1574582
>>74554
Датку?
901 1574585
>>74578

>специфических статей на хабре


это контрпродуктивно
902 1574586
>>74579
3 года опыта в чистом си. так уж и вышло - попытался в си++ провалилась, да и не нужно стало Игрался много с чем. Тесты на ноду кстати проходил - выходит в районе 50-70, не ниже. Сегодня прочитал про React на хабре - вроде начал понимать синтаксис и предназначение, но не уверен что этого хватит до собеседования. Вообще в принципе не знаю как быть увереным в том, что знаний достаточно. В самой ноде ничего сложного нет, если сравнить одно "многоуровневые и константные указатели и идеей разницы между константными указателями и указателями на константу" - в свое время у меня мозги взрывались. Но с понятием асинхронности после чистого си мне таки пришлось попотеть, да.
903 1574598
>>74586
Ну и что ты забыл в этом треде? Дуй в rust тред
904 1574606
>>74598
Зачем раст? Конкретно в моем мухосранске вакансии есть только по плюсам, из которого мне только векторы и классы известны. Но на ноду хоть отбавляй хуева туча.
905 1574614
>>74606
Ну с твоим опытом плюсы тебе легче выучить будет, в долгосрочной перспективе это более перспективно, кмк.
906 1574620
>>74614
Работать на плюсах будет сложнее в разы и ответственности больше, но в основном ЗП мало отличается от ЗП в веб-разработке, но опять же - лично там, где я планирую работать. Но я слышал, что в ДС та же история. Остается только в других странах искать.
907 1574626
>>74620
А, так ты простой путь ищешь. Ну тогда ты зашёл туда, куда нужно.
Ну у тебя глуповатый вопрос, это же всё субъективно и зависит от многих факторов. Изучить реакт не сложно, в нем нет ничего сложного.
908 1574636
>>74586
Если ты после трёх лет C, не осилил С++, значит React ты точно не осилишь, потому что это сразу ООП и функциональщина, а C это процедурная хуйня для дегенератов.
909 1574641
>>74636

>Если ты после трёх лет C, не осилил С++


ООП-то я осилил. Но знаешь, если понаблюдаешь за холиваром С++ программистов, ты начинаешь понимать, что ООП - это лишь мелкая часть того, что надо знать С++ кодеру, ну и еще понимаешь, что нихуя не знаешь, а попытка узнать больше - будет стоить нескольку лет, и нет гарантий, что ЗП будет выше от ЗП обычной макаки.
910 1574646
>>74582
Датаарт
911 1574655
>>74641
Надо не за холиварами наблюдать, а язык учить. Как ты свои 3 года C описать можешь? 1.5 года писал пет-проект уровня тудулиста, остальные 1.5 наблюдал за холиварами?
Потому что какой-то ты слабенький для трёхлетнего сишника. Если у тебя асинхронность вызвала сложности, то значит ты не использовал многопоточность. Почему?
912 1574666
>>74655

>. Если у тебя асинхронность вызвала сложности, то значит ты не использовал многопоточность. Почему?


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

>Потому что какой-то ты слабенький для трёхлетнего сишника


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

>остальные 1.5 наблюдал за холиварами?


Одного раза хватило в телеграм чатике по плюсам. Потом понял, что делать мне там нехуй. Тут даже не за холиварами наблюдать надо, а просто вчитаться в то, что они обсуждают.
913 1574672
>>74666

>Потом понял, что делать мне там нехуй.


Лол, тогда тебе к яваскрипту даже близко подходить не стоит.
914 1574673
>>74672
Он типа сложнее?
915 1574678
>>74673
Ну смотри. С++ это тот же JS, только там ты всё видишь и контролируешь, он логичен, а в JS половину ты не видишь, половина делается за тебя, при этом он в некоторых местах максимально не логичен и большую часть времени тебе нужно будет работать с объектами, которые ты не осилил.
Это как с основ кидаться сразу к чему-то более высокому, понятно, что если ты основы не осилил, то JS тебя только запутает.
916 1574681
>>74678
понятно - говно этот твой жс значит. жава лучше
917 1574686
>>74681
Тогда уж C#
918 1574700
У кого-то есть архивчик с рассылками шаблонов от хтмл академии? помню раньше прилепляли
дайте ссылку или как найти подскажите
919 1574739
>>62152 (OP)
Первый пик - задачка с learn.javascript.ru
Второй - мое решение
Третий - решение из ответов

Чему автор учебника выбрал такое решение, а не как у меня?
В чем мое решение хуже?
920 1574746
>>74739
С твоим решением вроде как проблем нет, просто с точки зрения теста ты все упростил. Итерацию пропустил, поиск значения пропустил. Если понимаешь пример из ответов, то проблем нет. Он просто сделан более самостоятельнее, что ли.

И мне кажется пример с циклом какой-то грязный, при каждой итерации объявляется переменная, это по определению грязно - по крайней мере в СИ точно было бы. Зачем, если можно определить переменную перед ентрипонтом цикла, и затем просто переустанавливать значение на нужное?
921 1574748
>>74739

Может быть просто ты решаешь задачу из главы, где мап ещё не проходили?
922 1574750
>>74739
У автора понятно расписанное решение, которое может понять даже начинающий, а у тебя душня только ради того, чтобы всё в одну строчку спихнуть.
923 1574753
>>74739

Разве безопасно идти по массиву и одновременно менять его? На сколько я знаю в пхп за такое убивают. Я не прав?
924 1574756
>>74753
Прав, за такое везде убивают.
925 1574759
>>74748
Нет, это задача из главы, где он и объясняется
https://learn.javascript.ru/array-methods

>>74750
Ну так в главе же map() проходится, вот я его и использовал
926 1574761
>>74753
А что не так? Какие подводные?
927 1574773
>>74739
Сорта вкусов.
Я б
const newArray = arr.filter((item) => !(item >= a && item <= b)); arr.splice(0, arr.length, ...newArray);
928 1574775
>>74750
Разе map не очевиднее?
Сразу понятно, что дальше будет выполняться что-то для каждого элемента массива, а как цикл работает, нужно думать, а потом еще думать, что в этом цикле делается
929 1574776
>>74775
forEach ещё ладно бы, но map точно только запутывает.
930 1574782
>>74773

>Я б


>const newArray = arr.filter((item) => !(item >= a && item <= b)); arr.splice(0, arr.length, ...newArray);



Спасибо, анончик, я даже о таком не подумал.

А чему нежелательно идти по массиву и одновременно его менять?
931 1574801
>>74782
Большая вероятность нарваться на ошибки, особенно когда одни элементы логически зависят от других. Сами элементы в массиве изменять нормально, но не массив.
932 1574804
>>74739
Мысли у всех разные, а задача тривиальна и решения могут быть какие угодно.

Хоть так можно
const f = (arr, a,b) => {
arr.forEach((item, index) => !(item >= a && item <= b) && arr.splice(index, 1))
}
933 1574808
>>74801
А чему ты const использовал?
934 1574815
>>74808
Это не я, я мимокрок.
935 1574837
>>74739
Потому что у тебя одностроковая хуйня, а не решение. При этом всё это делается еще проще:

function filterRangeInPlace(arr, a, b) {
return arr.filter(value => value > a && value < b);
}
936 1574849
>>74782

>arr.splice(0, arr.length, ...newArray);


А чему не работает arr = newArray ?
937 1574850
>>74837

>inPlace


Жопой читаешь? Это не изменит исходный массив и вернет новый массив, а такого поведения быть не должно + у тебя даже сама задача решена не верно
938 1574853
>>74782
В основном из-за внезапных подводных камней для алгоритма:
Во-первых, можно поменять элементы которые впереди и твой алгоритм охуеет когда дойдёт до них или внезапно для себя вылетит за пределы массива. Здесь тот случай, но тем не менее.
А при итерации по индексам индекс придётся корректировать если наоборот удаляются элементы позади, i-- например в белом куске кода.
Ещё компиляторам/интерпретаторам от такого хуёво, наверняка многие оптимизации идут по пизде.
939 1574858
>>74849
Это изменит область памяти на которую указывает переменная arr, но не содержимое этой памяти.
940 1574867
>>74837
>>74850
А ещё он отфильтровал наоборот.
Лол, надо же так обосраться на задаче для джуниора с вьетнамского форума горлового пения.
Снимок экрана 2020-01-17 в 0.03.56.png78 Кб, 1064x551
941 1574873
>>74858
В моем случае почему-то ничего не меняется

>Это изменит область памяти на которую указывает переменная arr, но не содержимое этой памяти.


Почему не оставить это сборщику мусора?
942 1574877
>>74873
Потому что объявлять массив нужно либо через var, либо выше объявления функции.
Снимок экрана 2020-01-17 в 0.10.47.png79 Кб, 1064x551
943 1574886
>>74877

>через var


Не помогает
944 1574907
Бляя как же ненавижу эти алгоритмы ебаные, сортировки хуевки всякие... Просто блевать тянет.
945 1574916
>>74907
Уверен что кодинг твое?
946 1574918
>>74873
>>74886
Потому что массив передаётся в функцию по ссылке, а не по значению. Т. е. у тебя внутри массива arr это ссылка на массив, если ты будешь работать с этой ссылкой, т. е. вызывать методы arr, т. е. изменишь тот массив на который ссылается твоя переменная arr, в случае с присваиванием, ты своей переменной, в которой была ссылка, присваиваешь массив. Очевидно, что это никак не влияет на массив на который была ссылка в этой переменной.
947 1574922
>>74918

>у тебя внутри массива


внтури функции
948 1574925
>>74907
Достаточно в общих чертах их понимать. Реализовывать с нуля вряд ли понадобится, всё типовое уже давно написано за нас.
949 1574930
>>74886
Верни массив. время поиграть с промисами.
950 1575051
>>74641
Охуенное ООП без наследований в 99% процентов случаев
Функциональщина в чем заключается?
Реакт охуенно простой, вебпак и бабел дольше учиться настраивать, чем с ним разбираться
951 1575070
Аноны, чисто по опыту, посоветуйте, что учить поверхностно для веб-разработки, а что нужно знать досконально. Что устарело? Что набирает популярность?
952 1575089
953 1575090
>>74925
Спасибо
954 1575104
>>75070

Обязательно

- Верстка (css3 + html5),
-JS (ES5 + ES6) + базово проглядеть JQuery,
- React|Vue|Angular (любой один на выбор).
- Redux \ Mobx
- Git
- Photoshop \ Sketch \ Figma базово - надергать картинки, читать размеры и т.п.

Желательно

- Уметь читать/немножко писать PHP
- Английский уровня чтения доков
- Немножко UX
- NodeJS
- консольные команды уровня ls \ cd \ rm -rf

Полный гайд туть (шапку читай, остальное не читай, проблюешься).

https://2ch.hk/wrk/res/1810392.html#1823504 (М)
955 1575120
>>74907
Хоть одну написал то?
956 1575121
957 1575130
>>74401

>Первый код будет работать быстрее.


С чего хоть?
958 1575142
>>74739

>Использует map? который сделан для изменения каждого члена массива, тупо для удаления по условию


>Чему автор учебника выбрал такое решение, а не как у меня?


>В чем мое решение хуже?



Ну так то можно и ложкой гвозди забивать, а так как минимум читабельностью хуже.
959 1575176
Как запретить читать переменные и использовать мои функции в консоли гугла?
960 1575186
>>75176
Храни их в замыканиях, юзай symbol, дождишь TS 3.8
961 1575194
>>75176
Оборачиваешь всю свою портянку двумя фигурными скобками и пользователь отсосет, при попытке что то вызвать
962 1575199
>>75194
Жжошь!
>>75186
А ты вообще о чем, инцел?
963 1575204
>>75199
Почему это я инцел? А может ты инцел?
964 1575207
>>75176
Консоль гугла, лол.

В целом — никак. Ты же весь код на клиент передаешь.
965 1575209
>>75207
М - минификация
О - обсфукация
М & О - минификация и обсфукация
966 1575211
>>75209
Обфускация, если что
967 1575213
>>75209
При желании что угодно можно расковырять. Бороться с этим довольно бессмысленно.
968 1575226
>>75104
Спасибо
970 1575239
>>75207
Скрыл >>75194
>>75204
Потому что какое-то гамно заумное пишешь, когда можно было просто все обернуть { }
971 1575293
>>75194
Копирую его портянку. Меняю в редакторе. Блокирую загрузку этого скрипта на странице. Обновляю страницу. Вставляю отредактированную портянку.
>>75176
Можно только осложнить, но это защитит только от школьников и бабушек. Если нужно что-то скрыть и запретить использовать, то это выносят на сторону сервера.
972 1575360
>>75293
Я слышал, ты сайты взламываешь? Сможешь взломать вк тёлки одной побратски
973 1575405
>>75293
Как скопировать скрипт со страницы?
974 1575408
>>75239

Да ты попукал
975 1575411
>>74666
Мне кажется ты просто разпиздяй и нытик. Могу конечно ошибаться
976 1575414
>>74678
Какая то шаблонная, стереотипная портянка про JS. Все в JS нормально с логикой. Дыры и странности есть в каждом языке.
>>74681
Да не слушай ты его. Если системщик - вкатывайся в ноду.
977 1575416
>>74907
Буль-буль
978 1575418
>>75414
Да, в JS всё нормально, если рассматривать его как браузерный язык. Как язык, который позволяет за малое количество действий, получить результат. Но именно это и делает его сложным для освоения тем, кто до этого не разобрался в основах. У тебя большая часть делается за кулисами, от этого тебе может казаться что-либо не логичным, но вот если бы ты знал, что там делается за кулисами, то у тебя бы не возникало вопросов. И те, кто работал с С++, например, знают что происходит за кулисами, потому что в C++ ты это делаешь вручную и представляешь что и как работает.
979 1575428
>>75418

>>JS всё нормально, если рассматривать его как браузерный язык


Да ты что? А я думал он одну нишу с Фортраном делит.
Дальше пурга. Шли кулисы через кулисы.

>> делает его сложным для освоения тем


Осваивать нужно не язык, а программирование.
980 1575484
>>75428
Я про это и говорю. С JS-ом ты программирования не освоишь, нужно что-то более низкоуровневое.
981 1575489
>>75484
Ты так это написал, как будто программирование - это про написание кода
982 1575491
>>75484
Какой бред) в js есть все те понятия, какие есть в любом языке. Ну и понятное дело, что увлеченный человек не будет себя ограничивать одним языком
983 1575502
>>75491
Конечно. Передача по значению и ссылке тоже есть в js?))))0)) Может быть многопоточность в js есть?))) Может быть в нём есть явное приведение типов?))) Может быть в нём есть полноценные классы и структуры?))))
984 1575510
>>75502

>Передача по значению и ссылке тоже есть в js?))))0))


Вообще-то да.

>Может быть многопоточность в js есть?)))


https://nodejs.org/api/worker_threads.html
https://developer.mozilla.org/en-US/docs/Web/API/Web_Workers_API

>Может быть в нём есть явное приведение типов?)))


https://www.typescriptlang.org

>Может быть в нём есть полноценные классы и структуры?))))


define «полноценные»
985 1575514
>>75418
Что вообще значит «за кулисами»? У языка есть спека и он работает так, как в ней написано.
986 1575541
>>75502
На сколько я понимаю "явное приведение типа данных", это не просто маня мантра, и "так разрабатывать удобнее!!11".
В большей мере это позволяет компилятору лучше оптимизировать код. Но это лучше знает тот тип выше, который на C пишет
987 1575559
>>75502

>передача по значению и ссылке


Есть конечно же. Объекты по ссылке, примитивы и функции по значению

>Многопоточность


Есть. Сервис воркеры.

>Приведение типов


TS, bucklescript, reasonml, flow к твоим услугам

>структуры данных, классы


Есть, есть. Любую структуру ты можешь написать сам, в случае чего, тебя ничто не ограничивает. Так что твои кукареки необоснованные.
1579268707937.jpg30 Кб, 685x288
988 1575567
Анончики, не гнобите плиз, не могу понять как работает else в этой рекурсии. Вообще не вдупляю, почему рекурсия записывается в numbers и что оно там возвращает.
20190929094910.jpg55 Кб, 348x392
989 1575580
>>75510

>Вообще-то да.


Показывай мне аналог пикрила.

>https://nodejs.org/api/worker_threads.html


Почитай чем поток отличается от процесса.

>https://www.typescriptlang.org


И? Зачем ты ссылку даёшь на другой язык программирования?

>define «полноценные»


Поддержка несколько конструкторов, хотя бы.
990 1575582
>>75559

>Любую структуру ты можешь написать сам



Проиграл с жопаскрипт макаки, которая не знает чем структура отличается от класса.
991 1575587
Прошлогодний
Т
Р
Е
Д
992 1575611
>>75567
Рекурсия никуда не записывается. Когда выполнение кода доходит до
numbers =
То начинается рекурсивный вызов функции до получения результата, т. е. пока endNum - startNum не будет равно 0.
Как только результат получен, стэк вызовов начинает схлопываться, т. е. последний вызов вернёт [1]
Далее выполнение кода продолжается, т. е. код, получивший [1], пойдёт дальше:
numbers.push(endNum)
endNum в предпоследнем вызове функции равен 2
В итоге ты получаешь массив [1, 2] и возвращаешь его в предыдущий код, который находится на стадии numbers =
И так по цепочке, пока самый первый вызов не получит массив [1, 2, 3, 4] и не добавит в него первоначальный endNum, т. е. 5
993 1575622
>>75611
Понял, спасибо тебе
994 1575623
Аноны, можно ли передавать local state детям, если я уверен что изменение этого стэйта будет синхронным среди детей?

Так же мне не раз в треде писали, что я либо не знаком/ не пользуюсь call-back. Я не раз читал что есть call-back функции, но видимо я не ловлю какую-то важную суть. Можете придумать какое-нибудь тривиальное задание для меня, чтобы я сам себя проверил на знание call-back.
995 1575627
>>75541
Нет, это как раз таки про удобнее. Строгая типизация нужна в первую очередь для отлова ошибок ещё на уровне написания кода а не в рантайме или при компиляции.
Современные компиляторы/интерпретаторы – чёрная магия, им уже похер что оптимизировать.
996 1575669
>>75582
Это где я написал, что не знаю, чем отличается?
997 1575691
>>75669

>Любую структуру ты можешь написать сам, в случае чего, тебя ничто не ограничивает.



Вот здесь
998 1575725
16
999 1575727
>>75691
И что тебя ограничивает?
image.png124 Кб, 540x540
1000 1575728
Хочу нарисовать на canvas такую анимацию. Что почитать, чтобы без долгих объяснений фундаментальных основ про синусы и косинусы?
1001 1575730
>>75728
Вставилось как png, в общем я об этом:
1002 1575732
>>75730
Макаба еще и ссылки ест?
images.app.goo.gl/DwH4ow1fy5bVCXLt7
1003 1575737
>>75728
Дрочи webgl. Но без тригонометрии в нем далеко не уедешь.
1004 1575743
>>75737
WebGL это вроде про 3D. Не подскажешь какой-нибудь фреймворк под эту задачу?
1005 1575747
>>75728
Ты напрасно ищешь лёгкий путь, его нет. Если бы можно было без долгих объяснений, все бы этим занимались.
https://www.youtube.com/watch?v=u5HAYVHsasc
1007 1575767
>>75748
хотя, может быть оверкилл... Есть нужно просто нарисовать шейдер, то какой-нибудь shader-doodle
https://www.npmjs.com/package/shader-doodle
1008 1575771
>>75743
Под эту задачу не нужно никаких фрейворков. Там же нет сцены и всего один квад. Голый webgl и много шейдерного кода.

Shadertoy ок для быстрого старта.
1009 1575773
>>75771
Запустить шейдер на голом js — геморрой размером с авианосец
1010 1575777
>>75773
Ну так, строк 50 мб. Ничего такого что требовало бы прям ФРЕЙМВОРКА.
1011 1575781
>>75728
Апи канваса что 2д что 3д низкоуровневое и тупое, такое же как все остальные апи для рисования.
Сложность тут только в собственно программирование алгоритма анимации.
Если ты этот шар взял из какого-нибудь туториала по плюсам или шейдерам, с него и начинай, потом портируешь на канвас но нахуя тогда уже?.
1012 1575784
>>75777
Нужно же знать эти 50 строк, а зачем их знать, если можно взять готовый фреймворк? Я пробовал, получилось. Сложно, не нужно.
1013 1575789
>>75781
Я этот шар взял картинкой в /b, хочу написать на JS чтобы встроить в веб-страницу с моим CV
1014 1575790
>>75777

> строк 50


Пиздец вы зажрались в высокоуровневом JS.
1015 1575794
>>75789
такой же шар ты не нарисуешь, если не найдёшь автора, и он не отдаст тебе код. Можешь нарисовать "что-то типа", если с нуля потратишь несколько десятков часов. Для простого смертного это очень сложно, нужна тригонометрия и знание glsl.
wobs-w.webm144 Кб, webm,
1280x720, 0:01
1016 1575801
А вообще, мне печально, что в вэбе все не используют шейдеры...
1017 1575804
>>75801
Незачем же.
Какой-нибудь красивый эффект который дизайнер захотел на фоне проще в видео записать.
bg-wav.webm12,3 Мб, webm,
672x672, 0:06
1018 1575806
>>75804
Дизайнеры ограничены...
rings-50.webm6,1 Мб, webm,
1280x720, 0:08
1019 1575809
>>75806
...а видео весят очень много.
w-rings.webm3,8 Мб, webm,
1280x720, 0:14
1020 1575816
>>75809
...правда, шейдеры жрут видекарту, которая есть не у всех... сложно всё, короче.
1021 1575820
и вот так ещё можно
1022 1575823
>>75801
>>75806
>>75809
>>75816
>>75820
Это всё webgl, если что
1023 1575825
Здравствуй, /b/, это webm-тред?
w-points.webm614 Кб, webm,
903x903, 0:10
1024 1575828
>>75825
webm — в любом треде хорошо
1025 1575838
Какой проект реализовать? Чтобы не слишком сложно, и чтобы приобрести популярность хотя бы человек у ста...
1026 1575841
>>75838
Создай искуственный интеллект который будет делать заебись по описанию, и сможешь приобрести популярность у предпринимателей.
1027 1575847
>>75841
Я же сказал не сложно. И тем более разве на жаба скрипте можно написать искусственный интеллект?
1029 1575861
>>75850
Ну вот уже кто-то сделал... для чего эта ебань нужна кстати? А мне что интересного сделать?
1030 1575872
>>75861
Так до тебя все простое уже написали, для всего есть несколько версий, уже нового ничего придумать нельзя.
1031 1575941
>>75809
Представляю, как бы мой i5 задымился от расчёта таких бубликов.
1032 1575958
https://alteredqualia.com/xg/examples/eyes_gaze2.html
До чего техника дошла...
1033 1576056
>>75941
Видеокарта считает, на проц пох
1034 1576058
Есть проблема, гугл не помог - в vs code не работает автодополнение в папках, которые созданы через create-react-app - если нажать ctrl+space, будет строка загрузки автодополнения, пустая естественно. Есть старые папки, созданные таким образом - в них все работает. Если попробовать ввести хоть что-то в папке с неработающим автодополнением - оно перестаёт работать во всех папках вообще, до перезапуска вскода. Как это можно исправить? Это что-то в node modules надо поменять? Перестановить вскод?
Причём это не касается хтмл/цсс - там сниппеты работают исправно.
1035 1576112
Привет аноны. Прошу вашей помощи. Есть какой нибудь способ приостановить выполнение функции до загрузки страницы?

funstion test{

var a;
var b;

var c = a + b;
////// тут что-то, что остановит выполнение пока страницы не загрузится
alert (c);
}
Спасибо
1036 1576145
>>76056
Нет в моем синкпаде видеокарты
1037 1576146
>>76112
debugger;
1038 1576161
>>73780
Бампирую вопрос. Уже перерыл все что можно все равно не пашет. Что сука характерно если себе на страницу заебенить ютубплеер, то с ним можешь делать что душе угодно, но вот с плеерами на ютубе тебе делать ничего не дают. Что за хуйня?

Ну же аноны, неужели никто здесь из вас не писал расширения для браузеров? Не верю. Учить жс и не писать расширения это же пиздец тупо.
1039 1576175
>>73780
>>76161
Тебе же руским языком браузер написал:

>В запросе полноэкранного режима было отказано, так как Element.requestFullscreen() не был вызван изнутри короткоживущего обработчика события, сгенерированного пользователем.



Не пустят тебя в полный экран без клика пользователем на кнопку.
И слава богу.
1040 1576187
>>76112
onLoad
1041 1576195
>>76175
Да сука, что же они за мудаки то такие. Какого хуя я не могу автоматизировать некоторые простые вещи. Ублюдки, блять. Реально без ручного нажатия никак?
1549750174649.jpg29 Кб, 255x185
1042 1576198
>>76195
Ну короче я наконец разобрался, оказывается это даже не вина ютуба. Просто сам ебучий FullScreen API сделан так что:

>По соображениям безопасности полноэкранный режим может быть запущен только из обработчика событий (то есть инициируется пользователем);



То есть я изи могу сделать кнопку которая вызывает фуллскрин, но автоматически его запускать ни ни. ЕБаный стыд, как же я горю.
1043 1576273
Есть тут такие люди, которые знают и любят вабаудио?
Идет какая-то дикая (пол-секунды) задержка от микрофона, хотя цепочка там проще некуда:

navigator.getUserMedia({audio:true}, micCB);
function micCB(_in){
var mic = audioContext.createMediaStreamSource(_in);
var sp = audioContext.createScriptProcessor(256, 1, 1);
mic.connect(sp);
}
1044 1576319
>>76198
Хочешь, чтобы каждый сраный второй сайт пытался автоматом свою охуенно важную рекламу тебе в фулскрин запихнуть?

Посмотри на муделей, которым про Notifications API рассказали - 2019 год прошел под знаком "Нет, не хочу оповещений. И здесь тоже. И здесь. Заткнитесь нахуй"
1045 1576320
>>76319
Напоминаю, что эти оповещения так заебали пользователей, что все браузеры будут отключать их нахуй по умолчанию.
1046 1576325
>>76319
Ну вообще так то у расширений вроде как побольше прав чем у кода с сайтов. Хотелось бы что ими можно было фулскринить. ДА и тем более там большими буквами всегда пишется что выход из фулскрина ESC, так что ничего страшного бы не случилось.
1047 1576328
>>76319
Ну не, ничто не переплюнет "Мы что-то слышали про закон о cookies который пытались принять в одной стране на которую наш сайт даже не ориентирован, но нам надо заставить нажать вас на кнопочку потому что так делают все."
1048 1576370
1049 1576387
>>76328
"Зарегистрируйтесь, чтобы увидеть больше". Охуенно, что это обходится так же элементарно, как и запреты на копирование.
1050 1576472
Покидайте полезных каналов в тг
image.png139 Кб, 951x415
1051 1576649
2020 год. Консоль браузера от ведущего разработчика софта при открытии сервиса ведущего разработчика софта.
1052 1576705
>>76649
Каво?
1053 1576712
Я правильно понял, что <Suspense> из react@experimental react-dom@experimental позволяет не писать в рендере что-то вроде
{isLoading ? <div>Loading</div> : <UserPage>...</UserPage>}
Он сам внедряет этот прелодер и чекает, что данные зафетчены и потом уже рендерит компонент?

Судя по этой статье https://reactjs.org/docs/concurrent-mode-suspense.html#approach-3-render-as-you-fetch-using-suspense
1054 1576732
>>76712
Нет, неправильно ты понял.

>Он сам внедряет этот прелодер и чекает, что данные зафетчены и потом уже рендерит компонент?


Нет. Да и как ты себе такое представляешь?
1055 1576746
>>76732

>Нет. Да и как ты себе такое представляешь?



Я предполагал, что новый Suspense из ветки experimental, проверяет переменные в которые сохраняются данные из промисов (например запрос к API), если промисы выполнены, то рендерит компонент, а если нет, что показывает то, что указанно в fallback
Screen Shot 2020-01-18 at 8.18.53 PM.png94 Кб, 919x666
1056 1576750
>>76746
Там в примере есть комментарий
// Try to read user info, although it might not have loaded yet
и в рендере нет никаких проверок на то, что данные загружены
1057 1577041
>>76058
Бамп. Серьёзная проблема, что делать? Скажите на что ориентируется вскод, когда решает, какое автодополнение показывать и показывать ли.
1058 1577047
>>77041
Попробуй все плагины выключить вся суть
1059 1577091
А как удалить вс код с камбутера? А то я переустанавливал, а у меня все расширения остались
Ronald-McDonald.jpg50 Кб, 1024x576
1060 1577142
>>77091
Настало то самое время
1061 1577172
>>77091
У меня один раз получилось так, что у меня их было два - 64 и 32х бит. Переустанавливался один из них, но запускался другой. Долго прифигивал в этом всем, пока не обнаружил это. Понятия не имею, как так могло получиться. Я ставил его один раз и потом просто обновлял время от времени.
1062 1577206
>>76058

>нажать ctrl+space


Подскажите, а в маке какая комбинация для этого? Command+space открывает спотлайт поиск
1063 1577223
>>68306
Спасибо за инфу, надеюсь меня теперь тоже не обоссут
1064 1577262
>>63599
а чем тебе не нравятся hoistащиеся functionы? Сфига ли всего на жирных стрелках писать??
1065 1577276
Какую интересную технологию сегодня выучить? Урок на youtube прилагать обязательно
1066 1577282
>>77276
Svelte
1067 1577290
>>77282
И че это, не понял нихуя
1068 1577301
>>77290
Вот и выучи
Тред утонул или удален.
Это копия, сохраненная 24 февраля 2020 года.

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

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