Программирование


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

Check this out!
<<
Назад | Вниз | Каталог | Обновить тред | Автообновление
1068 79 193

JavaScript.thread = Number(`151`); // thesweetfeed.com edition /js/ Аноним 31/12/19 Втр 22:58:49 15621521
15768781585640.png (99Кб, 1050x1050)
1050x1050
Screenshot from[...].png (96Кб, 940x596)
940x596
Предыдущий: >>1552228 (OP)

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

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

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

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

Сделай песочницу по ссылкам выше для ясности и удобства. Если никогда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
Аноним 01/01/20 Срд 00:29:50 15621962
Не вкатился в прошлом году, вкачусь сейчас.
Аноним 01/01/20 Срд 00:37:48 15621973
15651886144211.jpg (57Кб, 604x403)
604x403
С новым годом анончики!
Спасибо вам за все ответы на мои тупы вопросики.
Аноним 01/01/20 Срд 14:19:55 15623674
С прошедшими вас баки!
Аноним 01/01/20 Срд 17:59:47 15625215
Аноны, подскажите, как за две недели подготовить себя к собесу на позицию джуна? Что посоветуете?
Аноним 01/01/20 Срд 19:01:55 15625476
>>1562521
>как за две недели подготовить себя к собесу на позицию джуна?
Если совсем нулевой, то никак.
Аноним 01/01/20 Срд 19:21:49 15625567
>>1562521
Какой у тебя бэкграунд? Насколько знаешь ванилу, что по либам/фреймам/пет проектам?

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

В целом вопросы на собесах обычно очень типовые, могут посадить код писать на бумажке или на компе. Если это твой первый собес, у меня для тебя не самые хорошие новости, но шансы есть всегда.
Аноним 01/01/20 Срд 19:46:20 15625648
>>1562547
Не, не нулевой.

>>1562556
Из проектов доделываю мувисёрчер на ваниле и на Реакте писал туду и минипроект для универа.
Да, собес первый
Аноним 01/01/20 Срд 22:31:11 15626289
>>1562564
Ну тогда в общем-то всё, как я и написал выше. Если вакансия фронта, то в разной степени соотношения будут спрашивать ванилу, вёрстку и что-то из того, что используется на проекте, может быть и "общее" вроде React/Redux/Saga. Могут что-то про вебпак и бабель. Смотри на ютубе видосы про собесы на JS. Ну и самое главное: собес - это совсем не то же самое, когда сидишь дома уютно перед своим компом. Нервы будут, и не факт, что ты идеально будешь выдавать даже то, что на самом деле знаешь.
Аноним 02/01/20 Чтв 03:02:01 156269210
image.png (242Кб, 400x400)
400x400
image.png (187Кб, 292x292)
292x292
image.png (440Кб, 602x577)
602x577
image.png (312Кб, 400x400)
400x400
Как же я ЛЮБЛЮ БТС❤❤, вот они
слева направо: Намджун, Чонгук, Чингачгук, Гойко Митич
Люблю вас❤❤❤
Аноним 02/01/20 Чтв 07:40:03 156273411
CmBIv2B9XQA.jpg (36Кб, 694x456)
694x456
Почему в консоли браузера и онлайн эдите разные результаты? И не в первый раз такое уже
Аноним 02/01/20 Чтв 11:57:17 156279812
image.png (3Кб, 180x111)
180x111
Аноним 02/01/20 Чтв 13:57:12 156292513
>>1562798
И что, моя опера барахлит?
Аноним 02/01/20 Чтв 14:07:35 156293714
>>1562925
Консоль то ты где открывал? На сайте codepen? Если да, то неудивительно почему результат такой.
Аноним 02/01/20 Чтв 14:31:28 156296315
Аноним 02/01/20 Чтв 15:01:56 156298716
>>1562937
Почему не удивительно?
Аноним 02/01/20 Чтв 15:03:37 156299017
>>1562987
Потому что сайт может влиять на вывод в консоль, codepen это как раз тот случай.
Аноним 02/01/20 Чтв 17:09:07 156317218
>>1562990
Не, я с пустой странички запускал
Аноним 02/01/20 Чтв 18:25:21 156324019
>>1562734
1) ты, надеюсь, в курсе, что у тебя функция и её исполнение тут вообще лишние.
2) это особенности работы консоли, тк лог ничего не возвращает
Аноним 02/01/20 Чтв 19:34:34 156326420
Хочу хорошо изучить браузер: девтулзы, пейнт, лэйаут, ивентлупы-залупы. Можете посоветовать какие-то годные курсы/ресурсы для изучения этого всего?
Аноним 02/01/20 Чтв 20:03:07 156328421
>>1563264
Какой браузер то? Открываешь документацию любого понравившегося и читаешь.
Аноним 02/01/20 Чтв 20:11:15 156329222
>>1563284
Все, хочу процессы построения страницы понять и все, что происходит у браузеров под капотом. DOM, CSSOM, как хтмлька рендерится, вот это всё. Мудаки из гугла понаписали кучу гайдов на эту тему на основу старой девтулзы, затем изменили её до неузнаваемости и забили хуй. Хотелось бы найти что-то вроде гугловских гайдов с web fundamentials, но с современной девтулзой.
Аноним 02/01/20 Чтв 20:12:55 156329523
>>1563292
Прочитай старую, а об изменениях из пачноутов узнаешь. По сути поменялся только интерфейс.
Аноним 02/01/20 Чтв 20:13:45 156329624
>>1563292
Ну и с такими вопросами тебе не в js надо, хром не на нём написан, а на плюсах.
Аноним 02/01/20 Чтв 23:01:10 156346625
Хуйню какую-то обсуждаете.
Вот настоящая проблема:
1. есть говно мамонта в виде хуево написанного приложения на angular 1.6.
2. Поверхностные знания в angular и js в целом

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

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

Какие подводные? Был у кого-то подобный опыт?
Аноним 02/01/20 Чтв 23:12:26 156347426
EAUyXqlXkAIfJqS.jpg (41Кб, 769x960)
769x960
>>1563466
Как 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.
Аноним 02/01/20 Чтв 23:21:03 156347927
>>1563474
>hasLayout, presto, windows safari
ie6
Аноним 02/01/20 Чтв 23:31:31 156348428
>>1563479
hasLayout это и есть про ie6-7.
Это свойство в свое время было даже выпилено из официальной документации МС что бы скрыть весь тот пиздец, который творился в их коде. И сейчас упоминания о нем можно найти только в архивах мамонта. По версии МС такого скрытого свойства никогда не существовало.

Методом обратной разработки и анализа была составлена следующая картина: когда стали выходить новые стандарты индусам была дана задача в кратчайшие сроки написать новый парсер вместо того говна, что тянулось еще со времен мозаика. Однако, судя по всему, все сроки были проебаны, потому они нашли очень кардинальное решение - они втулили в шестого ослика сразу два парсера - старый и новый, который не успели дописать к срокам. свойство же hasLayout определяло, какой из движков будет отрисовывать элемент на странице. Естественно, что это все на практике вылилось в лютейший пиздец и фикс багов ие6 мог занимать по времени столько же, сколько изначальное написание верстки/скриптов. А все потому, что явно его задать было невозможно, никакой документации по нему не было. Потому все определялось методом проб и ошибок и фиксилось откровенными хаками.
Аноним 02/01/20 Чтв 23:43:43 156349029
Кто из вас вкатывался в поддержку опенсорсных проектов? Как вкатывались? Как ощущения? Помогает качнуть скилл?
Аноним 03/01/20 Птн 03:09:42 156356330
image.png (156Кб, 1920x1041)
1920x1041
image.png (140Кб, 1920x1041)
1920x1041
Аноны, мучаюсь уже несколько часов и не могу понять в чем проблема. Есть пикрелейтед 1 и 2. Я абсолютно не понимаю : почему у меня работает только класс контейнер? Т.е. все остальные классы он просто игнорирует, даже если я захочу бэкграунд перекрасить в красный.
Аноним 03/01/20 Птн 03:14:47 156356431
>>1563563
className - свойство dom узлов. Остальные элементы у тебя там это реактовские компоненты, они просто принимают пропс className и ничего с ним не делают, так как ты для этого никакой логики не написал.
Аноним 03/01/20 Птн 03:50:10 156357132
>>1563564
спасибо огромное. Удивительно, но я думал, что className зарезервированное слово и прописать этот атрибут компоненте равносильно, что прописать его обертке этой компоненты
Аноним 03/01/20 Птн 04:58:55 156358333
image.png (158Кб, 1920x1041)
1920x1041
image.png (134Кб, 1920x1041)
1920x1041
image.png (161Кб, 1920x1041)
1920x1041
>>1563564
PS
Какой вариант лучше использовать 1ый и 2ой пикрелейтед , или 3ий или есть более верный вариант?
Аноним 03/01/20 Птн 08:01:15 156359934
>>1562734
> var
> function
Если ты не зеленый, то забудь про эту хуйню и пиши как нормальный человек на ES6.
Аноним 03/01/20 Птн 09:28:47 156360635
>>1563599
Это пример из книги Фримена
Аноним 03/01/20 Птн 12:43:48 156366936
image.png (15Кб, 309x309)
309x309
бесполезное говно. дискасс
Аноним 03/01/20 Птн 12:51:50 156367137
>>1563583
Нахуя ты это делаешь? Просто пиши ебучие классы строкой, между className={s.container} и className="container" нет абсолютно никакой разницы, только лишняя ебля в первом случае.
Аноним 03/01/20 Птн 13:04:14 156367738
>>1563669
В нормальных языках тебя компилятор пиздить будет.
Аноним 03/01/20 Птн 13:18:44 156368839
>>1563677
В нормальных явках точек с запятой в конце строки не ставят.
Аноним 03/01/20 Птн 13:25:33 156369240
Аноним 03/01/20 Птн 13:31:17 156369541
>>1563669
return
0

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

Если ты отказываешься от ; , то автоматически соглашаешься ебать себе мозг звучиванием всех случаев автоматической расстановки ;
Аноним 03/01/20 Птн 14:15:57 156372242
>>1563695
Я бы написал

return (
0
)

Ничего заучивать не нужно, всё интуитивно понятно
Аноним 03/01/20 Птн 14:18:53 156372643
Screenshot from[...].png (84Кб, 1165x787)
1165x787
>>1562152 (OP)
призываю в тред опытного помидора @ юзаю Promise.all(stats); как на пикрелейте, сейчас в директории находится овер 20к файлов, т.е. если я правильно понимаю, для этих 20к файлов создаётся 20к промисов?

сомневаюсь что это норм подход, так как через время там будет 40-50к файлов, это не сломает Promise.all? У Promise.all есть вообще какой-то лимит на кол-во промисов?
Аноним 03/01/20 Птн 14:22:56 156373244
>>1563677
я сейчас только про js
Аноним 03/01/20 Птн 14:25:10 156373445
Аноним 03/01/20 Птн 14:28:14 156373946
>>1563669

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

const huj = 1

(() => {

})()

// всё ок:

const huj = 1;

(() => {

})()
Аноним 03/01/20 Птн 14:29:54 156374147
>>1563669
Двачую
Бесят эти хуйни
>>1563695
> return
> 0
Ну и зачем так писать?
Ты же не долбоеб?
Аноним 03/01/20 Птн 14:30:56 156374248
>>1563739
Кто вообще такие конструкции пишет? в трезвом уме
Аноним 03/01/20 Птн 14:31:07 156374349
>>1563739
> (() => {
> })()
Зачем тебе эту хуйню писать?
Аноним 03/01/20 Птн 14:34:29 156375050
Аноним 03/01/20 Птн 14:35:55 156375251
>>1563739
Ещё такое есть

const op = 'pidor'

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

Но я ни разу в жизни не использовал ничего из этих примеров
Аноним 03/01/20 Птн 14:36:46 156375552
>>1563741
Никто так специально писать, конечно, не будет, но поведение немного неожиданное. Если опечатаешься и не заметишь, то пиздец.
Аноним 03/01/20 Птн 14:38:47 156376053
>>1563755
Линтер поправит или варнинг в консоли
Аноним 03/01/20 Птн 14:40:03 156376254
>>1563739
Можно просто кодблок ебануть лол

const hui = 1

{}

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

// чё бля

Я бы очень сильно охуел, еслиб такое увидел в коде

Аноним 03/01/20 Птн 14:47:13 156377055
>>1563750
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.

Нах?
Аноним 03/01/20 Птн 14:52:51 156377156
Screenshot from[...].png (49Кб, 920x661)
920x661
>>1563762
>Я бы очень сильно охуел

у меня от тебя асинхронная рекурсия сломалась
Аноним 03/01/20 Птн 14:55:28 156377557
Аноним 03/01/20 Птн 15:02:21 156378158
>>1563775
чому ужос, обычный код @ представь такое на коллбэках, вот это будет ужос
Аноним 03/01/20 Птн 15:03:15 156378259
>>1563726
У тебя stats массив объектов, а не промисов, никакой promise.all использовать не нужно, просто возвращай stats.
Аноним 03/01/20 Птн 15:04:26 156378460
Аноним 03/01/20 Птн 15:18:47 156379561
>>1563726
>т.е. если я правильно понимаю, для этих 20к файлов создаётся 20к промисов?
Да.
>там будет 40-50к файлов, это не сломает Promise.all?
Нет.
>У Promise.all есть вообще какой-то лимит на кол-во промисов?
Лимит там как и у любого массива - на сколько памяти хватит.
Аноним 03/01/20 Птн 15:28:24 156379962
>>1563795

> 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к параллельных тредов, то вангую сервер может покрашится
Аноним 03/01/20 Птн 15:37:39 156380363
>>1563799
Тогда проблема явно не в Promise.all, а в том, что ты за каким-то хуем даешь пользователю сервера возможность читать 50к файлов прямо с диска в каждом запросе, вместо того чтобы закешировать их или использовать БД как нормальный человек.
Аноним 03/01/20 Птн 15:37:43 156380464
Screenshot from[...].png (10Кб, 432x308)
432x308
>>1563782
если сделать как ты предлагаешь, то console.log(stats) покажет пикрелейт, там нужно юзать promise.all
Аноним 03/01/20 Птн 15:41:11 156380765
>>1563803
>даешь пользователю сервера возможность читать 50к файлов прямо с диска в каждом запросе,

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

смотри там строку 54
Аноним 03/01/20 Птн 15:48:13 156381366
>>1563799
Ты путаешь concurrency и parallelism. Всё это в ноде делается под капотом и ограничено количествами ядер процессора, т. е. нода не будет создавать 50к параллельных тредов, а будет поочередно их выполнять в n потоках где n это количество ядер процессора.
Аноним 03/01/20 Птн 15:57:10 156382267
>>1563671
я пользуюсь css module, есть какой-то их особый стиль записи или просто не надо ими пользоваться?
Аноним 03/01/20 Птн 16:03:36 156382568
>>1563813
Сейчас бы выполнять что-то на n-потоках на однопоточном движке.
Аноним 03/01/20 Птн 16:09:42 156382869
>>1563739
зачем IIFE в 2020 году использовать?
Аноним 03/01/20 Птн 16:21:04 156383870
>>1563825
Сейчас бы не знать о внутреннем устройстве ноды и что-то пукать в тред.
Аноним 03/01/20 Птн 16:26:51 156384471
Аноним 03/01/20 Птн 16:34:51 156385672
1evOcy9n3vslkDt[...].jpeg (72Кб, 1024x468)
1024x468
>>1563844
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.
Аноним 03/01/20 Птн 16:41:31 156386873
>>1563856
На русском давай, кого наебать решил?
Аноним 03/01/20 Птн 16:48:09 156387574
>>1563868
Учи английский, может в следующий раз подумаешь перед тем как в штаны срать.
Аноним 03/01/20 Птн 16:49:40 156387875
>>1563875
Я тебя не оскорблял. Как нода может создавать n потоков, если количество потоков ограничено процессором ?
Аноним 03/01/20 Птн 17:04:56 156388776
>>1563856
>потому что у тебя нет инструментов для управления этими потоками
Так то есть. С версии 10.5.0 появились воркеры.
Аноним 03/01/20 Птн 17:36:45 156390377
2019-01-18 1610[...].jpg (87Кб, 768x768)
768x768
Аноним 03/01/20 Птн 17:39:58 156390578
>>1563828
>зачем IIFE в 2020 году использовать?

очевидно же, что для асинхронной рекурсии как на скрине тут >>1563771
Аноним 03/01/20 Птн 17:54:50 156392079
>>1563739
const so = 'see'

!function() {
console.log('pidor')
}()
Аноним 03/01/20 Птн 18:11:51 156392480
>>1563726
Тут мои догадки и никак эти слова не подкрепленны. Весь тред пишет про потоки. Я лично не знаю, что там творится в ноде и как это оптимизируется, но я уверен, что если у тебя есть возможность раздробить файлы и упорядочить их (на основании зависимостей) , то запускай хоть 10 нод. Нода это ближайший язык к клиенту и он предполагает, что если ты делаешь софт, то чтобы клиенту хватало ресурсов на свои перделки и это все при том что нода достаточно прожорливый язык.

Аноним 03/01/20 Птн 18:15:09 156392781
>>1563924

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

>internal c++ thread pool

вот это меня и беспокоит
Аноним 03/01/20 Птн 18:35:37 156394082
>>1563856
щас сделаем ассемблерную вставочку хуе мое и плов готов
Аноним 03/01/20 Птн 18:57:45 156396083
>>1563878
Также как и в любом коде, который использует многопоточность - проверяешь сколько у процессора ядер и в зависимости от этого запускаешь n потоков. И количество потоков не ограничено процессором, но безопаснее всего использовать столько, сколько у процессора ядер, для того чтобы избежать оверхеда который сведёт на нет все плюсы многопоточности. В нормальных ЯП ты можешь и 1000 потоков создать на одноядерном процессоре, вот только получишь от этого уменьшение производительности, а не прирост.
Аноним 03/01/20 Птн 19:02:00 156396584
>>1563927
Раз это делается под капотом, значит выбран самый оптимальный вариант, т. е. у тебя не будет создано больше потоков, чем есть ядер на процессоре который запускает ноду.
Аноним 03/01/20 Птн 19:21:33 156397485
>>1563965

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

я что то сомневаюсь, что в ноде есть такой механизм, который расставляет приоритеты для потоков, типо какие потоки нужно оставить для раздачи сайта с запросами в бд и рендером шаблонов, и какие для других нужд, типо скрипта для чистки каталога с файлами
Аноним 03/01/20 Птн 19:36:53 156399086
>>1563974
Тебе просто нужно почитать про многопоточность и асинхронность. Нет смысла пытаться объяснить тебе это на пальцах в двух постах, ты продолжаешь срать своими представлениями, основанными на фантазиях из манямирка.
Аноним 03/01/20 Птн 19:53:51 156401687
>>1563990
кек ну ты и олень, тебе ясно тут описали проблему >>1563974, нахуй ты это всё высрал сейчас?
Аноним 03/01/20 Птн 19:55:08 156401888
>>1564016
Как ты определил проблему, если не имеешь ни малейшего представления о многопоточности и асинхронности? А также о том, как это реализовано в инструменте который ты используешь. Вот и выходит, что не проблему ты описал, а догадки своего манямирка.
Аноним 03/01/20 Птн 20:00:38 156402589
>>1564018

ой мудак. это что по твоему: >>1563726 @ ещё разок: эта хуитка работает на сервере
Аноним 03/01/20 Птн 20:29:39 156406190
js.why-so-async[...].jpg (210Кб, 1024x768)
1024x768
javascript node[...].png (13Кб, 710x749)
710x749
Аноним 03/01/20 Птн 22:02:26 156419391
>>1563838
Нода - однопоточный кал с кооперативной многозадачность без SMP.
Аноним 03/01/20 Птн 22:16:41 156422892
>>1563887
>воркеры
Они и в ванильной жс есть. В обоих местах - крайне лимитированная хуйня, причем и воркеры, и эвент луп нельзя блокировать, т.е. не поддерживаются хотя бы объекты синхронизации.

>>1564193
>Нода - однопоточный кал
Полностью солидарен.
Аноним 03/01/20 Птн 23:05:37 156426793
>>1564228
>эвент луп нельзя блокировать
А надо?
Надо глупой мартышке боевую гранату давать, потому, что ей игрушечная не нравится?
Аноним 03/01/20 Птн 23:21:00 156427094
>>1564267
>А надо?
В мире розовых пони не надо. На практике легко прострелить себе ногу херово написанным колбеком/await и огрести блокировку.
Аноним 03/01/20 Птн 23:31:33 156428095
каджит.png (230Кб, 410x375)
410x375
>>1563695
>Если ты отказываешься от ; , то автоматически соглашаешься ебать себе мозг звучиванием всех случаев автоматической расстановки ;
Возможно, лет 10 назад. Но сейчас ты уже в здравом уме не сможешь написать так, чтобы что-то сломать. Твой пример - в 99 случаях сверх редкая опечатка, чем кто-то в здравом уме такое решит написать. Я уверен, что некоторые олдовые мидлы могут даже не подозревать, что можно так написать.

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

(() => {

})()
тень прошлого. Самовызывающиеся функции описывают в книжках, курсах, но увидеть их можно лишь в очень старом коде. И это причина, почему их до сих пор описывают в книгах. Но никто ими уже не пользуется. + Тебя даже в этом треде за это обоссут.
Аноним 03/01/20 Птн 23:36:34 156428896
Аноним 03/01/20 Птн 23:51:18 156430297
Аноним 04/01/20 Суб 00:24:10 156432098
>>1563583
Мне не нравится идея передачи стилей как пропсов. Каждый компонент должен сам отвечать за свою стилизацию. А внесение стилей на уровне тем должно реализовываться отдельно - класс на body, темы material ui или темы styled component, whatever. Но ни в коем случае не передавать стили между компонентами - это рушит принцип атомарности и автономности. Любой твой компонент должен с минимальными изменениями быть переставлен на новый проект, если таковое потребуется.
Аноним 04/01/20 Суб 00:26:04 156432199
>>1563669
Бля, возможно ты прав, но я с этой хуйни не могу слезть как с наркоты. Привычка выработанная годами. памагите.
Аноним 04/01/20 Суб 00:29:46 1564323100
>>1563770
Вот этот прав. IIFE всегда было чисто костылем. В современных реалиях в них нет никакого смысла.

Хотя там есть такая хуита, что код в IIFE будет выполнен до всплытия (hoist). Но мне сложно представить, когда это может быть полезным, учитывая, что общая тенденция развития JS идет в сторону отказ от использования "преимуществ" всплытия (let, const, arrow functions).
Аноним 04/01/20 Суб 00:41:25 1564328101
>>1564321
Просто берёшь и без задней перестаёшь их ставить, 2-3 дня и привыкнешь, всего-то делов.
Аноним 04/01/20 Суб 01:35:45 1564346102
Ебаная хуитка
Аноним 04/01/20 Суб 01:50:39 1564349103
>>1564320
Да, ты прав. Я не подумал об этом >Любой твой компонент должен с минимальными изменениями быть переставлен на новый проект, если таковое потребуется.

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

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

Я это уточняю, потому что как-то выглядит некрасиво, когда в одном ксс ты определяешь как гриды себя ведут, а в других ксс определяешь их классы. Я так понимаю оно все при сборке превратится в один css , но возможно это сложнее читать/исправлять
Аноним 04/01/20 Суб 01:53:13 1564352104
>>1564349
PS
>>внутри этого компонента
внутри каждого компонента (которые являются дочерними элементами грид компоненты)
Аноним 04/01/20 Суб 01:54:40 1564354105
Аноним 04/01/20 Суб 03:23:08 1564376106
>>1564270
>легко прострелить себе ногу херово написанным колбеком
Значит надо всякой мартышке давать больше возможностей прострелить себе ногу, но с уже нормально написанными колбэками и испорченным грязными ручонками эвент лупом?
По-моему от розовых поней пишешь именно ты.
Аноним 04/01/20 Суб 04:35:52 1564382107
import React, { Component } from ‘react’

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

Это Бабель так делает, что я могу вытаскивать свойства объекта, как будто бы они тоже экспортятся?
Аноним 04/01/20 Суб 06:17:00 1564388108
>>1564382
>Это Бабель
Мне кажется это вебпак. Собери свой проект в дев режиме и посмотри, во что превращаются все импорты\экспорты
Модули в функции, возвращающие объекты. Импорты в использование специальной функции, которая соответственно вернет ранее возвращенный объект из специального словаря. Так что ты просто деконструктишь объект а может и нет, я хуй знает
Аноним 04/01/20 Суб 09:27:17 1564400109
>>1564267>>1564376
>ряяяя вокруг одни мартышки мартышки, ряяяяя хочу вместо языка программирования гулаг с как можно большим количеством ограничений, в этот-то раз это точно решит все проблемы
Мерзость.
Аноним 04/01/20 Суб 09:41:31 1564404110
image.png (31Кб, 668x860)
668x860
>>1564382
>Это Бабель так делает, что я могу вытаскивать свойства объекта, как будто бы они тоже экспортятся?
Так работает module.exports. А если точнее, то это костыль для совместимости es6-импортов с commonjs экспортами, добро пожаловать в мир костыльного жопаскрипта.
Аноним 04/01/20 Суб 10:25:52 1564416111
какой положняк по жс и ноде на начало 2020?
Аноним 04/01/20 Суб 11:45:33 1564445112
>>1564400
>пукнуть зеленью
Аргументация глупой мартышки как есть.
Аноним 04/01/20 Суб 13:57:20 1564568113
>>1564382
Поведение описанное стандартом EcmaScripts modules.

export default Huita
export additionalHuita
export huitaHelper

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

Сам реакт, впрочем, по моему упакован не в esm, а в commonJS или AMD, так что компиляцию из них в esm тебе будет делать либо бебел, либо typescript лоадер. Но любой другой модуль так же имеет понятие дефолтного экспорта и опциональных экспортов.
Аноним 04/01/20 Суб 13:58:34 1564571114
Аноним 04/01/20 Суб 14:08:14 1564582115
>>1564568
В исхолниках реакта анон выше кинул скрин.

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

И больше ничего из файла не экспортится
Там нету
export { Component }
Аноним 04/01/20 Суб 14:09:59 1564586116
>>1564382
>>1564568
>>1564582

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

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

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

Странно, почему там и UMD и CMJ, потому-что UMD это какбе универсальная обертка и для CMJ и для AMD.
Аноним 04/01/20 Суб 14:15:37 1564592117
Аноним 04/01/20 Суб 14:25:34 1564606118
И да, я подчеркну, что в 2020 в JS у нас до сих пор 4 (ЧЕТЫРЕ) различных форматов пакетов.

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

Так и живем.

Анон, если будешь делать свою либу - пакуй в ESM и в UMD. Это покроет все юзкейсы, даже прямо в браузер можно будет грузить без каких либо сборщиков.
Аноним 04/01/20 Суб 14:29:36 1564612119
>>1564592
Почему в официальных доках они сами используют такой костыльный импорт, а не делают просто так
import react from ‘react’
const {Component } = react

Они совсем конченые там? Хотя бы объяснили что у них нету экспорта Component по умолчанию.
Аноним 04/01/20 Суб 14:37:31 1564627120
>>1564606
>Анон, если будешь делать свою либу - пакуй в ESM и в UMD
Ага, и сделать свою либу неимпортируемой по умолчанию в окружение ноды без бабеля. Охуенный совет. Главный дистрибутив для уважающей себя либы делается в cjs, а все остальное говно только бонусом.
Аноним 04/01/20 Суб 14:40:45 1564633121
>>1564627
Ты упоротый? UMD поддерживает commonJS.

А во вторых - пошел ты нахуй, потому-что node 12+ официально поддерживает ESM.
Аноним 04/01/20 Суб 14:46:59 1564644122
>>1564633
>node 12+ официально поддерживает ESM.
По умолчанию не поддерживает, это нужно указывать отдельно через type module. Ну и осталось дождаться, пока все перейдут на 12 ноду, оставив остальные версии позади, и пока не сделают type module дефолтным, так что лет через пять приходи с охуительными советами.
Аноним 04/01/20 Суб 14:53:46 1564652123
>>1564644
Не важно. 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';
....

Каждый пакетный менеджер в итоге получит то, что он ожидает получить.
Аноним 04/01/20 Суб 15:03:43 1564674124
>>1564652
Это говно по сути нужно только для поддержки AMD и браузеров, а браузерные импорты это смешно, никто слава богу ими в здравом уме не пользуется и пользоваться не будет. Если ты пишешь js-либу, то в 99% случаев цель у тебя только одна - это окружения ноды, поэтому выбор идет между cjs и ESM дистрибутивом, из которых очевидно выбирается cjs.
Аноним 04/01/20 Суб 15:07:49 1564685125
>>1564674
>из которых очевидно выбирается cjs.
Ничего одно не выбирается. Обычно там 2 или даже 3 формата пакетов заливают в npm. Тот же реакт устанавливается в cjs и в umd версиях. Но обычно сейчас либы идут с esm и cjs/umd.

Это если кому интересно, почему node_modules так много весит. Момент, когда cjs/amd/umd окончательно умрут будет моментом, когда папки node_modules уменьшаться в два раза. Потому, анон, всеми силами приближай победу ESM.
Аноним 04/01/20 Суб 15:11:21 1564692126
>>1564685
>Тот же реакт устанавливается в cjs и в umd версиях
Какая из этих версий у реакта по умолчанию используется, не подскажешь?
Аноним 04/01/20 Суб 15:15:16 1564702127
Какой же сложный язык JS. Столько всего неявного, столько магии, столько фич. До сих пор в ахуе после "сложных" плюсов. Одни вышеупомянутые импорты чего стоят. А я думал, что понимал их. И раз он такой ебически сложный, почему все так советуют начинать программировать с него?
Аноним 04/01/20 Суб 15:19:26 1564708128
>>1564692
Хочешь сказать, что один из пакетов просто по фану туда заливают, что бы npm пакет в два раза больше весил?

Это делается для того, что бы любой цугундер-сборщик или окружение само решало, что оно хочет получить и тащило соответствующий пакет.
Аноним 04/01/20 Суб 15:19:45 1564709129
>>1564702
JS урезанный, никто с него не рекомендует начинать. Начинать надо с языков со строгой статической типизацией и полноценными классами.
Аноним 04/01/20 Суб 15:25:09 1564714130
>>1564702
Многие уродские вещи в JS вызваны тем, что его изначально делали как язык рисования снежинок на страничках девочек 13 лет, а потом ВНЕЗАПНО его стали использовать как коммерческий язык для написания от серверов до десктопных приложений. В него стали лихорадочно и быстро втуливать все недостающие вещи под новые задачи, при этом куча старого говна по прежнему отказывается умирать.

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

>>1564709
This.
Аноним 04/01/20 Суб 15:59:46 1564732131
>>1564708
Его засовывают туда потому, что реакт - популярная библиотека и им не сложно добавить одну строчку в свой компайлер, чтобы угодить 1% пользователей. "В два раза больше весит" это смешной аргумент, если либа у тебя на сервере/компьютере, то этот лишний мегабайт не имеет никакого значения в 2020 году, а если в готовом билде, то лишнего мегабайта просто нет. А суть агрумента в том, что по умолчанию они(и абсолютно любая либа, какую найдешь) предоставляют cjs модуль, а не umd, хотя казалось бы по твоим заверениям, umd - это тот же cjs, только с бонусами на самом деле нет.
Аноним 04/01/20 Суб 16:02:41 1564736132
Аноним 04/01/20 Суб 16:07:30 1564743133
>>1564702
Сам JS очень простой язык с минимумом синтаксиса, а сложность обычно заключается в том, чтобы разобраться со всеми костылями, которые его окружают, уровня прикрученной сбоку модульной системы в самом жсе модули добавили только совсем недавно, бабеля, плагинов для бабеля, вебпака и прочей хуйни.
Аноним 04/01/20 Суб 16:27:48 1564763134
Пиздец хуйня ебаная хосспаде
Лучшее на питоняше сервер накатаю, чем на ноде ебливой
Аноним 04/01/20 Суб 16:45:34 1564782135
>>1564709
> никто с него не рекомендует начинать
Всё же рекомендуют, потому что он якобы простой, и чтобы новичок не испугался. Так думают многие и пишут свои топ-5-языков-для-новичков с JS на первом месте. Хотя сам я так не считаю.

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

>>1564743
Классический браузерный JS действительно прост, даже пресловутые преобразования типов логичные, хоть и не очевидные. Но вот постоянно меняющаяся экосистема ноды очень огорчает.
Аноним 04/01/20 Суб 17:04:00 1564813136
>>1564763
онлайн игру сделаешь?
Аноним 04/01/20 Суб 17:33:58 1564840137
6RLIZQE9gWU.jpg (148Кб, 830x836)
830x836
Объясните в чем прекол
Аноним 04/01/20 Суб 17:51:54 1564852138
>>1564813
Конечно
У меня уже идея есть
Гача-гейм типа girl's frontline но с мемасами
Аноним 04/01/20 Суб 17:54:06 1564855139
>>1564840
clunkCounter будет увеличиваться при thunk и clank, а должен только при clunk.
Аноним 04/01/20 Суб 17:54:09 1564856140
>>1564840
Проиграл
Чё за книжка?
Аноним 04/01/20 Суб 18:01:21 1564866141
Аноны, подскажите.
Написал скрипт и решил вынести часть функций в отдельные файлы. Когда вынес делаю стандартный импорт, то ловлю такую ошибку: Cannot use import statement outside a module.

Гугл посоветовал поставить бабель, но они ничем не помог. Как фиксить?
Аноним 04/01/20 Суб 18:17:44 1564881142
Снимок экрана ([...].png (193Кб, 1920x1080)
1920x1080
script.js:4 Uncaught TypeError: Cannot read property 'classList' of null
at script.js:4

Абсолютно не могу понять в чём ошибка, аноны, спасите. скорее всего ошибка очень глупая, у меня из-за этого очень полыхает на самого себя
Аноним 04/01/20 Суб 18:20:27 1564884143
>>1564881
Знаешь что такое id?
Аноним 04/01/20 Суб 18:23:02 1564886144
>>1564884
Да, но ход товоей мысли не понял (я ещё совсем глупый ньюфаг)
Аноним 04/01/20 Суб 18:24:27 1564888145
>>1564886
В селекторе впиши точку. То есть у тебя class=main_nav , а селектор это .main_nav
Аноним 04/01/20 Суб 18:28:24 1564895146
Фримен Э. Изучаем программирвоание на Java Script
Аноним 04/01/20 Суб 18:29:05 1564896147

>>1564856
Фримен Э. Изучаем программирование на Java Script
Аноним 04/01/20 Суб 18:30:25 1564897148
>>1564888
Блять, вот я так изнал. Помнил, что где-то к селекторам точка не нужна, вот и не писал
Спасибо большое
Аноним 04/01/20 Суб 18:32:45 1564900149
>>1564840
В конце главы есть решения, даун
Аноним 04/01/20 Суб 18:47:05 1564910150
Аноним 04/01/20 Суб 19:59:38 1564955151
>>1564852
от 100 игроков наебнеться
Аноним 04/01/20 Суб 21:08:34 1565006152
15666696693850.webm (4043Кб, 480x270, 00:01:15)
480x270
Аноним 04/01/20 Суб 21:22:09 1565013153
>>1564709
Надо начинать с того, что тебе близко, чем ты собираешься заниматься, и яп, который лучше подходит для твоих задач. Вот эти мантры "надо обязательно начинать с..." - бред.
Аноним 04/01/20 Суб 21:35:02 1565020154
>>1565013
Это не мантры, это рациональный подход.
Аноним 04/01/20 Суб 22:59:21 1565073155
>>1565006
> Эй, Бивис, он сказал дупло
Аноним 04/01/20 Суб 23:25:45 1565107156
>>1562152 (OP)
могу делать красивые и функциональные сайтики на python+flask. пришло время начать работать с javascript. что мне прочитать, что быстро начать работать с этим языком. хочу использовать в основном на фронтенде, хочется сделать пару сайтиков на ноде+экспрессе, чтобы можно было написать в резюме что я с ними работал. могу спойно читать и слушать на английском. по джеэс огромная куча ресурсов и я не знаю, где начать.
Аноним 04/01/20 Суб 23:29:58 1565108157
Аноним 04/01/20 Суб 23:37:40 1565110158
Аноним 04/01/20 Суб 23:54:32 1565119159
>>1564881
Только не вздумай кому-нибудь это показывать.
И бросай эту некрофилию, выучи ес5/6 и садись за фреймворк. То что ты делаешь щас в js, это не стоит твоего внимания.
Аноним 05/01/20 Вск 00:00:28 1565127160
>>1565107
популярная связка django+react+postgress, редакс опционально в зависимости от твоего проекта. И если ты все же прекрутишь sql к проекту, а в стэйте будет хранится что-то кроме закрытое окно или прочитанное сообщение, то ебало знатно скорчат
Аноним 05/01/20 Вск 00:05:31 1565131161
>>1562152 (OP)
Анон, что это за мода такая ублюдочная?!!
Заходишь на сайт, там, на пол окна вылазит предупреждение о том, что тебе закинут куки. И закрыть его нельзя, блядь, только принять можно... Как блочить подобную хуйню?
Аноним 05/01/20 Вск 00:13:01 1565132162
>>1565131
берешь и блокируешь конкретный элемент adblock
Аноним 05/01/20 Вск 00:17:51 1565139163
>>1565131
С подключением.
В ЕС приняли закон, который обязывает все сайты, где юзаются куки, говорить об этом. Как бороться? Установить специальные расширения. /s/ тебе в помощь.
Аноним 05/01/20 Вск 00:19:13 1565140164
>>1565127
>а в стэйте будет хранится что-то кроме закрытое окно или прочитанное сообщение, то ебало знатно скорчат
А где тогда хранить данные, полученные с запросов?
Аноним 05/01/20 Вск 03:33:07 1565263165
>>1565140
А зачем их хранить? Cразу в dom подгружай, там пусть и хранится.
Аноним 05/01/20 Вск 03:58:08 1565271166
>>1565139
>Как бороться?
Надо по рукам давать быдлокодерам, рисующим эти медленные баннеры,
лезущие на пол экрана меееедлееееенннннннооооо медленно, блядь.
Нельзя что-ли как-то ненавязчиво предупредить внизу и всё?
И да, а что если юзер не хочет принимать куки? Хоть бы кнопку цепляли, не хочу печеньку, хочу пироженку.
Аноним 05/01/20 Вск 04:14:55 1565274167
каджит.png (230Кб, 410x375)
410x375
>>1565140
>>данные
Ты должен четко представлять, что есть данные. Фронтенд залупа - не данные, а булевые значения. API запрос возвращает данные. Затем ты вспоминаешь, что существуют ограничения API запросов. Банально у яндекс карт - определенный пул в месяц, у API фильмов не более 30 запросов в минуту. Некоторые API по дефолту платные. Ты вот так подносишь палец к подбородку и думаешь, а может мне это куда-то складировать и потом вместо того чтобы в очередной раз делать API запрос, я буду обращаться к своей постоянно пополняемой базе. Таким образом, со временем API запросы начинают заменяться на чистые SQL запросы.

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

Если у тебя в стэйте хранятся хоть какие-то данные, то ты пожрал гавна. Фронт должен рисовать картинку на основании данных, но он не должен их генерировать. Поэтому не надо путать фронт-енд задания с реальной практикой.
Аноним 05/01/20 Вск 07:47:38 1565293168
Учу javascript с нуля. Конечная цель — хочу собрать PWA приложение. Оно простое, про заметки. То бишь написал текст, сохранил, фильтры навесил.

Подскажите, что помимо дефолта HTML/CSS/JS может понадобится, без чего моя цель неосуществима?
Аноним 05/01/20 Вск 10:05:34 1565309169
Думал фронтенд это то, чем я буду в основном заниматься.
По детству учил HTML, CSS.
На данный момент учусь в университете на CS и понимаю, какая же срань - фронтенд. И как меня заебала чертова верстка.
Теперь и не знаю, то ли в Spring/.NET перемещаться, то ли вообще в мобилки уйти.
Аноним 05/01/20 Вск 11:29:25 1565327170
>>1565274
>Таким образом, со временем API запросы начинают заменяться на чистые SQL запросы.
Что за хуйню я сейчас прочитал
Какие чистые sql запросы, ты просто заменяешь внешнее апи на запросы к апи своего сервера. Как это вообще соотносится со стейтом реката?
Аноним 05/01/20 Вск 11:51:06 1565335171
Javascript-tshi[...].jpg (13Кб, 600x507)
600x507
Если я приду на собес в такой футболке, это даст мне +1 к привлекательности?
Аноним 05/01/20 Вск 11:52:32 1565336172
>>1565271
> Надо по рукам давать быдлокодерам, рисующим эти медленные баннеры,
лезущие на пол экрана меееедлееееенннннннооооо медленно, блядь.
Там не то что давать по рукам надо, их отрубать нужно нахуй. Перегрузят свои сайы скриптами, а затем делают такие вот медленные анимации, чтобы тормоза меньше людей замечало. Туда же "У нас есть мобильное приложение", "Включите уведомления", "Подпишитесь на рассылку", "Зарегистрируйтесь, чтобы увидеть больше информации". Пидоры.

> Нельзя что-ли как-то ненавязчиво предупредить внизу и всё?
Можно, конечно. Тут уже мода на долбоебизм сказывается, мешающая так делать.

> И да, а что если юзер не хочет принимать куки? Хоть бы кнопку цепляли, не хочу печеньку, хочу пироженку.
Закон предлагает предупреждать об использовании кук, но не спрашивать, согласен ли пользователь. Тупо, да.
Аноним 05/01/20 Вск 13:59:27 1565445173
>>1565309
>то ли вообще в мобилки уйти.
Уходишь в мобилки @ там еще больше уебищной верстки
Аноним 05/01/20 Вск 14:01:42 1565446174
>>1565336
Это не быдлокодеры, это манагеры с десигнерами и с кабанчиком в тз написали что все это должно быть и в максимально сжатые сраки сроки.
Аноним 05/01/20 Вск 14:08:09 1565452175
>>1563669
Это ты бесполезное говно. А ; может предотвратить множество ошибок по невнимательности.
Аноним 05/01/20 Вск 14:23:20 1565470176
Аноним 05/01/20 Вск 14:52:22 1565504177
>>1563669
Вот блядь, из-за таких лентяев и приходится свой няшный старый браузер менять,
на какое-то говно китайское, без исходника, переполняющее буфер от одной gif-ки,
и ложащее винду с синим экраном после засирания файла подкачки,
на говно, вроде того же 360 Extreme Explorer для Windows XP,
зато поддерживающее УДОБНЫЙ ДЛЯ БЫДЛОКОДИНГА ES6,
без поддержки которого, блядь, двач не открывается.

Сидит, блядь, мудель, придумал сам себе что
>" ';' - говно"
и ещё и носит, заражает других былдокодеров-шкальнеков.
А потом даже дрыном им в головы не забить, что надо поставить ёбанную ";"
в какой-нибудь
>for (Выражение; Выражение; Выражение ) Оператор
чтобы throw-exceptions в консоли не срали, и скрипт не останавливали.

На, просвещайся: https://habr.com/ru/post/111563/
Аноним 05/01/20 Вск 14:57:19 1565511178
>>1565452>>1565504
Вот уж воистину люди готовы защищать самую иррациональную бесполезную хуйню только из-за привычки. И их даже не ебет, что есть миллион языков в сто раз более приятных по синтаксису, чем жопаскрипт, где каким-то образом обходятся без сраной точки с запятой, и каким-то магическим образом избегают ошибок, все равно будут копротивляться за свое бесполезное говно до последнего.
Аноним 05/01/20 Вск 15:04:20 1565521179
>>1565511
Дурачок, в жс точка с запятой не обязательна. Я тебе больше с позиции крестоеба говорю. Взять тот же питон: тебе не приходится СТРАДАТЬ и ставить точку с запятой, но приходится ловить ошибки интерпретатора если у тебя чуть отступ съехал. Да и это естественная идея - отделять отдельные команды чем-нибудь. Так и компиляторам/интерпретаторам проще, и читаемость кода повышается. Ты же точки, чтобы разделить предложения, ставишь?
Аноним 05/01/20 Вск 15:05:02 1565522180
>>1565446
Манагеры и дезигнеры не пишут код и не могут нести никакой ответственности за его качество. Если ты написал забагованное говно, то это всегда только твоя вина и ничья другая. Кукареки "мне дали мало времени" - это смешно, потому что в итоге всегда выясняется, что либо
а) быдлокодер сам поставил себе такой дедлайн
б) быдлокодеру не хватило яйчишек сказать менеджеру, что времени не хватит и что нужно урезать требуемый функционал/продлевать дедлайн, если хотите уложиться в срок, вместо этого он просто покивал головкой и убежал в свой закуток подальше от социальных взаимодействий
У менеджера нет никакой возможности оценить сложность требуемого кода, нет возможности оценить время написания кода, и т.д, все эти оценки лежат только на тебе и доносить их до менеджера должен ты, а не наоборот. Взрослей и принимай ответственность
Аноним 05/01/20 Вск 15:08:28 1565524181
Аноним 05/01/20 Вск 15:20:45 1565537182
>>1565522
Братюнь, ты это, работать не пробовал? Сроки он менеджеру будет ставить, охуеть вообще.
Аноним 05/01/20 Вск 15:21:23 1565538183
image.png (2Кб, 261x85)
261x85
Аноним 05/01/20 Вск 15:25:40 1565540184
>>1565538
А теперь убери свое убожество назад и напиши нормально.
Аноним 05/01/20 Вск 15:28:25 1565541185
>>1565537
Любой менеджер идет к программистам за сроками для написания кода, сам он не квалифицирован и физически не может их проставить. Он может проставить примерные сроки для проекта в целом, сроки для выхода на рынок и т.д, но вопрос "сколько займет написать такую хуйню" всегда задается только программистам, никому другому он задаваться не может в принципе. И если в ответ на твои "три недели" он отвечает "а может за две? у нас проект горит", а ты начинаешь мяться и в итоге соглашаешься ПОПРОБОВАТЬ сделать за две недели и делаешь забагованное дерьмо, то никакой вины менеджера тут нет.
Аноним 05/01/20 Вск 15:39:43 1565551186
image.png (4Кб, 363x149)
363x149
Аноним 05/01/20 Вск 17:54:05 1565603187
>>1565541
Хуя ты жирный.

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

Зачем нужны ПМы, совсем ничего не понимающие в погромирование? Я искренне сочувствую людям, которым приходится с такими работать.
Аноним 05/01/20 Вск 18:11:56 1565621188
>>1565603
>ПМ который обладает тех. навыками на уровне оценки сложности.
Единственный способ обладать такими навыками - это писать код в этот конкретный проект на постоянной основе.
Аноним 05/01/20 Вск 18:14:51 1565625189
>>1565621
Или набирать ПМов на IT-проекты с образование в CS как делают нормальные компании.
Аноним 05/01/20 Вск 18:19:25 1565629190
>>1565625
Ты не понимаешь, что тебе говорят? Единственные люди, которые могут обладать хоть сколько-то актуальным знанием о том, как долго займет добавление определенного функционала в проект - это программисты, пишущие код в этот конкретный проект. Никакое образование, никакой опыт "в целом" тебе этого знания не даст и дать не может.
Аноним 05/01/20 Вск 18:24:07 1565631191
>>1563771
Я тупой, объясните что тут происходит?
Аноним 05/01/20 Вск 18:26:05 1565634192
>>1565511
>есть миллион языков в сто раз более приятных по синтаксису, чем жопаскрипт
Хотя бы пять назовешь?
Аноним 05/01/20 Вск 18:27:18 1565636193
Насколько нужно знать ванилу, если цель дойти до фреймворка и написать что то на нем? Больше пробелов в ES6 фичах (асинки, промисы), т.к ванильный знаю достаточно, даже делал туду в ООП. Я думаю что дрочить все сразу плюшки не имеет смысла без практики, а практикой будет взять какой нибудь вью и сделать что то на нем, правильно ведь? Если что js у меня второй язык после пхп
Аноним 05/01/20 Вск 18:29:55 1565637194
>>1565336
Сверхразум, ты? За всё это отвратное поведение, которое ты описываешь, ответственны менеджеры, дизайнеры, продакты и прочие писари тз. Разрабы просто реализуют то, что им говорят.
Аноним 05/01/20 Вск 18:30:42 1565640195
>>1565636
Я бы сначала доки почитал, попутно делая тестовую хуйню по ходу разделов из доков. А потом уже делал бы что-то.
Аноним 05/01/20 Вск 18:44:53 1565654196
>>1565637
значит, разрабы не очень, раз такое делают
Аноним 05/01/20 Вск 18:46:10 1565656197
>>1565629
А потом увольняют тебя, а не программиста. Потому-что найти говно ПМа без профильного образования в CS проще, чем найти нового сеньора-помидора. Про закладывание дополнительного времени для безопасности ты слышал, кстати? Или на отечественных галерах только ковбой-кодинг?
Аноним 05/01/20 Вск 18:47:49 1565658198
>>1565634
ruby, python, clojure, elixir, haskell
Аноним 05/01/20 Вск 19:14:29 1565688199
>>1565658
Вот только работку ты не найдешь на этих языках
Аноним 05/01/20 Вск 19:27:21 1565704200
Аноним 05/01/20 Вск 19:30:49 1565707201
>>1565704
В чем толстота? Первые два может еще да. На остальное нету работы.
Аноним 05/01/20 Вск 19:39:13 1565712202
>>1565511
Следует иметь а виду, что JS в первую очередь язык с си-подобным синтаксисом, а не с удобным. Со всеми вытекающими.
Аноним 05/01/20 Вск 20:19:37 1565743203
>>1565712
А ведь изначально Эйхор хотел запилить что-то в духе упрощенного Scheme. Если бы не java, обмазывались бы сейчас скобочками и чистым ФП.
Аноним 05/01/20 Вск 21:07:14 1565788204
Аноним 05/01/20 Вск 21:18:42 1565800205
>>1565743
> ФП
Вряд ли. ФП слишком инопланетное, мало кто осиливает.
Аноним 05/01/20 Вск 21:21:21 1565804206
>>1565654
При чём тут разрабы, если им сказали такое сделать?

>>1565707
Работа есть, ты плохо ищешь. Или тебе надо чтобы было 100-1000 вакансий? Устроишься всё равно на одну. Да и заграницей больше работы на этих языках, дополнительный стимул уехать.
Аноним 05/01/20 Вск 21:32:26 1565810207
>>1565800
Заебали эту хуйню нести. Если речь про обычный ФП-язык, который используется на практике(кложа, эрланг, эликсир), то нихуя сложного и инопланетного там нет, специфические фичи осваиваются за неделю.
Аноним 05/01/20 Вск 22:09:20 1565836208
>>1565743
>упрощенного Scheme
Куда уж проще.
Аноним 05/01/20 Вск 22:44:38 1565857209
Аноним 05/01/20 Вск 22:48:41 1565860210
>>1565810
> нихуя сложного
Если это действительно было так, это всё по популярности было на уровне сабжа или джавы. Но нет. Потому что никто не может осилить.
Аноним 05/01/20 Вск 22:58:16 1565870211
Снимок экрана о[...].png (386Кб, 672x147)
672x147
Как пофиксить пикрил? key принимает уникальное значение с сервера.
Аноним 05/01/20 Вск 23:00:55 1565872212
>>1565870
Возможно ты key не у всех указываешь. Кинь код, зачем гадать
Аноним 05/01/20 Вск 23:04:52 1565875213
>>1565870
>key принимает уникальное значение с сервера.
А в консоле тебе ведают об обратном. Есть вероятность, что это реакт пиздит, но, скорее всего, это ты где-то в глаза ебешься. Отдебаж что ты в ключи вставляешь, скорее всего у тебя где-то они повторяются или какой-то элемент без ключа идет.
Аноним 05/01/20 Вск 23:05:14 1565876214
>>1565872
>Возможно ты key не у всех указываешь
Действительно, не заметил в одном месте. Спасибо!
Аноним 05/01/20 Вск 23:45:53 1565897215
Yi0ZZns.jpg (49Кб, 585x464)
585x464
Аноны, как по нормальному ванильный JS-код на модули разбить?
Разбил на модули, делаю все экспорты, а когда всё запускаю, то ловлю ошибку Cannot use import statement outside a module.
Что не так?
Аноним 05/01/20 Вск 23:55:12 1565900216
>>1565897
type="module" не забывает проставлять скриптам?
Аноним 06/01/20 Пнд 00:11:03 1565916217
>>1565857
Очередной инфоцыган-недоблоггер.
Уноси это говно.
Аноним 06/01/20 Пнд 04:38:41 1566052218
Аноны, я пользуюсь реактовским .module.css, но VSCode не видит их во время авто заполнения импорта. Какой плагин нужно поставить или где нужно написать, чтобы он начал сканировать .module.css. Я пытался гуглить, но почему-то не нашел ни одного вопроса по этому поводу.
Аноним 06/01/20 Пнд 10:35:17 1566088219
эээ бля, как ебучий снег отключить?
Аноним 06/01/20 Пнд 10:59:58 1566092220
Братцы, хочу вкатиться в мобильную разработку. Чисто под свои нужды, сам я не профессиональньный погромист, хоть и кодю с 2000го года практически каждый день.
Присмотрелся к комбинации из native script + svetle.
Какие подводные камни? Что мне нужно будет выучить и в какой последовательности?

С жс знаком постольку-поскольку, раньше для моих нужд плюсов с питоном хватало.
Аноним 06/01/20 Пнд 12:50:42 1566143221
>>1566092
>svetle
В чем прекол этого модного и молодежного реймворка? Сколько раз встречал его описание, так и не понял нахуя он нужен
Аноним 06/01/20 Пнд 12:58:28 1566149222
>>1566143
Мне он понравился тем, что толком не понимая жс и прочих плясок вокруг ноды нпм гульпов хуюльпов всяких сасс я туда-сюда понимаю как эта хуета работает.
Чисто порогом вхождения, короче. Ну и листинги короче чем то, что я увидел на реакте и ангуляра, а мне много писать лень, после питона-то с
>импорт вунндервафыекомбайне
>вундерваффекомбайне.ду()
Аноним 06/01/20 Пнд 13:02:50 1566154223
>>1566143
Очередная ловушка про "очень просто и не надо знать js". Angular, react, vue - в свое время про них всех говорили так же.

Так как вышел не так давно, так что люди будут спотыкаться об не обкатанные подводные камни. Будут сталкиваться с ограниченностью экосистемы, буду велосипедить. Через год-два оно все равно разрастется по апи до реакта/вуэ или даже до ангуляра разжиреет.
Аноним 06/01/20 Пнд 13:03:28 1566156224
>>1566149
Готовь велосипеды, мань.
Аноним 06/01/20 Пнд 13:04:00 1566157225
>>1565900
Нет, прописал.
В html я подключаю только главный, в который я импорчу все остальные.
Аноним 06/01/20 Пнд 13:04:06 1566158226
Аноним 06/01/20 Пнд 13:07:11 1566159227
>>1566156
Та какие велосипеды, я хочу круд для склада и амоцрм написать чтобы видеть что мои кладовщики когда отгружают
Я это и на кажется калькуляторе или упаковке из-под пива мог бы написать, но поскольку делать мне один хуй нечего решил вот хуйней пострадать
Аноним 06/01/20 Пнд 13:58:49 1566168228
>>1566092
Не надо svetle, лучше уж react native возьми. Это очень молодой фреймворк, на каком-нибудь реакте уже миллион таких приложений написали и решили все проблемы у вкатывальщиков. Банально база знаний для других фреймворков больше
Аноним 06/01/20 Пнд 14:56:32 1566207229
>>1566092
Лучше бери Flutter, он сейчас лучше всех. Как запасные решения React Native и Ionic.
Аноним 06/01/20 Пнд 15:11:33 1566226230
>>1566207
А лучше хуйней вообще не занимайся и делай на нативном языке платформы
Аноним 06/01/20 Пнд 15:13:02 1566232231
>>1566149
В реакте с create react app тоже никаких плясок.
Аноним 06/01/20 Пнд 15:13:10 1566235232
15702208981750.jpg (417Кб, 1900x1000)
1900x1000
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.
Аноним 06/01/20 Пнд 15:15:16 1566242233
>>1566226
Двачую. Белые люди пишут мобильные приложения под гейос на свифте, а под ведро на котлине. Посоветовал флаттер как меньшее из зол.
Аноним 06/01/20 Пнд 15:21:06 1566250234
>>1565522
Ты такую лютую хуергу написал что это просто пиздец даже. Ты не то что в айти никогда не работал, а похоже что не работал вообще нигде и никогда.
Аноним 06/01/20 Пнд 15:28:59 1566258235
>>1565603
>Это реально так на говно галерах?
Нет, это только в его маняфантазиях и в студяих на три человека в чьей-то квартире.
>На большинстве проектов где я работал, сроки выставлял либо техдир, либо ПМ который обладает тех. навыками на уровне оценки сложности.
Так оно и в большинстве случаев и есть. То просто залетный кукаретик.
Аноним 06/01/20 Пнд 15:33:52 1566264236
>>1566052
Не работал с раектом, но проблема в VScode как я понял. И даже твоего вопроса не понял. Давай скринами
Аноним 06/01/20 Пнд 15:49:17 1566277237
>>1565603
Какую же ты хуйню написал.
Во-первых, оценить весь скоуп сразу может только господь бог нахуй. Человек же, каким бы неибаца спецом он не был, при таких оценках имеет все шансы ошибиться на 300%.
Пиздец, им дали аджайл, интерации, грумминг, скрам покер и другие средства гибкой разработки, нет не хочу, хочу чтоб какой-то хуй сам наверху все порешал и спустил команде, которая в эту, взятую из чьего-то мутного опыта цифру по памяти, должна попадать. Это при том что >70% всех подводных камней, противоречивых требований, недостающей информации и прочей хуиты выявляется только на стадии разработки.
Понятно, что в некоторых конторах, типа НАСА или Боинг, всякие гибкие методики не годятся, и нужен классический вотерфол, но там блять задача будет пол года проходить 7 кругов аналитиков, архитекторов и прочих уебков , пока дойдёт до разработки, а не типа один авторитетный хуй бздонул и все, отдали в работу. То что ты описал - это самая тупорылая, уебищная, бессистемная хуита уровня »Рога и Копыта» и надеюсь те редкие раковники, что до сих пор так работают, вымрут нахуй, а их дебильный менеджмент весь отправится работать в макдак.
Аноним 06/01/20 Пнд 15:57:03 1566282238
>>1566277
Аж трясёт нахуй.
В прошлой конторе, из которой я недавно съебал, один такой дохуя менеджер с 10 летним стажем разработчика единолично дал оценку клиенту на весь проект и обосрался в 2.5 раза, что потом сам признал. Но ему то что, признал и дальше и поздовал пердеть в кресле, а пацаны месяцами овертаймили чтоб попасть в дедлайн, потом половина перегорела и уволилась нахуй
Аноним 06/01/20 Пнд 16:43:00 1566305239
Аноним 06/01/20 Пнд 16:58:28 1566310240
code.png (134Кб, 1236x852)
1236x852
Нихуя не понимаю. Почему метод у созданного объекта undefined?
Аноним 06/01/20 Пнд 16:59:10 1566311241
code.png (141Кб, 1562x852)
1562x852
Аноним 06/01/20 Пнд 17:03:10 1566312242
>>1566311
>>1566310
Сраный vscode не может сделать нормальный скрин. В общем, суть в том, что я расширяю Array своим методом getById и ничего не выходит. Где я обосрался?
Аноним 06/01/20 Пнд 17:09:34 1566314243
Аноним 06/01/20 Пнд 17:14:21 1566317244
image.png (149Кб, 1920x1041)
1920x1041
>>1566264
Да, дело не в реакте. Когда я пишу импорт файлов .module.css, то VSCode их игнорирует наличие в папке. Обычно он подсказывает в виде всплывающего окошка.

.module.css это legacy стиль написания css для реакта.
Аноним 06/01/20 Пнд 17:15:13 1566319245
>>1566314
Благодарю. Помогло
Аноним 06/01/20 Пнд 17:16:11 1566321246
Аноним 06/01/20 Пнд 17:16:30 1566322247
>>1566319
Лучше собирай просто в es2015+
Аноним 06/01/20 Пнд 17:19:57 1566326248
>>1566322
Тоже работает. Вдвойне благодарю
Аноним 06/01/20 Пнд 17:29:38 1566329249
>>1566321
спасибо, я это тоже учту
Аноним 06/01/20 Пнд 22:14:44 1566459250
>>1565551
>Убрал две ;
>но поставил три.

>>1565538
А теперь подумай и скажи, в каких браузерах этот говнокод не заведётся?
Аноним 06/01/20 Пнд 22:18:05 1566463251
>>1566459
Не ебу, что это за язык, но на JS можно написать интерпретатор, который хоть C++ схавает. Вопрос лишь в огромном оверхеде на парсинг.
Аноним 06/01/20 Пнд 22:29:39 1566469252
>>1562152 (OP)
Знаю основы html и css, плюс немного жабаскрипт + jquery. Сделал один сайт-презентацию.
На какую зп я смогу рассчитывать на фрилансе или в офисе?
анон 24 лвл
Аноним 06/01/20 Пнд 22:30:16 1566470253
Аноны, поясните за промисы:
В какой момент промис становится асинхронным? Если создаю промис и его сразу же резолвлю, то он выполняется в общем порядке. Получается, что промис это тот же коллбэк только с более удобным синтаксисом?
Аноним 06/01/20 Пнд 22:36:18 1566472254
>>1566469
зависит от региона конечно, но имхо меньше 30 просить это унижение
Аноним 06/01/20 Пнд 22:48:47 1566482255
>>1566470
Он в любом случае будет выполняться асинхронно, потому что компилятор не может определить, как скоро твой промис изменит своё состояние. Поэтому их нужно использовать только там, где ты либо выполняешь какую-то долгую работу на стороне своего кода, либо когда обращаешься к стороннему ресурсу (сетевые запросы, жесткий диск).
Аноним 06/01/20 Пнд 23:00:09 1566487256
>>1566470
Объект промиса создастся синхронно.
Функция которую ты в него передал выполнится синхронно.
then/await у него пойдёт асинхронно, даже если коллбэки ты дёрнешь синхронно.
Аноним 06/01/20 Пнд 23:01:40 1566489257
Аноним 06/01/20 Пнд 23:33:33 1566509258
>>1566482
>компилятор
Какой компилятор?
Джаваскрипт это скриптовый язык.
Аноним 06/01/20 Пнд 23:43:45 1566510259
>>1566509
Typescript компилируется javascript’ом
Аноним 06/01/20 Пнд 23:47:38 1566514260
>>1566510
Не отвечай ему, спорить с буквоедами бесполезно. Они считают себя самыми правыми.
Аноним 07/01/20 Втр 00:03:25 1566516261
>>1566509
И? Любой язык нужно компилировать в байт-код, разница лишь в том, сделаешь ли ты это заранее или "на лету".
Аноним 07/01/20 Втр 00:05:45 1566517262
>>1566516
Есть более общий и универсальный термин "транслятор", но всем как всегда.

мимо
Аноним 07/01/20 Втр 00:15:38 1566519263
>>1566517
Тогда не транслятор, а интерпретатор.
Аноним 07/01/20 Втр 01:11:35 1566561264
>>1566519
https://ru.wikipedia.org/wiki/Интерпретатор
Интерпретатор (англ. interpreter ıntə:'prıtə[1], от лат. interpretator - толкователь[2]) — программа (разновидность транслятора), выполняющая интерпретацию[3].

Интерпретация — построчный анализ, обработка и выполнение исходного кода программы или запроса (в отличие от компиляции, где весь текст программы, перед запуском, анализируется и транслируется в машинный или байт-код, без её выполнения) [4][5][6].
Аноним 07/01/20 Втр 01:15:20 1566565265
>>1566561
Что ты мне то это суешь? Или тебе так легче запоминается? В случае с JS как раз идёт интерпретация, а не компиляция. При этом для того чтобы выполнить исходный код, в любом случае нужно скомпилировать его в байт-код. Интерпретация это совокупность операций, одной из которых является компиляция.
Аноним 07/01/20 Втр 01:20:21 1566567266
>>1566565
Если жс был интерпритатором, то бы скрипт частично выполнялся при наличии синтаксических ошибок, т.к построчно или по одной инструкции. Но жс код превращается в AST, а затем в байткод. Интерпритаторов практически не осталось. Bash например
Аноним 07/01/20 Втр 01:27:25 1566568267
>>1566565
Добавлю.Промышленные компиляторы поддерживают несколько языков и стандартов, поэтому поэтому в них компиляция имеет промежуточную фазу похожую на байткод
Аноним 07/01/20 Втр 01:29:12 1566569268
>>1566567
JIT компиляция это развитие интерпретации. Поэтому если ты говоришь о JS, то и то и другое будет верным, даже не смотря на редкость использования. Не понятно только зачем нужно было разводить этот срач на ровном месте.
Аноним 07/01/20 Втр 01:30:10 1566570269
>>1566567
В определении на Википедии можно написать что угодно, хоть "интерпретатор - это программа, написанная тем, кто ебётся в жопу". На английском википедии вот не сказано, что исполнение обязательно должно быть построчным:
https://en.wikipedia.org/wiki/Interpreter_(computing)

Так что хуйня вся эта терминология с определениями. Пока не примут соответствующий RFC, пусть компилятор хоть микроволновкой называют, менее правыми они не будут.
Аноним 07/01/20 Втр 01:32:00 1566572270
>>1566569
Причем здесь жит? У тебя сейчас везде байткод даже в cpu так как нужна обратная совместимость
Аноним 07/01/20 Втр 01:34:30 1566573271
>>1566572
При том, что это метод компиляции JS-кода.
Специально использовал слово "компиляция", потому что это к любому языку относится, но нет, жопаскрипт макака настолько тупая, что даже не знает об этом и думает, что его жопаскрипт приводится в действие какой-то магией, лол.
Аноним 07/01/20 Втр 01:40:06 1566577272
>>1566573
Так это ты тупая обезьянка, которая все свела к дихотомии: интерпретируемый - значит как древний тормозной бейсик, компилируемый - это как быстрый C. Говорил бы по нормальному: высокоуровневый или нет, кросплатформенный или нет.
Аноним 07/01/20 Втр 01:43:39 1566579273
Почему нет отдельного JS треда для программистов? Я имею ввиду ноду. Не хочется сидеть с вами, говноедами. Хочу общаться с программистами
Аноним 07/01/20 Втр 01:52:04 1566584274
>>1566579
Здесь почти все фронтендеры-вкатывальщики, так что это мало кому интересно. Попробуй создать, может и взлетит.
Аноним 07/01/20 Втр 01:53:44 1566585275
>>1566577
У кого значит? У тебя и таких же долбоебов как ты? Java, С# тоже компилируемые языки, но не такие же быстрые как C, потому что используют JIT-компиляцию.
>Говорил бы по нормальному: высокоуровневый или нет, кросплатформенный или нет.
>код компилируется высокоуровнивается
хмм, это какой-то особоый язык жопаскрипт-макак?
Аноним 07/01/20 Втр 01:56:12 1566587276
Довольно простая практическая задачка для ждуна:

Есть такая функция: 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.
Аноним 07/01/20 Втр 01:58:32 1566588277
>>1566587
Ты даже codepen/repl/textbin не освоил. Какие нахуй задачки? Не позорься.
Аноним 07/01/20 Втр 02:00:10 1566589278
>>1566588
Описанных мною условий достаточно, я всё внятно написал.
Задачку можно решить в https://jsfiddle.net/ или аналогичной ей песочнице.
Аноним 07/01/20 Втр 02:01:10 1566591279
Ах, да: абу съел часть разметки, символ звёздочки не поставился. нувыпоняли, что multiple просто умножает переданные аргументы.
Аноним 07/01/20 Втр 02:05:31 1566594280
>>1566587
>>1566589
>>1566591
А когда тебя возьмут, свои рабочие задачи тоже сюда будешь кидать?
Берёшь такой arguments и реализуешь
Аноним 07/01/20 Втр 02:06:32 1566595281
>>1566587
Я же тебе решение писал для multiply, ты даже спасибо не сказал. Всё еще не понял как такое решать и опять приполз?
Аноним 07/01/20 Втр 02:07:56 1566597282
>>1566594
Меня уже взяли. Эту задачку я уже решал, она показалась мне интересной и я её решил показать вам. Она элементарна, каждый ждун должен уметь решать подобного рода задачи.

Ещё могу написать задачку про бесконечно каррирующую функцию или про рекурсивную функцию Nat, но вы решите сначала эту.
Аноним 07/01/20 Втр 02:09:40 1566598283
>>1566595
Я в этот тред раз в год захожу. Давай, решай, а не болтай языком, ждун.
Раньше ещё сидел в МВП, но тот тред заполонили мальчики, косящие под девочек.
Аноним 07/01/20 Втр 02:12:54 1566599284
Да по-любому так и есть!
Аноним 07/01/20 Втр 03:07:06 1566606285
>>1566597
Пруфай договором с sup /b/
Аноним 07/01/20 Втр 03:08:42 1566608286
>>1566579
Я думал создать отдельно backend тред, но говноеды, которые бэкенд пишут на ноде, там будут не нужны
Аноним 07/01/20 Втр 06:40:35 1566626287
>>1566587
>элементарная задача для ждунов
>реализовать на хуй никому не нужный шаблон, который ты хуй когда применишь на практике ещё и без привязки контекста

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

Это действительно решается просто, рекурсивно возвращаешь вызов функции с args и длинной args в качестве параметров, но на хуй это не нужно знать джуну. Я бы понял, если б такую хуйню спрашивали у тырпрайз-макак, от которых требуют 2.5 технологии, да ещё КАКИХ. Мне в последнее время кажется, что аучиться правильное конфигурировать вебпак под конкретный проект сложнее, чем выучить спринг или осознать ооп
Аноним 07/01/20 Втр 08:41:53 1566633288
>>1566608
Существуют еще какието ЯП которые развиваются кроме ЖС?

Может на старом говне мамонта джаве писать?
Может на пиздоне у которого свой особый путь и вечная судьба быть на вторых ролях?
Может на го, который не пришей пизде рукав так и не стал язык-классикой с прочным фундаментом?
Может на пхп битриксе?
Может на руби который сдох?
Аноним 07/01/20 Втр 10:34:23 1566641289
>>1566633
>старом говне мамонта
К жсу идеально подходит
> у которого свой особый путь и вечная судьба быть на вторых ролях?
Тоже идеально подходит к жсу, особый говнопуть и вечная судьба быть прокладкой для браузера
>который не пришей пизде рукав так и не стал язык-классикой с прочным фундаментом?
Ну ты понял.
Аноним 07/01/20 Втр 10:52:51 1566647290
>>1566641
Только отличительная черта жс - браузеры у него в заложниках
Аноним 07/01/20 Втр 11:05:08 1566649291
>>1566626
>это получается сейчас фронтенд-джуну нужно идеально знать ванильный жс, реакт, редакс, 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
Аноним 07/01/20 Втр 11:34:41 1566658292
>>1566472
>меньше 30 просить это унижение

Ну не толсти уж так
Аноним 07/01/20 Втр 11:46:34 1566664293
>>1566658
Что, ты считаешь это мало?
В моей мухосрани 30к - это зп кассира в пятерочке
Аноним 07/01/20 Втр 12:43:39 1566692294
>>1566664
Я считаю что это не то что много, а просто дохуя, ибо 90% джунов готовы работать бесплатно ради опыта. 30ка это зарплата крепкого мидла в Казани например, хз что у тебя за мухосрань такая где столько кассиры получают
Аноним 07/01/20 Втр 12:52:12 1566700295
>>1566692
>Я считаю что это не то что много, а просто дохуя, ибо 90% джунов готовы работать бесплатно ради опыта.
Очень толсто.
Аноним 07/01/20 Втр 12:59:31 1566710296
>>1566692
>крепкий мидл
>Крепись! Кому сейчас легко?!
Аноним 07/01/20 Втр 13:10:10 1566725297
>>1566692
>90% джунов готовы работать бесплатно ради опыта
Не видел такого нигде - все минимум 30к требуют. А те, кто меньше - то лучше этих вообще не брать. Такого понапишут, что потом сам вздёрнешься.
Невозможно стать хорошим специалистом, не имея уважения к своему делу - работая бесплатно. Этот факт давно уже все знают, кроме тебя.
Аноним 07/01/20 Втр 13:45:14 1566756298
>>1566725
>А те, кто меньше - то лучше этих вообще не брать. Такого понапишут, что потом сам вздёрнешься.
>Невозможно стать хорошим специалистом, не имея уважения к своему делу - работая бесплатно

Причём тут уважение?
Аноним 07/01/20 Втр 14:12:43 1566785299
>>1566756
Я ж написал вроде - без этого хорошим специалистом не стать.
Аноним 07/01/20 Втр 14:41:49 1566817300
Есть желание вкатиться в фронт, но нет желания заниматься рутинными задачами. Вёрстка, как правило, для меня является рутиной. Те, кто уже вкатились, расскажите, как много вам приходится заниматься вёрсткой (да и вообще скучными вещами)?
У меня хорошее профильное образование, учусь последний год, но со сферой так и не могу определиться, т.к. плохо понимаю, чем занимаются джуны-мидлы-сеньоры в разных областях it.
Просто интересно, много ли сейчас интересных задач есть на фронте для людей, которые любят в логику, программирование, но не очень любят иметь дело с чем-то уж очень рутинным?
И если не фронт, то куда лучше двигаться с такими хотелками?
Аноним 07/01/20 Втр 14:58:43 1566835301
>>1566817
Работа === рутина
It is what it is.
Аноним 07/01/20 Втр 15:41:30 1566875302
>>1566817
>И если не фронт, то куда лучше двигаться с такими хотелками?
В бэк. Фронт это всегда история про интерфейсы, количество вёрстки сильно зависит от проекта, его стадии и задачи. Обычно работаешь уже с какой-нибудь либой, в которой уже есть все нужные тебе компоненты и вся вёрстка сводиться к чему-нибудь типо - col-6 col-sm-4
Аноним 07/01/20 Втр 16:42:54 1566900303
Аноним 07/01/20 Втр 18:15:05 1566963304
>>1566641
>К жсу идеально подходит
Да жс старый и кривой, только вот всякие майкрософты и прочие гиганты башляют в него бабосики и создают всякие тайпсрипты и кучу всяких удобоваримых улучшалок, чего не делается ни с одним другим языком.
>особый говнопуть
Если кто-то шагает впереди всех, то это не особый говнопуть, это путь первопроходца, за которым все пытаются дотянуться.
>Ну ты понял.
Нет не понял.

К слову сказать пхп, не стоит спорить, весьма популярный язык с кучей фреймворков и цмс. Разрабы пыхи перед выходом 7.4 так и написали что у них не так дохуя бабосов как например у жс, поэтому вынуждены отставать. Что гвоорить про другие, менее популярные языки
Аноним 07/01/20 Втр 19:04:30 1567009305
>>1566875
>В бэк.
Там тоже порой верстать приходится. Как минимум вёрстку знать и применять надо уметь.
Ну и помимо самого программирования всякого говна тоже навалом, вплоть до админского.

>>1566963
>у них не так дохуя бабосов как например у жс
Такие вещи много бабосов не требуют. Просто пхп это серверсайд, а там всё аккуратнее делать надо, иначе у тебя не то что вёрстка поедет, а сам сервер ляжет. Поэтому и медленнее вводят новшества.
Аноним 07/01/20 Втр 19:17:42 1567017306
Вы все хуесосы
Аноним 07/01/20 Втр 19:38:06 1567038307
image.png (450Кб, 1920x969)
1920x969
image.png (500Кб, 1920x969)
1920x969
Господа, я понимаю что это не CSS тред, но я задам вопрос здесь, так как я уверен что для вас он тривиальный.

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

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

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

PS

Вот что получается, если задать width: 100% контейнеру с линками.
Аноним 07/01/20 Втр 19:39:17 1567039308
В чем отличия == от ===?
Аноним 07/01/20 Втр 19:40:28 1567041309
image.png (487Кб, 1913x969)
1913x969
>>1567038
Вот это пикрелейтед 1, остальные - копии 2 пикрелейтед.
07/01/20 Втр 19:40:36 1567042310
Аноним 07/01/20 Втр 19:41:20 1567044311
>>1567039
> ==
Приводятся к одному типу и только потом сравниваются.
Аноним 07/01/20 Втр 19:42:38 1567046312
Аноним 07/01/20 Втр 19:44:16 1567048313
>>1567042
У JS равно самое длинное.
Аноним 07/01/20 Втр 19:47:28 1567051314
>>1567046
спасибо, пойду читать
Аноним 07/01/20 Втр 19:50:59 1567059315
Аноним 07/01/20 Втр 20:00:01 1567069316
image.png (32Кб, 756x431)
756x431
>>1567059
Эх, как же хорошо жить в 2020 году, когда гугл наконец-то научился искать спецсимволы.

мимо
Аноним 07/01/20 Втр 20:14:37 1567080317
А можно в css var инициализировать ширину блока на основании ее размера содержимого. Условно я не знаю ее размер на момент декларации.
Аноним 07/01/20 Втр 20:33:23 1567096318
>>1567044
Т.е. если я сравниваю
'12' == 12 / true
'12' === 12 / false
?
Аноним 07/01/20 Втр 20:35:24 1567098319
>>1567096
Да. Сначала сравниваются типы, и если они разные, то false. Если одинаковые, то уже сравниваются значения.
Аноним 07/01/20 Втр 20:38:24 1567100320
+d5229dbc96222a[...].jpg (51Кб, 685x567)
685x567
Аноним 07/01/20 Втр 21:25:16 1567148321
>>1567009
>Такие вещи много бабосов не требуют. Просто пхп это серверсайд, а там всё аккуратнее делать надо, иначе у тебя не то что вёрстка поедет, а сам сервер ляжет. Поэтому и медленнее вводят новшества.
Я тебе говорю что это разраб пхп сказал, а ты ему говоришь что он не прав. Ну хз
Аноним 07/01/20 Втр 21:35:27 1567158322
>>1567009
> пхп это серверсайд, а там всё аккуратнее делать надо
Пхп - это последний язык для бека, про который так можно сказать. Обновляешь такой версию пхп - и у тебя в лучшем случае сайт заработает с варнингами, что такие-то функции устарели, а в худшем вообще не заработает, потому что их удалили нахуй.
Аноним 07/01/20 Втр 23:23:12 1567223323
Привет!
В nodejs-скрипте ставлю пакет с помощью кода:

childProcess.execSync('npm i '+module)

И тут же подключаю его с помощью require, но ловлю ошибку, что пакет не найден, хотя пакет ставится в node_modules и при следующем запуске скрипта пакет нормально подключается. почему так?
Аноним 07/01/20 Втр 23:27:05 1567225324
Аноним 08/01/20 Срд 00:05:01 1567240325
>>1565504
Кто дедушку разбудил?
Аноним 08/01/20 Срд 00:24:37 1567252326
>>1566963
>Если кто-то шагает впереди всех
Ебанутый, дядя? Куда жопоскрипт шагает и что там придумали такого, чего в программировании не было 50 лет назад? Если ты лично свою первую монаду увидел именно в жопаскрипте, то это не значит, что он куда-то там шагает.
Аноним 08/01/20 Срд 02:37:00 1567295327
Взял тестовое на ждуна и охуел. Надо сделать аудиоплеер на чистом жс с дополнительным функционалом. В гугле информация оче скудная, готовых решений на гитхабе нет. Придется тыкаться в web audio api аки слепой котенок.
Как же хочется написать еще один муисерчер, крад или лаповую тудушечбку...

Аноним 08/01/20 Срд 02:57:06 1567299328
Аноним 08/01/20 Срд 04:20:26 1567316329
>>1567295
любой js фрэймворк и jQ это чистый js.
В гугле куча плагинов написанных на jQ. Берешь один из них и переписываешь на legacy. Но я посоветовал забить. Если у тебя там в потрфолио несколько готовых проектов и предлагают какую-то дичь. То такое. На твоем месте я бы вообще панель саундклауда или ютуба прикрутил бы с видосом пошел нахуй пидарас. А вообще кидай тз, может ты в дебри уходишь
Аноним 08/01/20 Срд 06:08:03 1567326330
>>1567252
>чего в программировании не было 50 лет назад?
Например не было ЯП на котором можно писать все.
Например у той же джавы нет ни одной IDE единственное платное говно от идеи не в счет.
Тайпскрипта не было нигде. Не было постоянно подерживаемых линтеров всяких, а не хуйни необновляемой. Не было бабилей способных транспайлить скрипт в ранние версии. Не было ни одного языка который был бы говняным по своей структуре, но изза этого все начали считать не его структуру говняной, а говняным MVC и ООП в целом. И т.д. можно бесконечно продолжать. ЖС - единственный ЯП. Все остальное дохлое или мертворожденное говно мамонта. И если изобретут новый язык то это будет продолжение ЖС, а не чтото новое
Аноним 08/01/20 Срд 07:16:27 1567337331
>>1567295
Скидывай сюда, интересно
Аноним 08/01/20 Срд 10:11:30 1567367332
Selection013.jpg (66Кб, 1171x622)
1171x622
Selection014.jpg (126Кб, 1608x725)
1608x725
>>1567295

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

Если посмотреть что делают методы, всякие пропертисы и эвенты, то там есть примеры их использования и объяснение что они делают.
Аноним 08/01/20 Срд 10:17:07 1567369333
>>1567295

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

https://www.youtube.com/watch?v=GQzfF5EMD7o
Аноним 08/01/20 Срд 10:56:05 1567380334
>>1562152 (OP)
Чтобы подключить jquery достаточно только одного файла - jquery-3.4.1.min.js, а jquery-3.4.1.js можно выкинуть нахуй?
Аноним 08/01/20 Срд 11:14:28 1567387335
>>1567380
Как же мне горит с этого треда
Аноним 08/01/20 Срд 11:18:08 1567389336
Аноним 08/01/20 Срд 11:25:23 1567390337
>>1566633
> Может на старом говне мамонта джаве писать
Лол, то, что Джава старая, не делает её плохим языком. Да и к тому же ни у одного языка и близко нет настолько развитой экосистемы. На ноде самый популярный фреймворк для бэка сейчас NestJS, вот только с тем же Спрингом он и близко не стоит по количеству всяких плюшек, которые сильно упрощают жизнь (хотя он и усиленно пытается косплеить Спринг).
Аноним 08/01/20 Срд 11:46:45 1567397338
>>1567390
>то, что Джава старая, не делает её плохим языком
Делает.
А спринг - говно для индусов, с совершенно ебанутым взглядом на веб, который был устаревшим ещё в день релиза этого говна.
Аноним 08/01/20 Срд 11:49:16 1567399339
>>1567390
>самый популярный фреймворк для бэка сейчас NestJS
Нет, ему до express/koa как до луны
Аноним 08/01/20 Срд 11:57:46 1567400340
image.png (89Кб, 200x200)
200x200
Аноним 08/01/20 Срд 12:02:16 1567402341
>>1567399
>express/koa
Ты на этом дерьме вообще пробовал что-то писать? Это не современные фреймворки, а низкоуровневый скелет, на который нужно накидывать кучу либ и собственного кода, чтобы он стал хоть немного юзабельным. Единственное, что там можно написать - это хеллоуворлды, даже простейшую рест-залупу заебешься пилить и выйдет лютое неподдерживаемое говнище в итоге.
Аноним 08/01/20 Срд 12:08:16 1567406342
Аноним 08/01/20 Срд 12:51:05 1567419343
>>1567399
Я бы не назвал это фреймворками полноценными. Скорее библиотеки/микрофеймворки.
Аноним 08/01/20 Срд 13:07:15 1567423344
Аноним 08/01/20 Срд 13:23:40 1567433345
Ктот на js фбчатбота хуету писал?
Аноним 08/01/20 Срд 13:33:06 1567434346
>>1567390
>то, что Джава старая, не делает её плохим языком

Делает, у неё даже логотип какое-то душное говно из мобилок нулевых
Аноним 08/01/20 Срд 13:40:38 1567437347
>>1567434
Тогда и ЖС тоже говно.
Java:
>First appeared May 23, 1995; 24 years ago
Javascript:
>First appeared December 4, 1995; 24 years ago
Аноним 08/01/20 Срд 13:51:42 1567451348
Какой минимум нужно знать чтобы на джуна взяли на фронт? Заебало не работать.
Аноним 08/01/20 Срд 13:53:57 1567453349
>>1567451
Открываешь вакансии в своем городе -> смотришь требования.
вот тебе и минимум
Аноним 08/01/20 Срд 13:55:49 1567454350
>>1567453
Спасибо
На каких сайтах посмотреть можнокроме очевидно ххру
Аноним 08/01/20 Срд 14:00:44 1567458351
>>1567454
Не очень понимаю, чем тебе не нравится хх - крупнейший сайт же.
Ну можешь еще career.habr.com посмотреть, там только разработка.
Аноним 08/01/20 Срд 14:05:39 1567463352
>>1566469
Доплачивать нужно будет за возможность работать
Аноним 08/01/20 Срд 14:17:01 1567466353
>>1567295
Сбрось нормальное описание тестового
Аноним 08/01/20 Срд 15:11:02 1567486354
>>1566469
Вы рофлите всем тредом? Я когда устраивался на бэк ждуном за 30к, я все это что описал анон знал + имел опыт работы с vue. Но у меня блять рука не поднялась сказать что я могу во фронт.

Ахуеть как збс что мне приходится конкурировать с вами
Аноним 08/01/20 Срд 15:19:34 1567492355
>>1567486
>Я когда устраивался на бэк ждуном за 30к
Анон ты на ноде вкатывался в бек ? что по стеку посоветуешь ? я так понимаю, это базы данных, какой нибудь нод фрейворк и пет в виде чата ?
Аноним 08/01/20 Срд 15:24:17 1567497356
>>1567492
Нет. Вкатывался на пхп лол. Но сейчас перекатываюсь на ноду
Аноним 08/01/20 Срд 16:00:27 1567521357
>>1567148
>это разраб пхп сказал
Какой именно и где? Пока что слышно только как бабка на лавочке сплетничает.

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

>>1567158
>последний язык для бека, про который так можно сказать
>Обновляешь такой версию пхп - и у тебя в лучшем случае сайт заработает с варнингами
Зачем ты на 0 поделил в одном посте?
Заявил, что в ПХП не важно предварительное тестирование функционала вновой версии, и тут же что от кривого обновления у тебя бекенд может упасть. Что ты доказать хотел этим?
Аноним 08/01/20 Срд 16:00:42 1567522358
Господа офицеры, через месяц собираюсь начинать ходить по собеседованиям на фронт джуна, оцените стек изученного:
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.
Аноним 08/01/20 Срд 16:11:23 1567531359
>>1567522
Уже щас можешь пиздовать
Аноним 08/01/20 Срд 16:14:13 1567533360
>>1567522
Показывай гитхаб и профиль на литкоде
Аноним 08/01/20 Срд 16:18:19 1567536361
>>1567522
чем
>адаптивная вёрстка
отличается от
>отзывчивая вёрстка
и >меда-запросы

Нахуй ты указываешь вот это все, просто пиши html/css/js, React/redux
>месяц-полтора на подготовку к собесу
Завтра устраиваться иди, какие полтора месяца подготовки
Аноним 08/01/20 Срд 16:40:35 1567557362
>>1567521
> Заявил, что в ПХП не важно предварительное тестирование функционала вновой версии
Это другой анон был.
Пора уже ввести здесь регистрацию с привязкой номера, чтобы такой путаницы не было.
Аноним 08/01/20 Срд 17:05:14 1567573363
Анончики, подскажите:
у меня есть элемент, на котором висят два обработчика и при определённом действии я удаляю этот элемент. Нужно ли мне как-то дополнительно удалять эти обработчики или достаточно просто удалить элемент?
Аноним 08/01/20 Срд 17:26:15 1567596364
Аноним 08/01/20 Срд 17:47:02 1567614365
>>1562152 (OP)
Как сделать чтобы запретить открывать ссылку в новой вкладке (не спрашивайте меня зачем) ? т.е человек может перейти по ссылке только напрямую щелкнув по ней левой кнопкой мыши.
У меня пока самая банальная идея это запретить правый щелчок, но наверняка есть возможность открывать пустую вкладку, когда щелкается правая мышка и выбирается "Открыть в новой вкладке"
Аноним 08/01/20 Срд 17:50:06 1567616366
>>1567536
отзывчивая, это когда шаблон условно "резиновый", сжимается и растягивается, без проёбов.
адаптивный, это когда есть несколько макетов, под основные разрешения экранов, условные >1280px, 600px и 480px
По крайней мере я это так понял, может и не прав, я самоучка
Аноним 08/01/20 Срд 17:58:32 1567625367
>>1567614
Ещё запретить клик колёсиком, Ctrl+клик и хуеву тучу других способов, зависящих ещё и от браузера.
Ты ведь понимаешь, что это обходится на раз-два?
Аноним 08/01/20 Срд 17:59:55 1567627368
Аноним 08/01/20 Срд 18:24:55 1567649369
>>1567614
Хотя я придумал, как сделать подобное, но это довольно костыльно и я не уверен, что это будет работать.

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

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

Но энивей страницу можно будет выкачать
Аноним 08/01/20 Срд 18:29:54 1567653370
>>1567614
Никак.
Сделай ссылку не ссылкой, а кодом (e.onclick = () => location.href = ''). За это тебя обоссут половина пользователей, поисковые алгоритмы, все слегка альтернативные браузеры (нет, я не про файрфокс), всякая аналитика и тот кто будет после тебя иметь дело с кодом, но большинство пользователей не догадается как открыть не кликом.
Аноним 08/01/20 Срд 18:32:13 1567654371
>>1567557
>Это другой анон был.
Что, один пост 2 разных анона писали?

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

Вообще подозреваю, что разрабы ПХП уже наломали дров и набили шишек с этими своими обновлениями и теперь не торопятся с новыми фичами. А некоторые уже думаю решать проблему радикально и пилить язык P+ или как-то так где будет выпилено всё легаси и костыли, но будет куча новых фич.
Правда пока одни разговоры идут.
Аноним 08/01/20 Срд 18:46:53 1567664372
>>1567654
А, вот ты о чём, я криво выразился. Имелось в виду, что пхп сделан через жопу, поэтому слово "аккуратнее" к нему неприменимо. "Аккуратнее" было бы взять что-нибудь другое.
Впрочем, хз, что там с ним сейчас, но я до сих пор натыкаюсь на сайтики, где на самом верху два-три варнинга. Хотя бы выключали их, что ли.
Аноним 08/01/20 Срд 18:49:09 1567671373
>>1567522
Список ничего не говорит, к сожалению. В принципе всё по делу, но вопрос, на каком уровне ты всё это реально знаешь, без домашнего компа, без бумажки и закладок в браузере.
Аноним 08/01/20 Срд 18:51:45 1567677374
>>1567664
>что пхп сделан через жопу
>натыкаюсь на сайтики
Так я и на ЖС говна понаписать могу. Теперь и его через жопу сделанным назовёшь?

В общем понятно с тобой всё.
Аноним 08/01/20 Срд 18:54:17 1567682375
>>1567677
На пхп как ни напиши, будет пиздец.
Аноним 08/01/20 Срд 19:02:00 1567695376
>>1567596
А если у меня в обработчике будет висеть removeEvent браузеру от этого плохо не станет?
Аноним 08/01/20 Срд 19:09:16 1567700377
Аноним 08/01/20 Срд 19:52:40 1567729378
>>1567522
Сколько в целом веб изучаешь?
Хотя если все рили хорошо знаешь, то стек нормальный, можешь хоть завтра пиздошить как выше писали
Аноним 08/01/20 Срд 19:56:50 1567734379
>>1567522
>нет основных фреймворков жабоскрипта
>нет php
Мы вам перезвоним.
Аноним 08/01/20 Срд 19:57:39 1567735380
>>1567671
>Список ничего не говорит, к сожалению.
Двачую. В список обычно всё подряд запихивают.
Говорит только опыт работы и портфолио.
Аноним 08/01/20 Срд 20:12:19 1567738381
>>1567734

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

NodeJS, Angular?
Аноним 08/01/20 Срд 20:14:21 1567739382
>>1567734
>нет основных фреймворков жабоскрипта
Но ведь реакт/редукс

>нет php
Но ведь не фуллстек.
Аноним 08/01/20 Срд 20:31:36 1567747383
>>1567735
какое портфолию с джуна то?
Аноним 08/01/20 Срд 20:31:49 1567748384
Есть аноны, которые пользовались omdb api?
Он в ответ на запрос всегда присылает общее кол-во результатов и инфу о первых десяти фильмах. Как получить информацию о следующих десяти?
Аноним 08/01/20 Срд 20:32:58 1567749385
>>1567748

Нет возможности задать offset?
Аноним 08/01/20 Срд 20:39:25 1567751386
Аноним 08/01/20 Срд 20:39:36 1567752387
>>1567671
я не уверен что прямо все нюансы помню наизусть, но в любом случае уверено ориентируюсь, и даже если у меня вылетит правильное название какого-то метода, то мне не составит труда за пару минут с любой машины найти справку в официальных документах
Аноним 08/01/20 Срд 20:43:07 1567753388
>>1567735
а что я могу сделать для портфолио, как джун без коммерческого опыта? Какие-то не продакшн проекты, на которых я тренировался? Или лучше сделать парочку вылизанных во всех аспектах, на случай кодревью
Аноним 08/01/20 Срд 20:47:04 1567754389
>>1567522
Проекты есть? Сколько?
Списком этим подтереться можешь - будут смотреть твой код на твоих проектах. И если у тебя там копипаста одна с туториалов, то ты фактически ничего не знаешь.
Аноним 08/01/20 Срд 20:58:13 1567757390
>>1567748
Есть параметр page же. Указываешь номер страницы и всё.
Аноним 08/01/20 Срд 21:55:09 1567778391
image.png (41Кб, 575x176)
575x176
Ваши маняоправдания?
Аноним 08/01/20 Срд 21:57:16 1567779392
>>1567778
Ну да, это правильно.
Аноним 08/01/20 Срд 21:58:50 1567780393
CaringSandyBobo[...].gif (4137Кб, 456x262)
456x262
>>1567778

> сложно сложно ничего не понятно ряяя
Аноним 08/01/20 Срд 22:04:56 1567781394
>>1567780
Лол, ты даже не понял сравнения? Тот индус португалец бомбит от переписывания костылей обёрнутых в костыли для придания хоть какого-то единообразия коду. Сейчас в одном проекте на ноде намешаны синхронщина, промисы, асинки/авэйты и говногод с глобальными переменными без use strict.
Аноним 08/01/20 Срд 22:07:11 1567782395
>>1567778
Это всем очевидный факт.
Зачем оправдываться?
Аноним 08/01/20 Срд 22:09:41 1567783396
>>1567781
Кто ж ноду без тайпскрипта в 2к20 использует? Конечно говно выйдет - на ванилле-то. JS не для бекенда писан изначально.
Аноним 08/01/20 Срд 22:11:51 1567786397
>>1567783
Кто-то в 2к20 использует тайпскрипт?
Аноним 08/01/20 Срд 22:14:11 1567788398
>>1567786
Те, кто пишут бек. Без нормального ООП у тебя всё что выше тупого эхо-бота для телеги незамедлительно начнёт превращаться в лапшу со сливками поноса.
Аноним 08/01/20 Срд 22:16:09 1567790399
Привет, есть тут кто-нибудь кто разбирается в 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)
});
А как мне для этого объекта поменять поле имя, например? Нихуя не понимаю
Аноним 08/01/20 Срд 22:18:22 1567792400
>>1567790
Вот очередной чувак, который копировал сниппеты даже не пытаясь заглянуть в документацию. Точно как пэхапэшники, над которыми раньше смеялись.
Аноним 08/01/20 Срд 22:31:53 1567804401
>>1567792
Точно. Копипастят только пхпшники, а другие ведь не могут - у них технической возможности нет. Всё руками переписывают, даже с других сайтов.

сегодняшние жаваскриптеры суть - вчерашние пхпшники, лалка
Аноним 08/01/20 Срд 22:35:50 1567807402
>>1567792
Все так делают. Не надо пытаться уличить джаваскриптеров в латентной пхпшности.
Аноним 08/01/20 Срд 22:47:46 1567812403
>>1562152 (OP)
Что в ZOZO брать в качестве веб-сервера на ноде, express, meteor, koa или ещё что-то прямо сейчас набирающее популярность? Пишу небольшое приложение для read/write в эластик (аля поисковик).
Аноним 08/01/20 Срд 23:28:22 1567827404
Аноним 09/01/20 Чтв 01:15:56 1567885405
java.png (512Кб, 739x710)
739x710
Аноним 09/01/20 Чтв 01:22:43 1567888406
>>1567069
Говорят же тебе, научись гуглить.

js comparison operators
Аноним 09/01/20 Чтв 01:23:34 1567889407
js use async aw[...].jpeg (42Кб, 501x361)
501x361
>>1564270
>На практике легко прострелить себе ногу херово написанным колбеком/await и огрести блокировк

Маня, у тебя один поток, твоя блокировка с "херово написанным коллбэком" будет заметна сразу после первого запуска скрипта.
Аноним 09/01/20 Чтв 01:26:26 1567890408
Аноним 09/01/20 Чтв 01:43:03 1567897409
>>1567890
Я тебе говорю, если ты автор того скрина, то учись гуглить.
Аноним 09/01/20 Чтв 01:44:53 1567898410
>>1567402
Чего сложного в написании рест апи на экспрессе?
Аноним 09/01/20 Чтв 01:44:58 1567899411
>>1567889
Уважаемый, когда нам потребуется мнение макак, которые не писали больше 10 строк кода, мы вас спросим.
Аноним 09/01/20 Чтв 01:57:14 1567902412
>>1567899
Очередной маня-тралль с детской попыткой подъебать и развести срач.
Наверное ты себя очень умным считаешь.
Аноним 09/01/20 Чтв 02:29:22 1567911413
>>1567786
Все.

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

>>1567885
Это джава, она образец оверинжинеринга в угоду корпоративным энтерпрайз тимворк разработкам.
Аноним 09/01/20 Чтв 03:20:15 1567921414
>>1567911
>Типизация и ООП никак не связаны.
Причём тут типизация?
Аноним 09/01/20 Чтв 03:21:38 1567922415
>>1567921
При чем тогда тайпскрипт и "нормальное ООП"? ООП на основе классов есть давно и в нативном жс.
Аноним 09/01/20 Чтв 03:33:56 1567927416
>>1567922
Ты бы википедию хотя бы почитал перед тем как что-то доказывать. Ты даже не понимаешь о чём идёт речь.
Аноним 09/01/20 Чтв 03:52:19 1567931417
>>1567897
Зачем? Гугл и так всё нашёл.
Аноним 09/01/20 Чтв 07:07:42 1567950418
>>1566626
>мертвых шаблонах типа каррировния
Держи макаку!
Аноним 09/01/20 Чтв 07:23:07 1567953419
>>1567950
Либо ты борщехлёб, либо макака?
Аноним 09/01/20 Чтв 11:03:12 1568004420
Я у мамы сеньор, думаю попробовать уйти от фронта и погрузиться в язык (да, каким бы уебанским он не был).
На фронте не интересны вёртска и войны фреймворков, на бэке не интересны бд, ресты-хуесты – всё рутина.
В идеале хочу наверное заниматься ванилой на острие стандартов, хоть в TC39 пошёл бы заседать. Скорее всего ищу где нужно писать фреймворки-библиотеки-инструменты – нравится вертеть AST и разбираться в работе интерпретатора.
Каким вообще компаниям и сферам такое может понабится?
Аноним 09/01/20 Чтв 11:14:01 1568008421
Аноним 09/01/20 Чтв 11:43:04 1568014422
>>1568004
>Каким вообще компаниям и сферам такое может понабится?
Универститетам
>хоть в TC39 пошёл бы заседать
Там все работают на дядю или по конференциям есздиют и еблом торгуют.
Аноним 09/01/20 Чтв 11:53:22 1568019423
me-tries-to-mig[...].png (147Кб, 500x745)
500x745
Призываю тайпскрипт-богов в этот тред. Как сделать так, чтобы код работал, используя в тернарке isSelected переменную isMultiple? Если isMultiple заменить на Array.isArray(value) в тернарке, то код скомпилится, но это будет отстойно, ведь я сделаю одну и ту же проверку два раза. Почему оно вообще так работает?

https://www.typescriptlang.org/play/?target=7#code/MYewdgzgLgBAZmGBeGAKAbgQwDYFcCmAXDNAE4CWYA5jAD4lQXUDaAugDQwgAOU54EYmUpU2ASmQA+GAG8AsACgYymKEixyEALK5sfbtnzIYAQVKlMATwB0msxcsYcBMYsUquvfpGtwQpAFFMYAALVB4+cClZdw8VAHp4mEBWEEBBEEBuEEAOEBhAJhBAHhA0wCEQQD4QGE0dPXIDI0B+EGLAFhBUwsAGEBzMwsAZEFNzK1sIeysnPHwxThKYYsAJEEzARhBALhBswF4QZJgZwGEQeuTCmGzC1Jg6wE4QAsLOQHEQccLMmpgsYYYmUVZYuJhEmDziwDYQRdKsmFSm3SzU65xKM0A0iAwQACIM0ZsUWulSmdktDkoB2EAOqOSBUWizWgDkQMraXT6QwvOJqaDEgDK+EMwCg+AAJsZyqSquSlK84gB+GAAQgFdwIvkozKG0TuyCQKAi3lc3J5KmIIqMsrlXnAAG4KQBfRV6oA
Аноним 09/01/20 Чтв 12:16:00 1568026424
>>1567747
C прошлого места работы, например.
>>1567753
>без коммерческого опыта?
Это плохо, тогда придётся сначала работать за жрат.
Аноним 09/01/20 Чтв 12:16:32 1568027425
Товарищи, вопрос.

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

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

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

Но при таком подходе при наведении на один слайд начинается очень быстрая прокрутка всех слайдов. Как установить задержку для отработки события после триггера? Чтобы навел мышь на слайд, сработало событие, а следующее срабатывание было возможно только через 3 секунды. (Дабы избавиться от быстрой прокрутки всех слайдов при наведении на один)
Аноним 09/01/20 Чтв 12:19:02 1568028426
>>1567739
>реакт/редукс
Всего два фреймворка и не знаешь самых последних модных фрейморков.
Следующий!
Аноним 09/01/20 Чтв 12:23:57 1568031427
Аноним 09/01/20 Чтв 12:23:58 1568032428
>>1568027
Попробуй обработчик события mouseover в ф-ю throttle обернуть. В лодаше можешь взять эту ф-ю или npm пакетом скачать.
Аноним 09/01/20 Чтв 12:30:21 1568034429
>>1568031
для всего года пара фичей?
Аноним 09/01/20 Чтв 12:33:30 1568036430
Аноним 09/01/20 Чтв 12:33:48 1568037431
Аноним 09/01/20 Чтв 12:50:07 1568047432
>>1567927
Какой же ты тупой. Выйти и зайди заново в класс и расскажи заново без историй про википедию. Завтра придешь с родителями.
Аноним 09/01/20 Чтв 12:51:46 1568048433
>>1568027

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

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

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

Думаю идею ты понил.
Аноним 09/01/20 Чтв 13:00:50 1568058434
Аноны я нихуя не знаю и иду на собес, скорей всего меня возьмут, потому что я наглый ероха жулик.
Аноним 09/01/20 Чтв 13:07:59 1568066435
>>1568058

Веди себя прилично, увидят что ничего не знаешь, так хоть вменяемым и обучаемым себя покажешь.
Аноним 09/01/20 Чтв 13:17:07 1568074436
Пояните за деньги, мид на беке больше фронта получает?
Аноним 09/01/20 Чтв 13:23:55 1568076437
>>1568074
>мид на беке
получает столько, сколько попросит
Аноним 09/01/20 Чтв 13:24:55 1568078438
>>1568019
https://www.typescriptlang.org/play/?target=7&ssl=1&ssc=1&pln=26&pc=2#code/PTAEnwQQBEEDhBB4QRWEEqS9AMIIbhBqHYQVgxEGtKAC4CeADgKagDmArgIYBOAJgDSiBcIIHwggQiBeSBpEECcIO0AiIKg49ogcRB4gQRAO0doH4QLoCYQPpEDyIPB6hAvCCopa-cNABBRo3okAdAEsAzpeskAsACgQoQKgggZhAuUDlYATl0UDVQPlh2aT5QLn0grg5IVEBJEFRdCK4sWC5ANhBTeCjoZQEg0HoAOxJQAB8q2oBtAF1QQBYQQJqSNs8AYwB7asciUH7aUcGAWwBJZysbUABeUAAKegAuJrrGnraASm36UCcdtpWAPgtFuycXGw2DzwHh0dAAM2qV9YA3egANrQKNtRox7NVqA1QGCIdQ2uxBmQiPY3qCiODIYcrqAAN6eUCE8ZvMZOACytABKLIAKoqwedwWrjW-yBFGeHgJRKRKLetg+g0YAFF6P0ABZrHmo77La74jxExWgbzyTARBByeLkynU2mgVQdTWoNTQHiAGRAbq4HEzHqzgQd2PEuIAJEGggEYQRQGEpuwDCIB1soQeHJ9VwhAgeLF4lJlKA7VRYVjWlylcqwPkioE1XJ-egjGbI1w3RU0m7eBhArIUFh9Yh4Ah9PofYA5EFOjgpVPsNIoLwVKdToEAuCDwdBmrBaFS8LiwH2gOKBAAqAGUvaB09lVPotObZ07DKA4PBshwJFx4ABaJ08fQu+D6aAlDigQCyINEfcmld5YKg5HJoGofbYoCACgg6BaF6ATPvEyiQFwmqBAARoMgy0jUgGAEggUQSNAgCiIEE6A+tIqBaLhjYZvuciqCOWDqHmUS2Potjvoq3ikJQNAMCw7DcJoZhyCkaSZNkai5OmxSlOUgGAIQghaamot7XuwDLWgyoA+gU8BMUS3haGooG6HIYGsVQdBMGwBiBKJgSGMo0ByLRcjCUI6zBIB0EHpAByMb2KYgJphLeGhmihhEqAwKg+h6Gs+glFwsj6Ba2H8C60BCAcoCACgEnDflI27KLW9aNi2kQJvC7SVvA1b0I4mx+f2LKAsCVSODCGJwoc-IQsw9UAjirIrMsqxSsMHJ9qmtUBZ04XXrAnD8bo014QRWSgPh0jOiU0GwfEagCFgAhqLRSn3LcWUFB0ZhpFgrDjWA6iINh8AdKu0B3l+I6mEIXmjUMIyko4i4ULS-REBQzA-BMUxzDaJDdfatWKgA-KAACEyNxh11RdX1sqxoC-WDci0ojaNRLbHG+OgEN1QANzvgAvhydNAA

Вроде все объяснил.

не TS-бог, могу и ошибаться
Аноним 09/01/20 Чтв 13:36:42 1568094439
>>1568019
Еще можно самому явно приводить аля (value as string[]).find
Но лучше делать через гарды как у >>1568078 куна.

Я не уверен на счет ручных приведений как допустимой практики. В обычной тернарке это может быть более оправданным, чем написание тайпгарда, но вообще ручные приведения потенциально опасны и можно таким образом успешно обмануть и компилятор и себя.
Аноним 09/01/20 Чтв 14:21:02 1568114440
Аноним 09/01/20 Чтв 15:10:21 1568134441
Решил включить замерялку FPS в девтулзе, почему у меня большую часть времени очень мало фпс, 1-5, когда ничего особо не кликаю и у меня не лагает? В играх, например, если ничего не делаешь и смотришьв стену, то всегда много фпс, а в браузере мало. Чем фпс в браузере отличается от того, что в играх?
Аноним 09/01/20 Чтв 15:15:48 1568138442
>>1567739>>1568028
Ни реакт, ни редух, фреймворками не являются. Перезвоним обоим.
Аноним 09/01/20 Чтв 15:16:46 1568142443
Аноним 09/01/20 Чтв 15:20:51 1568147444
>>1568138
Таблетки выпить забыл?
Аноним 09/01/20 Чтв 15:24:41 1568151445
>>1568147
Ребенок, не позорься, еще годик в ридонли посиди и вопросы позадавай, потом может быть сможешь высказывать мнение, имеющее хоть какую-то ценность.
Аноним 09/01/20 Чтв 15:30:07 1568157446
>>1568151
Это говорит человек, который предлагает вместо реата учить вью\ангуляр, потому что реакт это БИБЛИОТЕКА
Аноним 09/01/20 Чтв 15:33:06 1568160447
>>1568147
Ну какбэ этот анон прав, это библиотеки, а не фреймворки, у тебя из штанов странно пахнет.
09/01/20 Чтв 15:42:06 1568174448
>>1568138
Пиздец, этот тред по своей тупости пробил дно. Казалось бы, куда уж дальше, ан нет, можно вбросить тупой срач о терминологии, оказывается.
Аноним 09/01/20 Чтв 15:45:24 1568178449
>>1568157
Шизик, ты опять с голосами в голове говоришь? Где там хоть слово про ангуляры с вью?
Аноним 09/01/20 Чтв 15:55:06 1568183450
>>1568174
Нельзя позволять, чтобы в лучшем треде программача говорили глупости. Будем сраться до последнего, пока за шизиком не придут санитары.
Аноним 09/01/20 Чтв 16:00:52 1568187451
Аноним 09/01/20 Чтв 16:37:24 1568227452
В коде есть функция для расчета погрешности азимута, есть переменная, которая держит последнюю посчитанную погрешность и span, в которой она записывается после того, как посчитать. Как их все назвать по разному? У меня получается 3 bearingError, это же хуйня.
Аноним 09/01/20 Чтв 16:37:47 1568231453
>>1568187
Очень аморфно, на самом деле.

Вообще:

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

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

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

Ангуляр же своими разработчиками вообще позиционируется как платформа для разработки, подразумевая, что они за тебя вообще постарались решить практически все и тебе осталось там только писать хелоу ворлды (на самом деле нет).
Аноним 09/01/20 Чтв 16:43:19 1568241454
>>1568187
>>1568231
Вообще не парься. Определение фреймворк-библиотека-платформа это что-то из разряда вопросов философии/политоты. Очень часто что-то называют фреймворком, библиотекой или платформой из скорее маркетинговых соображений, нежели из за реальной скрупулезной номенклатуры.

Тот же реакт можно и фреймворк считать, но его авторы позиционируют его как библиотеку настаивая на том, что он очень базовый сам по себе и ничего тебе не диктует. На самом деле вокруг реакта есть четко оформленная экосистема и в итоге выбор реакта создаст тебе столько же рамок и задаст направления, как если бы ты выбрал ангуляр (хотя и значительно меньше, но все же).
Аноним 09/01/20 Чтв 16:48:41 1568253455
>>1568241
>Определение фреймворк-библиотека-платформа это что-то из разряда вопросов философии/политоты
Только в манямирке неполовозрелых фронтендеров.
У взрослых дядь библиотека — это набор функций, фреймворк — это набор функций (см. libcurl) + использующих их функций, а также паттернов написания кода с использованием этих функций (см. Rails). Вот платформа, да, не имеет ничего общего с точной терминологией.
Аноним 09/01/20 Чтв 16:52:59 1568262456
>>1568253
Почему Реакт не фреймворк тогда? Он диктует тебе набор последующих решений своей экосистемы и он диктует тебе flux архитектуру от который ты вынужден потом строить все свое приложение.
Аноним 09/01/20 Чтв 16:58:13 1568271457
>>1568134
Браузер ничего не перерисовывает, на странице ничего не меняется, новых фреймов нет.
Игры часто физику или мир просчитывают в том же ивевентлупе что графику. И вообще там другой фпс считается, игра тоже может оптимизировать себя и ничего не считать, но видеокарта всё-равно будет ебашить.
Аноним 09/01/20 Чтв 17:06:31 1568282458
>>1568262
Хуй знает, я редукс вообще нахуй выпилил из приложения, оставил только аполло - так заебись стало.
Аноним 09/01/20 Чтв 17:16:58 1568297459
>>1568262
Да потому что хуйня это всё. У лингвистов есть аналогичныф срач "Язык vs диалект". Много петушни, мало толку.
Называй так, как называют авторы, не ошибёшься. Но факт знания, что это именно библиотека, а не фреймворк, в ходе разработки не пригодится точно.
Аноним 09/01/20 Чтв 17:18:25 1568301460
>>1568271
А как мне понять, что у меня хуевый фпс? Вроде как фпс должен быть не ниже 60, но в реальности у меня почти постоянно фпс ниже 60, но ничего не лагает при этом.
Аноним 09/01/20 Чтв 17:21:09 1568306461
>>1568297
Срач хоть и петушиный, но у меня не один раз на собесах спрашивали, что такое реакт, ожидая, что я скажу, что это фреймворк, чтобы потом обоссать меня с ног до головы. Но анон не дурак.
Аноним 09/01/20 Чтв 17:22:19 1568308462
как и кто пилит новые фичи для жс?
09/01/20 Чтв 17:24:14 1568311463
>>1568282
И что, костыль с графкуель работает быстрее редакса?
Аноним 09/01/20 Чтв 17:25:21 1568313464
Ебаная сажа с ебаной куклой, сука блядь.
Аноним 09/01/20 Чтв 17:25:27 1568314465
>>1568301
ФПС чего? Очевидно ты ничего не рисуешь.
Дроч на фпс это не про веб если ты не на канвасе рисуешь что-то.
Аноним 09/01/20 Чтв 17:28:42 1568318466
>>1567911
> Типизация и ООП никак не связаны.
Труъ-ооп, по заветам Кея, как раз таки должно реализовываться в языках с динамической типизацией. Все эти ваши джавошарпы настолько же далеки от ООП, насколько далеко от ФП реакт.

Дебилам просто протолкнули очередную модную хуетень под соусом чего-то большего, чем просто очередной уровень абстракции, а они и рады. Схавали за обе щеки, так сказать.
Аноним 09/01/20 Чтв 17:29:58 1568320467
>>1568318
>Труъ-ооп, по заветам Кея, как раз таки должно реализовываться в языках с динамической типизацией.
руби?
Аноним 09/01/20 Чтв 17:30:06 1568321468
>>1568314
а ок, я так понимаю, имеет смысл только фпс анимаций замерять
Аноним 09/01/20 Чтв 17:35:46 1568323469
>>1568187
Библиотека не диктует тебе, как нужно организовывать бизнес логику, она просто дает набор функций для реализации какой-либо задачи. В реактоприложении ты можешь легко вынести 90% любой логики компонента(10% - это дроч со стейтом, но и его хуками теперь можно изолировать кое-как) в любой удобный формат и использовать реакт только для того чтобы писать шаблон в dom, что и есть та самая единственная задача, которую реакт помогает решить как библиотека.
Аноним 09/01/20 Чтв 17:37:45 1568325470
а можно сделать так,что кусок кода в спа нельзя было увидеть или понять?
Аноним 09/01/20 Чтв 17:38:00 1568326471
Аноним 09/01/20 Чтв 17:38:27 1568328472
Аноним 09/01/20 Чтв 17:38:47 1568329473
>>1568325
Вынести его на сервер.
Аноним 09/01/20 Чтв 17:39:43 1568331474
Аноним 09/01/20 Чтв 17:40:29 1568332475
>>1568328
Но при этом ООП они реализуют как по определению. Ты наверное вообще охуеешь, если узнаешь, что ФП и ООП друг друга никоим образом не исключают и обе парадигмы можно использовать вместе.
Аноним 09/01/20 Чтв 17:41:17 1568333476
>>1568331
Отправляешь своим клиентам html файлы по почте?
Аноним 09/01/20 Чтв 17:42:33 1568336477
>>1568331
ну так захуярь из кода, который ты не хочешь показывать, внешний апи и дёргай его из кода, на который тебе похуй.
Аноним 09/01/20 Чтв 17:42:41 1568338478
>>1568331
минифицируй, специально говнокодь как индус
Аноним 09/01/20 Чтв 17:43:12 1568340479
>>1568332
ну да,со скалой работал
Аноним 09/01/20 Чтв 17:50:37 1568353480
>>1568338
Если у человека есть прямой доступ к сурс-коду и желание разобраться, что этот код делает, то он разберется не то что в индусском говне, а даже в бинарнике. Так что не советуй хуйню ньюфагам, единственный способ "спрятать" код от клиента - это вынести этот код на сервер, больше никаких.
Аноним 09/01/20 Чтв 17:57:41 1568358481
Хочу написать бота для этйо поеботы https://orteil.dashnet.org/cookieclicker/
Хотел найти инфу про хуки в js - не нашел. Куда искать? Что почитать на эту тему?
Аноним 09/01/20 Чтв 17:58:16 1568359482
Аноним 09/01/20 Чтв 17:58:43 1568360483
image.png (102Кб, 480x400)
480x400
>>1568332
>что ФП и ООП друг друга никоим образом не исключают и обе парадигмы можно использовать вместе.
Аноним 09/01/20 Чтв 18:01:36 1568367484
>>1568359
Там перехватывать можно события браузера? Это же вроде просто набор команд для управления вводом клавомыши. А мне надо еще и печеньки ловить, которые в случайном месте появляются.
Аноним 09/01/20 Чтв 18:04:53 1568375485
Screen Recordin[...].mov (11107Кб, 856x884, 00:00:13)
856x884
>>1568358
Я б тебе не перезвонил
Аноним 09/01/20 Чтв 18:05:43 1568377486
>>1568308
OpenJS Foundation, в которую объединились JS Foundation и Node.js Foundation. Потом на бумаге все решения заверяют в Ecma International как часть стандарта ECMAScript.

Вот тут можно публичные обсуждения и стадии разных предложений посмотреть.
https://github.com/tc39
Аноним 09/01/20 Чтв 18:06:12 1568379487
>>1568320
Тоже не тру. Внезапно, ближе всего к тому самому смоллтоку именно жс. А долбоебы типа вот этого, >>1567788, боготворящие убогую концепцию классошлепства вместо программирования, являются настоящими макаками.

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

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

Предлагаю заклеймить ооп-выродков раком айти и ссаными макаками, гнобить и унижать их при каждом удобном случае.
Аноним 09/01/20 Чтв 18:06:46 1568381488
>>1568377
а че пяток фич в год?
Аноним 09/01/20 Чтв 18:08:31 1568383489
>>1568358
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();
}
Аноним 09/01/20 Чтв 18:09:28 1568384490
>>1568318
Страуструп угнал этот термин и его ООП в коммерческой разработке стало более популярным. Объективная реальность.

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

Определение ООП это одна из тупейших спец-олимпиад в мире погромирования. За такое пора уже в биореактор отправлять.
Аноним 09/01/20 Чтв 18:13:03 1568392491
>>1568381
Потому-что в ~2016 все начали неистово умолять писателей жс фреймворков и новых фич в языке немного астанавиться и они реально немного астанавились.

Вот тут можешь оценить масштаб нытья того периода.
https://habr.com/ru/post/312022/
Аноним 09/01/20 Чтв 18:13:40 1568393492
>>1568384
>я дурачок и не могу выделить единственную уникальную фичу ООП парадигмы, а значит это спецолимпиада
Держи в курсе.
Аноним 09/01/20 Чтв 18:14:31 1568394493
>>1568392
>Потому-что в ~2016 все начали неистово умолять писателей жс фреймворков и новых фич в языке немного астанавиться и они реально немного астанавились.
Нихуя они не остановились. Кто хочет - тот пишет. А ты не обязан изучать каждый пук твоего любомого разработчика.
Аноним 09/01/20 Чтв 18:16:27 1568395494
>>1568384
> Страуструп угнал этот термин и его ООП в коммерческой разработке стало более популярным. Объективная реальность.

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

Миллионы мух не могут ошибаться? То, что сейчас называют ООП, стало популярно лишь из-за общего уровня снижения математической подготовки разработчиков, которых нужно загонять в строгие рамки, дабы избежать тонн говнокода. Это объективно плохо.
Благо современные инструменты стараются делать, как минимум, мультипарадигменными.

Аноним 09/01/20 Чтв 18:17:48 1568399495
>>1568392
и что,в жс фич больше,чем в питоне,руби,жаве?
Аноним 09/01/20 Чтв 18:20:38 1568401496
>>1568399
Да. Если брать всю экосистему жс, то там фич будет больше, чем во всех перечисленных тобой языках вместе взятых. И их экосистемах.
Аноним 09/01/20 Чтв 18:21:52 1568403497
>>1568395
Речь идет о том, что человек который доебывается до сраусиного определения ООП слегка долбоеб, потому-что так уже случилось и ничего с этим поделать нельзя. Ты реально на работе тоже будешь доебываться колег из за того, что под ООП в переписке будут подразумивать страусинное ООП?
Аноним 09/01/20 Чтв 18:22:49 1568405498
>>1568401
а правда,что в жс кастрированое ООП?
Аноним 09/01/20 Чтв 18:24:18 1568406499
>>1568405
Там все кастрированое.
Аноним 09/01/20 Чтв 18:24:29 1568407500
Аноним 09/01/20 Чтв 18:26:29 1568411501
>>1568406
те написать что то может сложнее,чем на жаве?
полкчается нода с жс-галимое прототипирование?
Аноним 09/01/20 Чтв 18:28:54 1568414502
>>1568405
По определению страусинного ООП - да.
В JS ООП как в языке Self, в котором взяли за основу страусинное, но потом слегка свернули в сторону.
Аноним 09/01/20 Чтв 18:30:57 1568416503
>>1568405
>>1568414
Уже почти пришли к страусиному на самом деле.
Остались только приватные проперти и они в стейдж 2 или 3.

А ваще в жс всё объект, даже функция, даже аллах. Объектно-ориентирование некуда.
Аноним 09/01/20 Чтв 18:32:41 1568420504
>>1568403
>так уж случилось
Если завтра так уж случиться и у тебя появится геморрой, ты не пойдешь в больницу?

>>1568405
Если ты про ООП а-ля «наебашим классов, обмажемся полиморфизмом и будем НАСЛЕДОВАТЬ» - да, инструменты для такой разработки в жс менее мощные, чем в джавошарпах.
>>1568411
> те написать что то может сложнее,чем на жаве?
> полкчается нода с жс-галимое прототипирование?
Почитай тред. Я только что объяснял, почему то, что ты подразумеваешь под ООП - хуетень.
Аноним 09/01/20 Чтв 18:33:00 1568421505
>>1568416
Не совсем. Потому-что классы в жс это сахарная обертка над прототипами. Под капотом там все равно остается прототипное наследование.
Аноним 09/01/20 Чтв 18:34:01 1568424506
Размышления о "настоящем ООП" это все равно что размышления о настоящем говне. Может ли вот этот катяшок считаться настоящим Говном с большой буквы или он слишком мал для этого? Что на счет поноса - нужна ли для него отдельная категория. И так далее и так далее. Охуеть как глубоко и увлекательно.
Аноним 09/01/20 Чтв 18:35:15 1568425507
>>1568421
костыль для костыля
Аноним 09/01/20 Чтв 18:35:53 1568428508
170402lcsihzbkn[...].png (283Кб, 586x634)
586x634
>>1568424
Осторожнее, ты на двачах. Сейчас еще реальные ценители говна прибегут и засрут весь тред срачем о том, какой формы должно быть настоящее говно.
Аноним 09/01/20 Чтв 18:38:07 1568431509
>>1568416
> А ваще в жс всё объект, даже функция, даже аллах. Объектно-ориентирование некуда.
Ещё один человек, который не понимает, что функции первого - не признак страуструпского говна, а наоборот.
Аноним 09/01/20 Чтв 18:38:52 1568432510
>>1568431
первого класса

фикс*
Аноним 09/01/20 Чтв 18:39:17 1568433511
когда уже на ноде можно запилить тырпрайз?
Аноним 09/01/20 Чтв 18:50:55 1568444512
Аноним 09/01/20 Чтв 18:54:45 1568446513
>>1568416
Далеко не всё. Примитивные значения - не объект. Операторы - не объект. Ключевые слова - не объект.

>>1568421
Неверная мантра. Это не просто "сахарная обёртка". Есть довольно существенные отличия "класса" от обычных прототипов.
Аноним 09/01/20 Чтв 19:32:15 1568472514
es 2020 приймут в начале года или в конце?
Аноним 09/01/20 Чтв 19:37:54 1568480515
>>1568472
Нет никакого примут.
Да и никакого 2020 тоже нет, это условное спекулятивное обозначение.
Те фичи который сейчас называют es2020 (glolbalThis, ??) уже формально часть стандарта, но не высечены пером, это вот-вот в январе должно случиться.
Если в феврале что-нибудь ещё приедет в стейдж 4 это тоже будет называться es2020.
Аноним 09/01/20 Чтв 19:41:14 1568485516
>>1568480
получается.в начале года они принимают в целом фичи на весь 2020?
Аноним 09/01/20 Чтв 19:57:05 1568505517
>>1568446
>Неверная мантра. Это не просто "сахарная обёртка". Есть довольно существенные отличия "класса" от обычных прототипов.
Поясняй давай, что имел в виду. Классы в JS - сахар, обычные объекты, строго говоря, классов в привычном понимании относительно других языков в JS вообще нет.
Аноним 09/01/20 Чтв 19:58:01 1568507518
вам не похуй,как оно там устроено,главное чтобы удобно было
Аноним 09/01/20 Чтв 20:31:50 1568550519
>>1568505
>Поясняй давай, что имел в виду. Классы в JS - сахар, обычные объекты
Понятие "класс" и ему соответсвующие термины в контексте JS действительно ввелись ради упрощения освоения языка другим программистам, придешдших с классовых ООП языков. Но я имел ввиду не это. Например, функцию можно сразу как бы заранее использовать, перед тем, как реализовать и благодаря механизму "поднятия" интерпретатор JS не выбросит никакой ошибки, в отличии от класса: https://jsfiddle.net/3Lzgoh1y/
Ещё одно известное мне отличие - в классах нельзя объявлять методы с помощью стрелочной функции(без бабеля). Ну и вообще классы имееют иную структуру для AST.

>строго говоря, классов в привычном понимании относительно других языков в JS вообще нет.
Ну типа да, но вместо классов есть прототипы. Вообще, JS выбрал протипы из-за своей недальновидности - раньше и браузеры были медленее и непредсказуемые, а реализация поведения через прототипы была намного проще.
Аноним 09/01/20 Чтв 20:34:48 1568553520
когда ломать и переписывать,добавлять фичи ради фич перестанут?
Аноним 09/01/20 Чтв 20:38:02 1568558521
Из-за чего addEventListener на элементе может срабатывать только один раз?
Аноним 09/01/20 Чтв 20:52:06 1568569522
шалом, программисты, у меня тут вопросик появился, он мне кажется совсем идиотским, но я что-то подвис. В общем я тут практикуюсь в реакте-редаксе, делаю свою версию популярного из примеров приложения todo-app прикрутив всё это дело к firebase. Хранится у меня массив этих todo'шек в базе, при загрузки странички я диспатчу ээкшен который включает сагу, и этот массив загружается и отображается на страничке. То есть я вынес асинхронный экшон в редак-сагу, тут всё понятно, грубо говоря это запрос get. Но на самой страничке я сделал два обработчика прямо в jsx, без вынесения в сагу, там у меня точно такое же асинхронное действие, даже сложнее, я сначала загружаю с базы данных, потом перебираю то что получил, и ещё раз обращаюсь к конкретной записи для удаления. По идеи это тоже асинхронное действие, но никаких проблем в выполнении это не вызывает. Вопрос: где именно я долбаёб и почему?
Аноним 09/01/20 Чтв 20:54:07 1568570523
>>1568558
незнаю у меня все нормально работает
Аноним 09/01/20 Чтв 20:55:49 1568572524
>>1568569
Очень тяжело понять что у тебя вообще происходит. Выкладывай на гитхаб.
Аноним 09/01/20 Чтв 20:57:40 1568574525
>>1568569
>я сначала загружаю с базы данных, потом перебираю то что получил, и ещё раз обращаюсь к конкретной записи для удаления.
Так это у тебя простое поведение. В самой документации саг же сказано, что он необходим для сложной асинхронной логики и для обработки сайд-эффектов.

Для элементарных действий вроде выгрузки каких-то данных с АПИ можешь прямо в компоненте всё это делать. Если что-то посложнее и ты чувствуешь, что это может где-то переиспользоваться - лучше вынести в сагу.
Аноним 09/01/20 Чтв 21:00:25 1568576526
Переформулирую >>1568558
У меня есть спан, на который я навешиваю два обработчика https://jsfiddle.net/ofvjkb1L/
Первый срабатывает только один раз, после этого одиночные клики он не распознаёт.
Аноним 09/01/20 Чтв 21:01:36 1568577527
>>1568574
а как-же "Action-функции обязательно должны быть чистыми"? Разве не для любой асинхронищины используют мидлвары?
Аноним 09/01/20 Чтв 21:05:02 1568586528
>>1568572
я обращаюсь к firebase realtime database нативными функциями из пакета firebase внутри обычной функции-обработчика, которая висит на компоненте.
Мой диссонанс в том, что это работает. Читая документацию я чётко усвоил что любой асинхронный код надо выносить в мидлвары, и теперь я не понимаю нихуя
Аноним 09/01/20 Чтв 21:07:49 1568595529
>>1568577
Должны, но я говорил не про редакс, а про реакт. Это редакс по дефолту не поддерживает асинк флоу и поэтому используют миддлвары. Я например для каких-нибудь статичных страниц могу вытянуть данные прямо в хуке useEffect и ничего страшного у меня не происходит. Если поведение чуть-более сложнее, чем просто взять, отфильтровать и засетить в стейт - тогда использую сагу.
Аноним 09/01/20 Чтв 21:09:15 1568598530
>>1568586
>Мой диссонанс в том, что это работает. Читая документацию я чётко усвоил что любой асинхронный код надо выносить в мидлвары, и теперь я не понимаю нихуя
А почему это не должно работать? Реакт !== Редакс. В реакте можно делать асинхронные вещи. И сайд эффекты иметь можно.
Аноним 09/01/20 Чтв 21:17:08 1568605531
>>1568595
>>1568598
> Аноним 09/01/20 Чтв 21:09:15 №1568598 530
я, кажется, понял, почему я долбаёб. Получается я могу оставить всё как есть. Будет один мидлвар, который загружает к хранилище массив этих заметок при монтировании странички. А удаление и редактирование записей будет без вынесения в экшены и связей с редаксом, просто кодом на компоненте. Благодарю
Аноним 09/01/20 Чтв 21:26:52 1568609532
Анончики, ответьте на этот вопрос плз >>1568576
Аноним 09/01/20 Чтв 21:35:48 1568620533
Аноним 09/01/20 Чтв 21:36:44 1568621534
>>1568609
Сделай нормальную демку, где проблема воспроизводится.
Аноним 09/01/20 Чтв 21:43:51 1568628535
>>1568621
Да мне тогда придётся весь проект запихивать
Аноним 09/01/20 Чтв 22:29:51 1568706536
>>1568621
Вот укороченная версия
https://jsfiddle.net/r3c8xsu9/1/
При первом клике на спан вылетает алерт, но последующие клики он не ловит.
Аноним 09/01/20 Чтв 22:31:54 1568709537
>>1568706
timer = null добавь после алерта.
Аноним 09/01/20 Чтв 22:33:56 1568712538
>>1568706
>>1568709
А в условии isNaN(timer); Тогда будет и тротлиться и срабатывать.
Аноним 09/01/20 Чтв 22:35:39 1568713539
Аноним 09/01/20 Чтв 22:35:55 1568714540
Аноним 09/01/20 Чтв 22:59:10 1568750541
>>1568714
Может тогда уж delete timer?
Аноним 09/01/20 Чтв 23:15:33 1568775542
>>1568558
У тебя первый обработчик всегда будет перекрывать второй. Вешать на один элемент и click и dblclick - очень плохо.
Аноним 10/01/20 Птн 00:09:04 1568828543
>>1568750
Меня вариант с undefined вполне устраивает, т.к. эти обработчики висят на элементе поиска, который может использоваться неоднократно.

>>1568775
Такое задание
Аноним 10/01/20 Птн 04:53:25 1568902544
Аноним 10/01/20 Птн 12:54:26 1569007545
Будет ли ухудшаться производительность, если ставить одно и то же цсс свойство дом узлу? Например, если по клику на кнопку делать так: btn.onclick = () => btn.style.width = '250px', браузер будет перерисовывать кнопку каждый раз, когда я на неё кликну или он поймет, что кнопка и так 250 пикселей, а значит её не надо перерисовывать?
Аноним 10/01/20 Птн 13:04:52 1569009546
Аноним 10/01/20 Птн 13:07:46 1569010547
Аноним 10/01/20 Птн 14:57:18 1569065548
>>1569007
Зависит от алгоритмов браузера.
Скорее всего будет пересчёт, не будет перекомпоновки и перерисовки.
Аноним 10/01/20 Птн 16:11:44 1569106549
>>1569007
Существуют даже хаки связанные с обращением к свойствам элементам, что бы тригернуть пересчет их рендера.

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

Но вообще, я думаю, что это не покрыто какими-то стандартами (пруф ми вронг, если кто прошарен) и нет никаких гарантий, что такое поведение будет постоянным на протяжение будущих обновлений.
Аноним 10/01/20 Птн 17:43:35 1569135550
.png (50Кб, 1004x234)
1004x234
+ $10000
Аноним 10/01/20 Птн 18:34:56 1569153551
>>1568605
Нет, если используешь редакс, выноси всю асихронную логику в него. Хз как саги, я это делал через thunk
Аноним 10/01/20 Птн 18:47:38 1569163552
Подкиньте мотивации пожалуйста.
Аноним 10/01/20 Птн 18:53:38 1569165553
>>1569163
Вкатился на реакт без опыта на мидл вакансию на 70к за 2 месяца, дефицит кадров пиздец. До этого год фрилансил на битриксе
Аноним 10/01/20 Птн 19:13:01 1569171554
>>1569165
ДС?
В моей мухосрани только похапе(уии) программисты нужны.
Аноним 10/01/20 Птн 19:14:15 1569172555
>>1569171
Ну иди поработай пхп погромистом. Набей опыта, а потом укатывайся в удаленку - там вообще пофиг в какой мухосрани ты живешь, лишь бы интернет был.
Аноним 10/01/20 Птн 19:16:04 1569173556
Аноним 10/01/20 Птн 19:17:48 1569174557
>>1569173
Но вообще можешь повисеть в поисках удаленки на реакт на джуна. К концу января должен рынок активизироваться. Проблема удаленки только в том, что туда чаще ищут опытных девов. Но в теории и джуна могут куда-то взять. Ищи везде, где только можно, включая канал в телеге.
Аноним 10/01/20 Птн 19:18:38 1569176558
>>1569173
И сделай какой-то свой сайт, где бы ты выкладывал какие-то крутые штуки, которые ты накодил - это кайнд оф заменитель опыта работы.
Аноним 10/01/20 Птн 19:20:30 1569179559
>>1569171
Томск, хотя недавно видел в обсуждении на хабре, что в Томске завышены зп в ИТ в силу конкуренции
Аноним 10/01/20 Птн 19:23:10 1569182560
image.png (2Кб, 259x81)
259x81
Аноны, ищу работу в ДС на hh (фронт джуниор/стажер). Откликаюсь на frontend и постоянно приходит вот этот результат пикрелейтед. Как это расценивать? Им лень ставить отказ или все таки есть шанс, что позовут?

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

Аноним 10/01/20 Птн 19:25:12 1569188561
>>1569176
> И сделай какой-то свой сайт
На похапе?
Щас максимум могу на питоне и жсе хуету какую-нибудь сварганить.
Без фреймворков естественно слишком сложна
Думаю мб nodejs попробовать
Аноним 10/01/20 Птн 19:26:10 1569189562
Аноним 10/01/20 Птн 19:26:42 1569190563
>>1569188
Успехов тебе с нодой
>Без фреймворков
Аноним 10/01/20 Птн 19:35:39 1569197564
>>1569190
А что такое? Без них вообще никак? Я просто для обучения принципиально ничего не хочу использовать. хз насколько правильный такой подход
Аноним 10/01/20 Птн 19:37:42 1569198565
>>1569189
Спасибо. Прочитал по диагонале.
Исходя из твоего опыта, все же стоит звонить или цугцванг
Аноним 10/01/20 Птн 20:02:33 1569213566
>>1569198
Исходя из моего опыта, по всем интересным резюме рекрутерша пишет первой.
Аноним 10/01/20 Птн 20:13:01 1569220567
>>1568485
Комитет же не имеет четких дат
Аноним 10/01/20 Птн 21:40:13 1569269568
>>1569179
Завышенные они во всей индустрии.
Джунов в Томске жопой жуй и каждый год новые из универов выпадают, а сеньоров нет, все съёбывают. Работы для сеньоров тоже почти нет впрочем.
Аноним 10/01/20 Птн 22:21:40 1569298569
Господи, как же заебали бесконечные туториалы с применением ебаных фреймворков.
Я захотел разобраться с вэб-сокетами. В node есть нативный модуль net.Socket. Который есть "интерфейс", и который обеспечивает взаимодействие между разными компами по TCP/IP. Что в общем понятно.
Но вот вэб-сокет, это уже протокол поверх все того же TCP/IP. После обмена GET запросами клиент и сервер устанавливают соединение по TCP/IP - как реализовано это соединение?
вэб-сокет это протокол которые реализует в конечном итоге сокеты? Как это работает ?

Я хочу на node запилить что то на сокетах нативно, без сторонних фреймворков. Что бы разобраться.
Аноним 10/01/20 Птн 22:43:43 1569318570
>>1569298
п.с.
Я пролистал каталоги репозитория soket.io - и не нашел там никакого стороннего кода на c++. Значит этот фреймворк использует нативные возможности ноды и в частности модуля net.Socket
Аноним 10/01/20 Птн 22:45:25 1569320571
>>1569163
Зачем? Оставайся в жопе.

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

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

Сделай нормальный гитхаб, хотя бы с пет-проектами, лучше, если стек будет совпадать с тем, на что откликаешься. Сопровод некоторым важен, но чаще значения не имеет. Откликайся сильно больше, чем делаешь сейчас, через силу.
Аноним 10/01/20 Птн 23:52:55 1569356572
>>1567463
>Доплачивать нужно будет за воз
Ну вообще-то платные стажировки это довольно распространённая практика.
Аноним 11/01/20 Суб 00:34:43 1569367573
>>1569320
>>Телефон твой в резюме есть?
Есть
>>Вотсап/телега работают?
Есть

>>Сделай нормальный гитхаб
Вот делаю мувисерчер потихоньку. Очень хотелось бы сделать с бэком и sql. Но я смотрю на это все и понимаю, что возможно оно того не стоит + лучше наверное 2 проекта сделать, чем 1 фуллстак. + если в JS более менее уверен, то в многих CSS вещах не уверен, это и дополнительно заставляет задуматься о надобности этого бэка.
Аноним 11/01/20 Суб 02:20:18 1569392574
Аноним 11/01/20 Суб 02:44:01 1569399575
image.png (16Кб, 793x150)
793x150
image.png (78Кб, 225x225)
225x225
Пиздос!! Что это за синтаксис, когда это успели протащить в Жопоскрипт?!
Аноним 11/01/20 Суб 02:47:22 1569402576
>>1569399
С разморозкой.
Пять лет как уже.
Аноним 11/01/20 Суб 02:49:41 1569405577
Привет! Я тот анон, что делал тестовый крад на реакте перед нг задание оказалось немного сложнее -- нужно было ещё и интегрировать бекенд, но я справился. Сдал его ещё на каникулах, вчера написала хр, мол, тестовое норм, завтра интвервью по скайпу. Сегодня мне позвонили, сначала спрашивали о семейном положении, когда я буду готов выйти и тд. Потом, другой человек задавал технические вопросы онли по реакту. И тут я, вероятно, проебался. Вопросов было штук 8-10, я совсем не ответил на два -- что такое редакс и на хуй он нужен все что я о нем знаю -- он как-то меняет поведение состояния, лол и о том, что такое контекст не сталкивался с ним делая тестовое и упустил из виду. Готовился я, к слову, по большей части к вопросам по ванильному жс.
Закономерно мне сказали, что напишут на следующей неделе, сообщат зп и тд, лол.

Ну, с первого раза, наверное, мало у кого получается, так что я хоть и расстроен, но не прям чтобы сильно. Ну и меня это очень сильно бустануло - после тестового я всего за 3 вечера написал простенький мувисерчер и тудушку. В общем, хочу поблагодарить анонов, которые помогали мне - вы крутые!
Аноним 11/01/20 Суб 02:50:46 1569407578
>>1569399
Код как бы подчеркивает деградацию колеров. Им дали Promise, дали Async - но коллбеки все равно хуячат.
Аноним 11/01/20 Суб 03:19:49 1569426579
Аноним 11/01/20 Суб 03:30:48 1569441580
>>1569402
что за `fn:`?
что за `= empty`?
что за `:Promise<void>`?
это было в .js файле, я не тайпизатор
Аноним 11/01/20 Суб 04:15:34 1569461581
>>1569441
fn - алиас, а остальное из тайпскрипта
Аноним 11/01/20 Суб 04:24:57 1569465582
>>1569441
>что за `fn:`?
Имя параметра, за которым следует тип

>что за `= empty`?
Значение по умолчанию.

>что за `:Promise<void>`?
Тип возвращаемого значения.

И да, не пользоваться typescript в 2020 = сидеть на обочине
Аноним 11/01/20 Суб 04:44:33 1569472583
>>1569179
Поподробнее.
мимо Томич
Аноним 11/01/20 Суб 06:40:56 1569478584
>>1569269
Вот поэтому там дохуя вакансий для джунов. Хотя наверное в силу вышки требования пожестче, чем там, где такой конкуренции нет.

Сеньерам не то что в Томске, им в рашке делать нехуй.
Аноним 11/01/20 Суб 06:42:15 1569479585
>>1569320
>При всем дефиците, мидлом за 2 месяца стать нельзя. То есть твоя должность вполне может так называться, но скиллы у тебя будут джуна в лучшем случае.
>
Речь про трудоустройство, а не скилы.
Аноним 11/01/20 Суб 06:44:41 1569480586
>>1569405
Я до работы редакс не трогал, с бойлерплейтом разобрался за день, больше вопросов нет. Посмотри у буры ролик по редаксу и все поймешь. Там нихуя сложного
Аноним 11/01/20 Суб 06:51:03 1569481587
>>1569465
> И да, не пользоваться typescript в 2020 = сидеть на обочине
Обоснуй, интересно
Аноним 11/01/20 Суб 07:28:11 1569484588
Аноним 11/01/20 Суб 11:01:47 1569519589
>>1569392
И как ни странно нихуя мне не дало. Час уже сижу в доке ковыряюсь. Так и не нашел пока ответа - в Socket.io именно TCP уровень реализован на сокетах.
Как я понимаю варианта два - либо с помощью нодовских net.Socket, либо где то среди зависимостей есть пакет с бинарником на C++, на котором написана своя реализация протокола вэб-сокет. Но в этом я сомневаюсь.
Аноним 11/01/20 Суб 11:21:34 1569522590
>>1569481
Поддерживается практически всеми популярными библиотеками и предотвращает кучу интеграционных ошибок между модулями.
Аноним 11/01/20 Суб 13:18:20 1569583591
Аноним 11/01/20 Суб 16:52:25 1569996592
Как файл через fetch отправить?
Аноним 11/01/20 Суб 16:58:06 1570010593
>>1569996
Также как и через XMLHttpRequest
Аноним 11/01/20 Суб 18:02:54 1570068594
image.png (185Кб, 1920x1041)
1920x1041
Аноны, пишу мувисерчер на реакте с легаси классами. Столкнулся с такой проблемой, что мне надо сделать кнопку, которая будет добавлять фильм в избранное из разных компонент. Как вы уже поняли я пользуюсь local state и я отлично понимаю, что подключение redux решило бы все мои проблемы, но я хочу сделать это на легаси.

Ничего лучше чем поднять стэйт на верх и передавать функцию через пропсы, которая будет добавлять в стэйт фильмы, я не придумал. Но все бы ничего, но это выглядит крайнего убого (скорей всего именно в моем случае). Взгляните пикрелейтед. Получается что у меня есть компонента MainRoute, которая вообще отвечает просто за роуты и в ней внезапно начинает появляться какой-то favouriteBar. Я уверен, что ни один разработчик этого не ожидает и это какой-то гавнокод.
Аноним 11/01/20 Суб 18:09:45 1570075595
>>1570068
>Аноны, пишу мувисерчер на реакте с легаси классами.
Почему не хуки?

А вообще - раздели компоненты на компоненты-контейнеры, которые содержут логику и компоненты представления, которые эту логику рендерят.
Аноним 11/01/20 Суб 18:43:36 1570100596
>>1569465
>>что за `= empty`?
>Значение по умолчанию.
Но в JS нет примитива empty, это переменная что ли?

>>что за `:Promise<void>`?
>Тип возвращаемого значения.
Promise, допустим, тип а <void> после него что такое?
Аноним 11/01/20 Суб 18:48:44 1570103597
>>1570100
Это Typescript, долбоебина тупорылая.
Аноним 11/01/20 Суб 19:02:40 1570114598
>>1569519

попробуй это: 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
Аноним 11/01/20 Суб 20:07:36 1570156599
>>1570114
>>обёртка вокруг WebSocket API
Да, но у nodejs нет нативной поддержки вэб-сокетов. Только "классические" TCP сокеты.
Вот и гадаю я как реализованы вэб-сокеты в nodejs. На основе родного модуля ноды net.Socket. Или как то еще.
Надежду написать свою, самую примитивную реализацию вэб-сокета на нативной ноде я пока потерял.
Аноним 11/01/20 Суб 20:15:50 1570162600
>>1570068
Почему ты называешь классы легаси? Они еще не депрекейтнуты. Это редакс потихоньку сползает в легаси, если уж на то пошло.

>я отлично понимаю, что подключение redux решило бы все мои проблемы
Ну так разберись как он работает и сделай так же.
Аноним 11/01/20 Суб 20:39:16 1570207601
>>1570162
> редакс потихоньку сползает в легаси
А что сейчас моднее юзать?

мимо
Аноним 11/01/20 Суб 20:48:41 1570217602
Аноним 11/01/20 Суб 21:01:45 1570230603
>>1570068
React Context api.

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

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

>>1570217
Советы уровня двачей
Аноним 11/01/20 Суб 21:14:54 1570241604
>>1570230
>Слабо документируемое овверейтед говно и не нужно.
Отсталый. Всё там нормально описано. Просто ты отсталый и не разобрался в них. А там ещё асинк рендер подвозят, который многие давно долго ждали - ты тоже скажешь, что "гамно, ни нужна, я сказал!!1"?
Аноним 11/01/20 Суб 21:32:08 1570250605
>>1570230
>Слабо документируемое овверейтед говно и не нужно.
Ват? Там прекрасная документация. Так и скажи что не разобрался.
Аноним 11/01/20 Суб 21:54:09 1570266606
Можно ли сделать как-нибудь, чтобы при открытии локального файла с диска подменялся адрес в адресной строке браузера?
Аноним 11/01/20 Суб 22:01:00 1570272607
Аноним 11/01/20 Суб 22:07:10 1570282608
>>1570272
Охуенно. А как? Можешь пример привести, ну или погуглить за меня, потому что я нихуя не нашел.
Аноним 11/01/20 Суб 22:07:26 1570283609
Аноним 11/01/20 Суб 22:30:01 1570298610
>>1570282
Описать сложно, но тебе нужно капать в сторону расширения браузера. Браузеру можно предоставить доступ к чтению файловой системе(как и к адресной поисковой строке) и поставить хук на тот момент, когда файл открывается
Аноним 11/01/20 Суб 22:33:33 1570302611
Аноним 11/01/20 Суб 22:48:19 1570316612
image.png (17Кб, 688x248)
688x248
Аноны, объясните почему на этапе 3 внезапно в стэйте появляется мой объект, хотя я еще ничего не вернул setState. На этапе 1 и 2 он пустой
Аноним 11/01/20 Суб 22:51:50 1570319613
>>1570316
Удаляй этот говнокод и пиши заново.
Аноним 11/01/20 Суб 22:54:05 1570321614
>>1570319
почему гавнокод, я не нарушаю идеи setState. Функция возвращает абсолютно новый стэйт, не мутируя старый.
Аноним 11/01/20 Суб 22:55:42 1570323615
>>1570319

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

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

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

Нипанятна. Ниясна. Нипанятна (с) Гоблин.
Аноним 11/01/20 Суб 23:03:30 1570330616
>>1570323
я согласен, что имена подобранны не верно, но с точки зрения типов, нет никаких ошибок. json - это объект, новый объект который нужно добавить в стэйт. setState ожидает новый стэйт, не мутированный, а абсолютно новый объект
Аноним 11/01/20 Суб 23:03:51 1570331617
>>1570323
Ага, при этом newObj какого-то хуя отдаёт свой id, по которому потом добавляет себя в хуй знает куда. И метод названный createNewObj, почему-то возвращает newState. Просто полнейший пиздец, даже сложно понять, насколько тупоголовым нужно быть чтобы этого не видеть. Про Object.assign вместо спред оператора вообще молчу, особенно смешно это смотрится, когда в следующей строчке видишь деструктуризацию.
Аноним 11/01/20 Суб 23:09:36 1570334618
>>1570330
>слабо типизированный динамический язык
>но с точки зрения типизации

Взлольнул.
Аноним 11/01/20 Суб 23:33:04 1570356619
>>1570100
> Но в JS нет примитива empty, это переменная что ли?
Догадливый.

(Код писан мудаком, кстати)
Аноним 11/01/20 Суб 23:36:58 1570357620
>>1570316
Когда ж макаки узнают про разницу shallow и deep copy.
(И про тулбелты типа ramda)
Аноним 11/01/20 Суб 23:39:00 1570359621
>>1570316

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

Попробуй вывести не this.state, а JSON.stringify(this.state)
Аноним 11/01/20 Суб 23:39:07 1570360622
>>1570316
Бесмыслено в консоль смотреть после того, как все уже отработает - там будет последнее состояние объекта в рантайме, а не то, что было в точке вызова. Добавь точку прерывания и смотри.

...
console.log(this.state)
debugger
return newState
}
Аноним 11/01/20 Суб 23:43:00 1570366623
Аноним 11/01/20 Суб 23:50:59 1570373624
>>1570357
А причём тут разница shallow и deep copy и
>внезапно в стэйте появляется мой объект
?
Аноним 11/01/20 Суб 23:56:36 1570379625
>>1570373
При том.
Воткни debugger перед return и посмотри, что будет в стейте.
Развелось говнокодеров.
Аноним 12/01/20 Вск 00:04:06 1570382626
>>1570379
Я не за компом сейчас.
Разницу между вышеперечисленным я знаю, но с той проблемой, как ОПа на моей памяти не сталкивался и object.assign тут ни причём, потоком управления реакта он никак не может управлять.
У ОПА скорее всего в том, что он вызывает функцию на месте. а не передаёт её в качестве коллбэка.
Аноним 12/01/20 Вск 00:04:25 1570383627
>>1570382
Скорее всего проблема в том*
Аноним 12/01/20 Вск 00:04:51 1570384628
Аноним 12/01/20 Вск 00:07:23 1570390629
>>1570384
Бля, вот уж кого-кого, а меня учить жиэсу не стоит, побольше вас знаю, уж поверьте, тут у него в другом проблема, я выше написал
Аноним 12/01/20 Вск 00:11:34 1570394630
>>1570390
this.setState((state) => createNewObject(state, json))
Вот так нужно, в его кейсе
Аноним 12/01/20 Вск 00:13:10 1570396631
image.png (20Кб, 667x251)
667x251
Я решил свою проблему. Весь косяк был в том, что я передавал весь стэйт, а не часть стэйта. И как результат интересующий меня объект копировался по ссылке. Так как он же пустой находился в инициализации стэйта, то он мутировал.



Аноним 12/01/20 Вск 00:17:03 1570401632
>>1570396
PS спасибо за ответы!
Аноним 12/01/20 Вск 00:18:10 1570403633
>>1570382
>>1570390
Реакту уже много лет, а самоуверенные макаки как не могли в иммутабельность, так и не могут до сих пор.
Аноним 12/01/20 Вск 00:18:32 1570404634
>>1570396
Да блять, у тебя всё равно неправильно, ты вызываешь функцию на месте, эта функция совершенно лишняя, почему бы не сделать так
addFavouriteFilm({id) {
this.setState(state => ({favouriteFilm: id }))
}
?
Аноним 12/01/20 Вск 00:21:10 1570407635
>>1570403
addFavouriteFilm({id) {
this.setState(state => ({...this.state, favouite: ...this.state.favourite, favouriteFilm: id }))
}
пофиксил, не заметил, что тебе в favourite нужно засетить
>>1570403
>пук, всреньк
по делу ты так ничего и не сказал
Аноним 12/01/20 Вск 00:21:55 1570408636
>>1570407
addFavouriteFilm({id) {
this.setState(state => ({...state, favouite: ....state.favourite, favouriteFilm: id }))
}
ещё раз пофиксил)
Аноним 12/01/20 Вск 00:24:56 1570411637
>>1570404
>>1570407
>>1570408
Потому что ты, макак, даже не смог понять структуру его стейта.
favourite отображает id на дескрипрор фильма, а твой говнокод вообще дексриптор не содержит и favourite не модифицирует.

Как таких дебилов земля носит? Выучил, что в setState можно передавать updater вместо объекта, и срет этим во все посты.
Аноним 12/01/20 Вск 00:28:32 1570414638
>>1570411
Да мне не особо нужно было понимать его структуру, у него там говнокод лютый, >favouriteFilm(json), даже сигнатура хуже некуда, нейминг никудышный

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

так что закрой еблет)
Аноним 12/01/20 Вск 00:36:31 1570417639
А вообще, зачем я с вами спорю, если никто из вас не знает, что такое коллбэк и никто об этом чуваку не сказал, а ведь setstate работает асинхронно и в этом был весь косяк, а не то, что там object.assign копирует только один слой данных
Аноним 12/01/20 Вск 00:37:37 1570418640
>>1570414
>Мань, я знаю про иммутабельность лучше, чем ты, уж поверь.
Но ты же три раза подряд обосрался и так и не решил исходную задачу. Что с того, что ты про стрелочные функции и spread syntax знаешь? Наука в руках обезьяны бессильна.
Аноним 12/01/20 Вск 00:39:41 1570419641
>>1570417
>а ведь 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:
Аноним 12/01/20 Вск 00:40:35 1570420642
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, ТРИ разные версии которого я только что себе скачал? Наберите воздуха в грудь. Он переводит записанное строкой время в миллисекунды.

Какие же жаваскриптеры дегенераты.
Аноним 12/01/20 Вск 00:42:56 1570422643
>>1570420
> Какие же жаваскриптеры дегенераты.

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

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
Аноним 12/01/20 Вск 00:44:23 1570424644
>>1570417
this.setState(state => ({...state, favourite: {...state.favourite, id}}))
Доволен? Мне больше не о чем с тобой разговаривать, ты не знаешь базовых вещей даже. На мой вопрос ты так и не ответил, только язвишь всё. Язви дальше, оставайся токсичным дальше.
Аноним 12/01/20 Вск 00:45:50 1570425645
>>1570422
Сколько разных версий ms у тебя в проекте, зумер?
Аноним 12/01/20 Вск 00:47:42 1570427646
>>1570424
Ты же в четвертый раз обосрался.
Что будет в state.favourite[id]? Где, блять, дескриптор фильма?

(вот такой вод код-ревью для джуна-тормоза)
Аноним 12/01/20 Вск 00:52:39 1570430647
>>1570425
Прости, дорогой, я энтерпрайзогосподин.
У нас собственный репо в котором у каждого пакета единственная тру-версия.
Аноним 12/01/20 Вск 00:53:29 1570431648
>>1570427
ооокей, я с телефона, мне похуй)
this.setState(state => ({...state, [id]: state.favourite}))
Аноним 12/01/20 Вск 00:55:57 1570433649
>>1570419
Я знаю про это
но это может приводить к неожиданным поведениям, как у опа
про батчинг обновлений в реакте ты ничего не слышал, конечно же
Аноним 12/01/20 Вск 01:02:31 1570438650
>>1570431
Пятый обсрамс, потерял favourite.

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

this.setState({ favourite: { ...this.state.favourite, [json.id]: json }})
Аноним 12/01/20 Вск 01:07:50 1570444651
>>1570433
>но это может приводить к неожиданным поведениям, как у опа
оп тупо модифицировал свойство-объект после 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)

Но ты же будешь упорствовать.
Аноним 12/01/20 Вск 01:09:41 1570446652
>>1570438
Ну видишь, я как-то глазами даже не заметил, что в этом json'е находится структура самого объекта, я думал, что его уже перезаписывать нужно, типа ОП не знал, как правильно структуру в айдишник запихнуть.

Энивей ты клоун, только токсишь, если ты в этот раз, в этот час оказался более внимательным, чем я - то я тебя сердечно поздравляю)
Аноним 12/01/20 Вск 01:12:37 1570448653
Подождите, я читаю ваш срач но ещё не разобрался почему же исходный код опа не работал как он хотел.

Вот он вызывает функцию 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 то он меняет (или добавляет) атрибут и в новоеСостояние и в староеСостояние.

Верно?

Если верно, то как ему надо поступить?
Аноним 12/01/20 Вск 01:13:11 1570449654
>>1570446
> не заметил (в трех строчках кода)
> думал
> типа
Какое милое чирикание после кукарекания в >>1570414
Аноним 12/01/20 Вск 01:17:26 1570452655
>>1570444
Но он гарантирует ожидаемое поведение стейта, вариант с коллбэком предпочительнее, ибо каждый сетСтейт выполнится корректно

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

https://stackoverflow.com/questions/48209452/when-to-use-functional-setstate
Аноним 12/01/20 Вск 01:17:46 1570453656
>>1570449
А на вопрос ты так и не ответил.
Аноним 12/01/20 Вск 01:23:45 1570455657
>>1570448
Верно.

Варианты:

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

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

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

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

Если хочется, чтобы все тормозило, то можно deep copy делать.
Аноним 12/01/20 Вск 01:24:46 1570456658
socker io.png (49Кб, 1224x664)
1224x664
Аноним 12/01/20 Вск 01:25:35 1570457659
У ОПа есть 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} хер знает что эффективнее и в чем разница.
Аноним 12/01/20 Вск 01:27:05 1570459660
>>1570455

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

Блин всё просто было.
Аноним 12/01/20 Вск 01:28:27 1570460661
>>1570452
Дубина, проблема опа не в этом.

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

(Да и в целом setState вместо управления состоянием - это 90% шансов на пиздец)
Аноним 12/01/20 Вск 01:28:54 1570461662
>>1570453
В этих жалких оправданиях был вопрос?
Аноним 12/01/20 Вск 01:34:04 1570463663
>>1570461
Успел за час погуглить про хелперные функции, а если бы не я - так бы и страдал бы дальше spreadhell'ами.

>(Да и в целом setState вместо управления состоянием - это 90% шансов на пиздец)
setState это вообще архаизм, нормальные люди хуки юзают.
Аноним 12/01/20 Вск 01:41:49 1570465664
>>1570460
>Дубина, проблема опа не в этом.
Одна из проблем.. Скорее всего человек не знает про коллбэки, его функция вызывается на месте, пускай и возвращает объект(надеюсь ты знаешь, что функции в жс - это объекты первого класса.) Это может привести к ОЧЕНЬ неожиданным результатам.
Аноним 12/01/20 Вск 01:49:42 1570467665
>>1570463
>Успел за час погуглить про хелперные функции, а если бы не я - так бы и страдал бы дальше spreadhell'ами.
Ты вообще о чем? О ramda из >>1570357 или о голосах в твоей голове?
Аноним 12/01/20 Вск 01:51:21 1570470666
>>1570465
Это да, это точно. Надо рассказать про коллбеки, про хуки, пять раз подряд обосраться в примерах и так и не ответить на изначальный вопрос.
Аноним 12/01/20 Вск 01:56:41 1570473667
>>1570467
Так ты, дубина, тоже какой невнимательный, оказывается.

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

Можно и свою рекурсивную реализацию для этого написать, делается это не сложно.
Аноним 12/01/20 Вск 02:00:03 1570474668
>>1570473
>Так ты, дубина, тоже какой невнимательный, оказывается
Дубина, я эту твою ветку просто прогнорировал, как бесполезную.
Что толку беседовать о сложных вещах с человеком, который в трёх строчках кода опа заблудился.
Аноним 12/01/20 Вск 02:00:18 1570475669
Читаю про вашу иммутабельность и мне кажется что я где-то уже всё это видел. Кажется в 90-е или 00-е годы в функциональщине.
Аноним 12/01/20 Вск 02:00:20 1570476670
>>1570470
Ок, смотри ты не обосрись, когда я попрошу на маркерной доске у тебя написать реализацию AVL дерева)
Аноним 12/01/20 Вск 02:01:56 1570477671
>>1570474
>иммутабельность
>сложные вещи
Всё с тобой ясно, аутист.
Аноним 12/01/20 Вск 02:02:17 1570478672
>>1570475
В ФП иммутабельность повсеместно используется)
Аноним 12/01/20 Вск 02:02:35 1570479673
>>1570473
Прости дорогой, я понимаю, что ты сейчас протянешь разговор в дебри подробностей, чтобы забыть о том, как ты обосрался на тривиальном примере.

Не делай этого. Это анонимная доска. Уходи, переживи это унижение и возвращайся завтра - все будет хорошо. Не надо самого себя закапывать все глубже и глубже. Теория без опыта мертва, и ты это только что показал
Аноним 12/01/20 Вск 02:03:42 1570480674
>>1570477
Randa точно сложнее, чем ms с isArray, а от них уже зарево стоит.
Аноним 12/01/20 Вск 02:04:32 1570482675
>>1570475
А уж оператор if так вообще с бородой
Аноним 12/01/20 Вск 02:05:03 1570483676
>>1570479
Хех, ну, как говорится вчужом глазу соломину видеть, в своём — бревна не замечать. Пошёл-ка ты нахуй, токсичный мудак. Пытался быть вежливым с тобой, но ты неисправимая мразь.
Аноним 12/01/20 Вск 02:05:37 1570485677
>>1570476
Ахаха, да я могу любой код написать - если ты в трёх строчках запутался, то уж реализацию дерева точно не поймешь.
Аноним 12/01/20 Вск 02:12:18 1570487678
>>1570477
Для дошколят, которые умножение не знают, квадратные уравнения сложные.
Для макак, не могущих в доки на setState, обсуждение иммутабельности будет сложным, потому что базовые когнитивные способности отсутствуют.
Аноним 12/01/20 Вск 02:13:23 1570488679
>>1570483
Ты не вежливым пытался быть, а тупо поддеть. Ключевое слово - тупо.
Так получай говна за шиворот.
Аноним 12/01/20 Вск 02:13:43 1570489680
>>1570475
И...?

Это как что-то плохое прозвучало?
Аноним 12/01/20 Вск 02:16:37 1570490681
>>1570483
>Пытался быть вежливым с тобой,
>>1570414
> Я уверен, что ты даже не знаешь,
> Так что закрой еблет
Я серьезно не понимаю, ты такой тупой, что считаешь это вежливым вопросом, или просто реалистично прикидываешься имбецилом, чтобы откосить от стройбата?
Аноним 12/01/20 Вск 02:17:12 1570491682
>>1570489
Недостаточно смузи :(
Аноним 12/01/20 Вск 02:17:27 1570493683
>>1570465
я тоже изучаю реакт, я читал про коллбэки, но я не совсем понимаю >>его функция вызывается на месте.

А где она должа вызываться, видимо я не совсем хорошо освоил эту тему. Или напиши код, как оно должно быть.
Аноним 12/01/20 Вск 08:57:22 1570541684
>>1570420
В голос. Хотя чего удивляться, если у жопоскриптеров однострочные библиотеки - самые популярные.
Аноним 12/01/20 Вск 08:58:44 1570542685
>>1570430
>этот энтерпрайз господин, который вынужден разгребать дерьмо из других репозиториев, для того чтобы везде была одна версия

В голос.
Аноним 12/01/20 Вск 09:01:19 1570543686
>>1570457
Он долбоеб и накручивает дерьмо на вал, вместо того чтобы каждому объекту дать булевое свойство isFavourite и уже работать с ним, а не плодить копии объектов.
Аноним 12/01/20 Вск 09:55:20 1570554687
>>1570542
Ты что-то имеешь против гугловой монорепы?
Аноним 12/01/20 Вск 09:57:21 1570555688
>>1570543
> плодить копии объектов

Ты серьезно думаешь, что
favourites[film.id] = film
создаст копию объекта?
Аноним 12/01/20 Вск 10:06:02 1570560689
>>1570555
Object.assign создаст, а в твоём варианте будет лишняя ссылка.
Аноним 12/01/20 Вск 10:20:22 1570564690
>>1570543

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

Или это норм?
Аноним 12/01/20 Вск 10:24:11 1570565691
>>1570560

Еще вчера выяснили что Object.assign создает копии не объектов, а структуры объектов. Ты осторожней выражайся :3 А то щас тебя растерзает иммутабельщик
Аноним 12/01/20 Вск 10:28:36 1570566692
>>1570560
>Object.assign создаст
Не, биллиардный шар-то тоже проглотить можно. Но зачем?
Аноним 12/01/20 Вск 10:30:57 1570569693
>>1570564
А потом весь это бордель масштабируется на много коллекций (избранное, хочу посмотреть, рекомендации и прочее) и модель фильма засирается 1001 флагом? Спасибо, Шахерезада, такие сказки нам не нужны.
Аноним 12/01/20 Вск 10:46:26 1570572694
>>1570565

Да похуй мне, что вы там макаки выяснили. У тебя в сам метод новый объект передаётся, новый или старый в который копируются собственные свойства другого объекта. В методе выше именно создаётся новый объект Object.assign({} - вот в этом месте.
Аноним 12/01/20 Вск 10:53:09 1570574695
>>1570572

Ок. Создается новый объект и в него копируется структура структура старого.
Аноним 12/01/20 Вск 10:53:45 1570575696
>>1570569

Хм. Разумно мыслеш.
Аноним 12/01/20 Вск 10:57:17 1570577697
>>1570572
Дубина, дескриптор фильма никогда не попадает в object.assign, только объект состояния.
Аноним 12/01/20 Вск 11:12:21 1570581698
>>1570577
Какой нахуй дескриптор фильма, ты можешь на человеческом разговаривать, макака, я тебя не понимают.
>>1570574
Это не Ок, потому что срёт в память созданием ненужных объектов, которые сборщик мусора соберёт не сразу.
Аноним 12/01/20 Вск 11:16:20 1570582699
>>1570581
Прочти >>1570543 с чувством, толком и расстановкой.
Посмотри на код >>1570316
Обдумай.

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

Аноним 12/01/20 Вск 11:42:22 1570590700
>>1570582
Да я уже понял, что нет смысла разговаривать с жопаскрипт макакой, для которой работа с памятью это что-то магическое, что само собой происходит и о чём можно не беспокоиться.
Аноним 12/01/20 Вск 11:47:00 1570593701
>>1570590
Слушай, ты, прыщ на жопе мироздания... ты ведь захотел сохранить хорошую мину при плохой игре, правда? Или правда не понимаешь, что объект состояния должен пересоздаваться при каждом обновлении чтобы кишочки React и всякие shouldUpdate нормально работали, а вот объекты, на которые он ссылается - нет?
Аноним 12/01/20 Вск 11:49:34 1570598702
>>1570593
Я понимаю, что пытаюсь разговаривать с макакой, которая прочитала документацию к реакту, думает, что всё поняла и теперь возомнила себя сеньором с 20-ти летним опытом, который пилит свой мувисёрчер, лол.
Аноним 12/01/20 Вск 11:59:25 1570607703
Аноним 12/01/20 Вск 12:02:32 1570611704
>>1570593

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

Смотри.

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

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

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

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

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

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

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

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

Иммутабельщик уже совсем ахуевает >>1570581 и пишет
> Какой нахуй дескриптор фильма, ты можешь на человеческом разговаривать, макака, я тебя не понимают.
Аноним 12/01/20 Вск 12:20:09 1570626705
>>1570611
>По-моему он с этим не спорит и вообще не про это говорит
Да тут целая мыльная опера, и хрен поймешь, за красных он, или за белых.

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

И кто такой иммутабельщик?
Аноним 12/01/20 Вск 12:33:07 1570634706
>>1570611
При чём здесь твой фильм, хуесосина тупорылая. У тебя в метод Object.assign передаётся объект, который в этом же месте и создаётся, замени {} на new Object() чтобы тебе понятней было. Если ты 200 раз вызовешь метод, то у тебя создастся 200 таких объектов в куче.
Аноним 12/01/20 Вск 12:38:37 1570638707
>>1570634
О великий прыщ-на-жопе, просвети же нас, как без создания нового объекта создавать новое состояние для Реакта.

inb4: хуячить изменения напрямую в стейт - до такого еще тред не докатился.
Аноним 12/01/20 Вск 12:44:05 1570647708
>>1570638
Использовать уже существующий объект, очевидно.
Аноним 12/01/20 Вск 12:45:17 1570652709
>>1570634

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

Просто изначально анон писал о фильме. А потом всё скатилось в выяснение того, что же делает Object.assign, но что он делает ты и раньше уже объяснял.
Аноним 12/01/20 Вск 12:47:10 1570653710
>>1570647
>> inb4: хуячить изменения напрямую в стейт - до такого еще тред не докатился.
> хуячить изменения напрямую в стейт
Деграданты. Кругом одни деграданты.
Аноним 12/01/20 Вск 13:20:23 1570708711
>>1570647
Бля, браток, иди во вью тред
Аноним 12/01/20 Вск 13:22:03 1570710712
Откройте для себя мемоизацию и жить станет легче, макаки)
Аноним 12/01/20 Вск 13:53:08 1570745713
>>1562152 (OP)
Сап, как дела в фронтенде продакшене с версткой?
Насколько много вам приходится верстать, отрываясь от функциональщины и штамповки редюсеров?
Я вайтишник, делаю заказ для манки-бизнеса, и пиздос как от верстки трясёт, мозг вытекает от монотонности
Аноним 12/01/20 Вск 14:01:53 1570750714
>>1570745
>Насколько много вам приходится верстать, отрываясь от функциональщины и штамповки редюсеров?
Очень часто.
>пиздос как от верстки трясёт, мозг вытекает от монотонности
Потому что ты не умеешь верстать и вёрстка часто приносит когнитивные диссонансы, т.к. интуитивно не всегда работает так, как задумывалось. Как научишься - "трясьти" не будет.
Аноним 12/01/20 Вск 14:06:37 1570752715
>>1570750
>Потому что ты не умеешь верстать и вёрстка часто приносит когнитивные диссонансы, т.к. интуитивно не всегда работает так, как задумывалось. Как научишься - "трясьти" не будет.
И как же научиться? Тупа хуячишь интуитивно, спотыкаясь на ошибки и правя их?
Аноним 12/01/20 Вск 14:11:23 1570761716
>>1570752
Ну не совсём. Если чисто интуитивно - ничего не усвоишь и постоянно будешь натыкаться на одни и те же грабли. Вёрстка - не такая уж и тривиальщина, как многие думают, иначе бы никто от неё не "трясся". Хуярь с умом. Вот ты знаешь например, как по дефолту работает расчета ширины и высоты элемента? Умеешь переопределять это поведение?
Аноним 12/01/20 Вск 14:17:29 1570767717
>>1570761
>Хуярь с умом.
Хз, курсы что ли пройти какие

>Вот ты знаешь например, как по дефолту работает расчета ширины и высоты элемента? Умеешь переопределять это поведение?
Только знаю, что на 100% расстягивается и всё
Аноним 12/01/20 Вск 14:30:30 1570777718
>>1570767

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

Не просто нужно курсы проходить, а нужно всё время их проходить, чтобы всё время учиться чем-то новому, иначе ты как специалист сначала отстанешь от жизни, а потом будешь никому не нужным, как я. Мне вот больше нравилось играть в вов, вместо того чтобы изучать новое по профессии. А хули? И так ведь платят. Ну да, седня платят, а завтра? А через год?
Аноним 12/01/20 Вск 15:08:48 1570810719
>>1570777
Не ожидал такого
И как, платят ещё хоть?
Аноним 12/01/20 Вск 16:05:27 1570839720
Второй день срётесь, макаки.
Аноним 12/01/20 Вск 16:41:20 1570860721
>>1570810

Да, но когда-нибудь перестанут и что тогда? И будет как в басне Крылова про муравья и стрекозу.
Аноним 12/01/20 Вск 16:41:40 1570861722
Срутся и тред не перекатывают.
Аноним 12/01/20 Вск 16:46:01 1570865723
>>1570861
Он нам нахой не нужен, тред ваш.
Аноним 12/01/20 Вск 16:46:38 1570866724
Посоветуйте плиз где поднять скилл верстки.
html академи и прочие инфобизнесмены на мимо
Аноним 12/01/20 Вск 16:51:08 1570873725
Аноним 12/01/20 Вск 16:57:04 1570879726
>>1570873
что конкретно? этот инфобизнесмен еще хуже чем хтмл академи
никакой структурированности, одни ролики вы стиле "как сверстать шаблон за 1000500 долларов в наносекунду"
Аноним 12/01/20 Вск 16:59:12 1570883727
>>1570879
он гений мира фронтенд, не говори про него так
Аноним 12/01/20 Вск 17:05:27 1570887728
>>1570883
мож он и гений, но обуччающего контента у него нихуя нет. Одни "мотивационные" ролики.
Сколько тут не спрашивал, тут все срутся на тему реакта.
А меж тем в большинстве вакансий препроцессоры цсс3 хтмл5 идут первой строчкой и в первую очередь
Так как же поднять эти скиллы?
Гайдлайн хороший есть?
Аноним 12/01/20 Вск 17:16:14 1570895729
Что делать после мувика? Куда дальше двигаться?
Аноним 12/01/20 Вск 17:20:08 1570905730
Аноним 12/01/20 Вск 18:08:12 1570927731
>>1570887
>А меж тем в большинстве вакансий препроцессоры цсс3 хтмл5 идут первой строчкой и в первую очередь
>Так как же поднять эти скиллы?

Cейм, верстал всякую хуету, но по макету не вывожу сильно, расхождения, про пиксель перфект ваще молчу.
Реквестирую гайды, как можно улучшить верстку
Аноним 12/01/20 Вск 23:05:06 1571188732
Ананасы, нужна какая-нибудь простая cms которую можно засунуть на локальный сервер и туда уже запихать пару html + css файлов. Хочу чтобы все это висело на локалхосте и туда редиректило с пары сайтов. То есть открывается сайт Х --- редиректит на локалхост и открывает html файл с компа. Батя заебал смотреть пердильные коммедии на левых сайтах, хочу покосплеить роскомнадзор с вайт-листами.
Аноним 12/01/20 Вск 23:45:33 1571222733
Возможно ли забрать изображение с css background-image. Не url, а именно уже загруженное изображение?
Аноним 12/01/20 Вск 23:48:21 1571227734
image.png (36Кб, 1015x451)
1015x451
Что происходит в этом фрагменте кода?
Аноним 13/01/20 Пнд 00:06:18 1571254735
>>1571227
Функция Y возвращает результат функции которая принимает в аргумент саму себя. Результат этой внутренней функции будет результат вызова функции аргумента f которая принимает фукнцию которая возвращает вызов первой функции которая принимает сама себя.

Вообщем это функция которая принимает функцию, и в этой функции можно вызвать функцию аргумент чтобы вызывать эту фнукцию еще раз. Получается рекурсивный вызов функции аргумента.
Аноним 13/01/20 Пнд 03:00:40 1571335736
>>1571222
Получаешь таки урл сначала, а потом по нему создаешь изображение. Хз как там правильно. Точно можно получить сорс через canvas, возможно как-то можно получить и без него.
Аноним 13/01/20 Пнд 03:36:53 1571345737
Аноним 13/01/20 Пнд 11:19:30 1571499738
Начинаю вкатываться в реакт и назрел такой вопрос - а нужно ли реактогосподину знать ООП? И вообще, если я ориентируюсь на MERN-стек, стоит ли уделять внимание этой хуетене? Меня прямо трясет от флешбеков, когда я в шараге дрочил джаву.
Аноним 13/01/20 Пнд 13:06:18 1571571739
>>1571499
Комбинация ООП и системы типов и синтаксиса в яве просто фантастически уебищна. Учить ООП надо, но практики явы тащить не надо.
Аноним 13/01/20 Пнд 14:07:55 1571657740
>>1571499
Что ты подразумеваешь под учить ООП? Ты в любом случае на жс будешь затрагивать элементы ООП даже не задумываясь над этим.

Если очень сильно постараться, ты можешь все написать функционально или процедурно. Но это надо очень сильно постараться и знать довольно много теории.
Аноним 13/01/20 Пнд 14:59:30 1571696741
>>1562152 (OP)
Ёп вашу мать, перешёл по ссылке в оп пике, обосрался, у меня наушники сняты были, пол офиса бы ахуело
Аноним 13/01/20 Пнд 15:01:28 1571697742
image.png (251Кб, 450x253)
450x253
Суп скриптонитыч.
Пишу по фану бота в дискорде. Прикрутил напоминалку через setTimeout(), всё было заебись.
Но решил я сделоть ещё и забывалку, чтобы можно было отменить задачу.
Прикрутил глобал переменную, которой присваиваю setTimeout(), чтобы иметь возможность отменить через clearTimeout(timer) из другой функции.

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

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

Бот на node.js + diiscord.js, мб у кого был опыт/подскажет чё.
Аноним 13/01/20 Пнд 15:08:40 1571705743
>>1571697
кажется мне надо заебурить массив из парных элементов, один из которых - ник, а вторая - напоминалка
Аноним 13/01/20 Пнд 16:44:55 1571818744
image.png (604Кб, 800x800)
800x800
>>1571705
короче заебенил я let timer = {},
получаю ник и ебошу в timer[author] = setTimeout()

Теперь у меня персональные напоминалки, что кру
Аноним 13/01/20 Пнд 16:52:01 1571829745
Аноним 13/01/20 Пнд 17:01:29 1571835746
Аноны, кто шарит в node.js - у меня возник такой вопрос - вот допустим я со стороннего сайта собираю всю его разметку и файлы.
К примеру с помощью модуля http.request(options[, callback]) или
http.get(url[, options][, callback]).
Тоесть я получаю из этих методов объект типа stream, который потоком льет мне разные данные.
И текст, и бинарные данные(картинки и прочее). Где почитать - а как парсить этот поток? как определить тип данны? Как определить допустим начало и конец бинарного файла в потоке?
Прошу инфы и сурс по этому вопросу.
Аноним 13/01/20 Пнд 18:41:31 1571910747
image.png (91Кб, 225x225)
225x225
>>1571829
>шутейка уровня восьмиклассника
18- ты хотел сказать?
Аноним 13/01/20 Пнд 20:22:15 1572001748
>>1571657
> Что ты подразумеваешь под учить ООП?
Паттерны, в первую очередь
>Ты в любом случае на жс будешь затрагивать элементы ООП даже не задумываясь над этим.
Например? Прототипы это понятно, но что ещё? Классы в реакте далеко не ООП, энивей.

> Если очень сильно постараться, ты можешь все написать функционально или процедурно. Но это надо очень сильно постараться и знать довольно много теории.
Просто я не представляю, как в реакте можно использовать ООП, особенно если ты пишешь на хуках.
Аноним 13/01/20 Пнд 21:22:04 1572064749
>>1571829
Злой ты, человек обрадовался (
Аноним 13/01/20 Пнд 22:02:54 1572116750
Аноним 13/01/20 Пнд 23:05:40 1572165751
>>1572001
Концепция объектов в рамках ООП теории появилась. Это его элемент. Без объектов сейчас разве-что что-то низкоуровневое на С пишут.
Аноним 14/01/20 Втр 07:00:01 1572339752
>>1572116
>>1571835
Двачую request-promise + cheerio. Ещё можешь puppeteer использовать.
Аноним 14/01/20 Втр 07:39:16 1572342753
>>1572165
Это не так. И даже если бы это было так, то все равно использовать объекты в коде != использовать ООП. Объект -- просто структура данных, ООП -- парадигма.
Аноним 14/01/20 Втр 08:27:31 1572354754
>>1572116
>>1572339
Да мне больше бы теоретические какие то основы. Мне не для практической задачи - а чисто учебный велосипед. Я в этой области не понимаю нихуя.

Про сheerio знаю, даже пытался код смотреть - но не особо понял.
Аноним 14/01/20 Втр 10:16:34 1572394755
>>1572354
Разницы особой не будет, потому что это Node.js. Для теоретических основ тебе нужно что-то более низкоуровневое, например, C++ или, на крайний случай, C#.
Аноним 14/01/20 Втр 10:41:52 1572419756
>>1572394
Но сheerio когда сдирает данные с другого сайта - получает солянку из текста и бинарников всяких.
Эта солянка льется на сервер потоком - как то же этот поток парсится, сheerio понимает что - это картинка, это текст, это ну допустим гифка. Определяет MIME типы как то и прочее - прочее.
Вот эту тему хотелось бы для себя развернуть.
Аноним 14/01/20 Втр 10:50:27 1572425757
>>1572419
Тебе с ответом от сервера приходит заголовок Content-Type с указанием типа данных. Также и с типом кодировки, например, content-encoding: gzip И со всем другим тоже самое. Для этого и придумали протоколы, чтобы не нужно было гадать что и откуда ты принимаешь, и как с этими данными работать.
Аноним 14/01/20 Втр 12:04:21 1572466758
Сап трудягам.

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

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

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

Аноним 14/01/20 Втр 18:16:54 1572727759
А че тред падохнул то? Кто хочет мой файлообменник заценить?
Аноним 14/01/20 Втр 18:22:10 1572733760
maxresdefault.jpg (75Кб, 1280x720)
1280x720
>>1562152 (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); // Вася
Аноним 14/01/20 Втр 18:23:06 1572734761
>>1572733
Проходи мимо, потом поймешь. И не унывай
мимо знаю о чем говорю
Аноним 14/01/20 Втр 18:24:30 1572735762
>>1572734
Ну хоть скажите, что это за стрелочка let user = users.find(item => item.id == 1);
Аноним 14/01/20 Втр 18:24:57 1572736763
Аноним 14/01/20 Втр 18:25:20 1572737764
Аноним 14/01/20 Втр 18:26:24 1572738765
>>1572736
Разве не должно быть так? item = () => item.id == 1
Аноним 14/01/20 Втр 18:28:54 1572741766
>>1572735
>>1572738
>>1572736

ААААААА, я все понял
Как же это было сложно, чему так сложно?
Аноним 14/01/20 Втр 18:30:04 1572743767
>>1572738
Должно быть так = (item) => {
return item.id === 1
}
Аноним 14/01/20 Втр 18:32:18 1572744768
>>1572743
Тогда уж так

const condition = (item) => {
return item.id === 1;
};
let user = users.find(condition);
Аноним 14/01/20 Втр 18:35:06 1572745769
>>1572743
>>1572744
Спасибо, анончики :3

А чему у вас строгое сравнение?
>item.id === 1;
Что не так с == ?
Аноним 14/01/20 Втр 18:36:17 1572747770
>>1572745
Лучше сравнивать строго, т.е. с учетом типа, не огребешь в ошибках приведения типов
Аноним 14/01/20 Втр 18:59:36 1572763771
>>1572745
Долбоебы замедляют свою жопаскрипт парашу при любой возможности, вот почему.
Аноним 14/01/20 Втр 19:01:23 1572766772
Аноним 14/01/20 Втр 19:02:27 1572769773
>>1572766
Потому что помимо значения проверяется еще и тип данных.
Аноним 14/01/20 Втр 19:07:07 1572771774
>>1572769
А если там будет на 1 а строка, що делать?
Аноним 14/01/20 Втр 19:20:30 1572774775
12324534524.JPG (32Кб, 737x241)
737x241
Аноним 14/01/20 Втр 19:36:38 1572784776
>>1572771
Не будет, потому что ты везде написал parseInt и parseFloat
Аноним 14/01/20 Втр 19:40:14 1572789777
>>1572774
Это как завести и прогреть какой-нибудь ВАЗ, после чего засечь время и замерить за сколько она до 100 км/ч разгонится, а потом сравнивать это время с разгоном до 100 км феррари, при этом запуская таймер до того как она из гаража выедет.
Аноним 14/01/20 Втр 19:42:10 1572791778
Аноним 14/01/20 Втр 19:43:55 1572793779
>>1572791
Ты если замеряешь, то замеряй хотя бы в разных вкладках, дурачок.
Аноним 14/01/20 Втр 19:48:14 1572795780
12324534524.JPG (66Кб, 548x531)
548x531
>>1572793
чего еще придумаешь?
Аноним 14/01/20 Втр 19:53:25 1572797781
>>1572763
Охуительные истории.
Аноним 14/01/20 Втр 20:12:27 1572811782
Что надо знать, чтоб на стажировку напроситься? Ванилу более-менее изучил, сейчас node js осваиваю
Аноним 14/01/20 Втр 20:14:58 1572818783
Аноним 14/01/20 Втр 20:16:57 1572822784
>>1572818
А angular, TypeScript нужны?
Аноним 14/01/20 Втр 20:34:14 1572841785
Почему так популярен реакт? Все хотят SPA? MPA - всё?
Аноним 14/01/20 Втр 20:41:06 1572845786
>>1572822
Тайпскрипт не помешает, Ангуляр потихоньку умирает.

>>1572841
Мгновенно перерендерилось vs Ждать загрузки страницы с нуля.
Аноним 14/01/20 Втр 20:45:44 1572847787
Что надо знать, чтоб на стажировку напроситься? Сделал мувисерчер, канбан, расширение для гугла, файлопомойку
Аноним 14/01/20 Втр 21:03:36 1572852788
1579024987458.png (85Кб, 720x1280)
720x1280
Пузырь лопнул
Аноним 14/01/20 Втр 21:14:10 1572863789
>>1572852
>сайт номер 1 для поиска работы
>не может определить Javascript как запрос относящийся к программированию

Вся суть IT индустрии. Ну ничего, зато аджайл практики внедряем, проводим митинги, тимбилдинги и прочую хуету.
Аноним 14/01/20 Втр 21:28:54 1572877790
>>1572852
>>1572863
Хоть один из вас написал в поддержку хедхантера, или вы только на дваче можете сраться?
Аноним 14/01/20 Втр 21:31:40 1572881791
>>1572877
Мне вообще похуй, какая разница? Я просто пошутил
Аноним 14/01/20 Втр 21:33:26 1572882792
14/01/20 Втр 21:35:18 1572884793
>>1572877
О чём тут в поддержку писать? Кем-то разве было заявлено, что подсказки в поиске выдаются соответственно вакансиям? Нет, они выдаются просто дополняя введённый запрос популярными словами.
Аноним 14/01/20 Втр 21:39:35 1572891794
Аноним 14/01/20 Втр 21:48:30 1572900795
>>1572877
Бабуль, ты чего тут забыла? Тех. поддержка и разработчики это не одни и тоже. Тех. поддержке похуй на разрабов, а разрабам на тех. поддержку, никто и пальцем не пошевелит ради того чтобы исправить такую "мелочь".
Аноним 14/01/20 Втр 21:49:55 1572904796
>>1572884
>кем-то разве было заявлено

Да, было. Автодополнение подразумевает дополнение релевантной информацией, а не случайной.
Аноним 14/01/20 Втр 21:55:17 1572912797
Аноним 14/01/20 Втр 22:01:26 1572922798
20190929095249.jpg (64Кб, 1253x173)
1253x173
>>1572863
>>1572852
Вот, кстати, сайт для поиска работы не #1!
Вся суть бизнеса - главное кричи громче, что ты топ в своей сфере, а как там на самом деле - похуй.
Аноним 14/01/20 Втр 22:11:54 1572931799
>>1572900
> это не одни и тоже
Конечно нет. "Клиенты" обращаются к техподдержке, а техподдержка уже обращается к разрабам. Напрямую написать разрабам никто не даст. Вообще, разрабы - это следующая линия поддержки

> Тех. поддержке похуй на разрабов, а разрабам на тех. поддержку
Если это какой-нибудь ООО Вектор, то да. Но не здесь.
Аноним 14/01/20 Втр 22:30:10 1572939800
Аноним 14/01/20 Втр 22:45:58 1572953801
>>1572891
А что сео? Гугл тоже не на месте сидит и тоже научился запускать скрипты, а не тупо бегать по статической странице в поиске кейвродов.
Аноним 15/01/20 Срд 04:43:33 1572984802
>>1572939
SSR, от части, да, нужен для того, чтобы покравать seo (генерация html на стороне сервера), но и так же у SSR есть куда других полезных свойств, о которых многие почему-то умалчивают.

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

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

Ииииии т.д.
Аноним 15/01/20 Срд 04:44:30 1572986803
Аноним 15/01/20 Срд 11:25:46 1573064804
Аноны, где-то пол года учу JS сильно задрачивая каждую тему по учебникам you don't know JS, дополняя все множеством просмотренных видео. Буквально часами вникаю во все эти примеры, пытаясь понять все до конца. Собираюсь специализироваться в будущем на Реакте. Вопрос в том, нужно ли мне продолжать также дотошно во все это вникать, ведь, как мне быть кажется, это никому нахуй не нужно. У меня знакомый пару лет назад устроился на работу после курса юдеми блеать, а мне все кажется что ещё слишком многого не знаю. Почти потерял всю мотивацию, так как чем глубже вникаю в язык, тем больше мне кажется, что все мои знания поверхностны.
Аноним 15/01/20 Срд 11:31:42 1573066805
>>1573064
Есть проекты реализованные?
Аноним 15/01/20 Срд 11:44:34 1573067806
>>1573066
Да нихуя не доделываю до конца, пара незаконченных, но они почти готовы. Обычно когда нужно что-то сделать, например ajax, я начинаю зарываться в тему целиком, хотя все давно через axios сделано порой строчек кода, но меня не отпускает, пока я не исследую все до конца. В каждой теме нахожу отсылки к другим, и начинаю дрочить их, забывая о проектах.
Аноним 15/01/20 Срд 11:45:41 1573068807
>>1573064
>нахуй не нужно
this
особенно в реакте
Аноним 15/01/20 Срд 13:38:59 1573196808
>>1573064
забей на ванильный жс, сделай какой нибудь мувисерчер\туду на реакте и иди работать
Аноним 15/01/20 Срд 14:36:26 1573233809
>>1573064
>накомый пару лет назад устроился на работу после курса юдеми

Вот это самая главная ошибка вкатывальщиков - смотрят на прошлы опыт своих друзей. Ключевое слово в твоей фразе "пару лет назад". Да, пару лет назад какого-нибудь паршивого курса было достаточно, сейчас от тебя нужны не только идеальные знания ванильного JS, но еще и React + Redux, а также MongoDB.
Аноним 15/01/20 Срд 15:00:38 1573252810
Аноним 15/01/20 Срд 15:11:23 1573261811
>>1573252
А что ты хочешь? Я сделал туду, написал резюме и пошел работать, мне не понять желание анонов выучить все кишки языка и вкатываться по полтора года
Аноним 15/01/20 Срд 17:09:44 1573441812
>>1562152 (OP)
анончики, поясните как лучше и вообще как можно сделать. Каждые 5 секунд с api мне приходят данные. Мне нужно посчитать разницу между предыдущим числом, которое пришло 5 секунд назад, и тем, которое пришло сейчас. Как это сделать? Есть мысли, что тут как-то надо использовать замыкания, но пока хз как. Реакт если что!
Аноним 15/01/20 Срд 17:22:52 1573447813
>>1571697
>Как сделоть так, чтобы для каждого юзера была своя напоминалка? Я вот щас думаю как такое запилить, и нихуя в голову не идет.
>
Храни переменную в localStorage
Аноним 15/01/20 Срд 17:27:39 1573461814
Аноним 15/01/20 Срд 17:55:10 1573484815
Аноним 15/01/20 Срд 17:56:49 1573485816
>>1573233
Нахуй вы тут высираетесь долбоебы?

Вкатился с тудушкой
Аноним 15/01/20 Срд 17:57:23 1573486817
>>1573441
Съеби на тостер, а лучше вскройся
Аноним 15/01/20 Срд 18:07:51 1573497818
Ну че, зацениваем мой файлообменник?
Аноним 15/01/20 Срд 18:41:50 1573521819
>>1573485
Ну и как оно? Нормально за 30к работается?
Аноним 15/01/20 Срд 18:46:05 1573533820
>>1573521
Хз, тебе виднее, у меня с 70к зп началась
Аноним 15/01/20 Срд 18:56:50 1573546821
Аноним 15/01/20 Срд 18:58:21 1573547822
>>1573546
Записывайся на показ. Билет - 300 рублей
Аноним 15/01/20 Срд 19:03:49 1573550823
>>1573547
> 300
Отсоси у программиста
Аноним 15/01/20 Срд 19:34:34 1573587824
>>1573521
Лучше, чем вкатываться несколько лет
Аноним 15/01/20 Срд 20:40:41 1573659825
Аноним 15/01/20 Срд 20:41:18 1573660826
Блядь, как научиться нормально верстать? Я с джаваскриптом и рект/редаксом меньше ебся. СУКА.
Аноним 15/01/20 Срд 20:48:30 1573663827
>>1573660
и нужно ли оно так сильно?
смотрю курсы академии, а там больше части вода про доступность, нарезку фотографий в фотошопе резиновая хуиновая верстка, или может все же туду проекта на реакте будет достаточно?
Аноним 15/01/20 Срд 20:48:30 1573664828
Аноним 15/01/20 Срд 21:12:21 1573692829
>>1573663
Как можно не знать верстку, это же супер легко. Те кто пишут на JS обязательно должны знать как работает верстка. ОБЯЗАТЕЛЬНО СУКА.
Аноним 15/01/20 Срд 21:29:04 1573702830
>>1573692
> это же супер легко
вот и посоветуй как прокачать скилл верстки.
я не говорю что я совсем ее не знаю, но иногда выбешивают блочные модели и картинки просто пиздец.
Аноним 15/01/20 Срд 21:52:19 1573720831
как обычно... спрашиваешь в этом треде как изучить нормально верстку, и все затухает. А до этого все выебываются как легко это, знать верстку.
Аноним 15/01/20 Срд 22:08:32 1573739832
>>1573692
> Pixel perfect
> Одни свойства наследуется, другие почему-то нет. Хуй знает.
> Из-за одного пикселя всё поехало
> Сука, почему не работает width
> На мобилках текст отображается по одному слову в строке
Ну да, легко.
Аноним 15/01/20 Срд 22:15:38 1573741833
>>1573739
Ну ты выучи все свойства и ситуации и будет легко.
Аноним 15/01/20 Срд 22:17:05 1573744834
>>1573739
>Pixel perfect
Легко.
>Одни свойства наследуется, другие почему-то нет. Хуй знает.
Осознай каскад.
>Из-за одного пикселя всё поехало
Осознай box-sizing, влияние внешних и внутренних отступов
>Сука, почему не работает width
Потому что прочитай спеку, ты высоту то задал?
>На мобилках текст отображается по одному слову в строке
Осознай адаптивную/отзывчивую вёрстку
Аноним 15/01/20 Срд 22:17:44 1573746835
>>1573741
> Выучи весь стандарт C++, и будет легко
> Выучи все китайские иероглифы, и будет легко
15/01/20 Срд 22:19:20 1573748836
>>1573744
> Осознай
> Осознай
> Осознай
Вот и не надо кукарекать, что это "супер легко", блеать.
Аноним 15/01/20 Срд 22:20:36 1573751837
>>1573748
Легко в том плане, что это легко осознать, т.к. это интуитивно понятно, если начать разбираться.
Аноним 15/01/20 Срд 22:24:32 1573752838
>>1573751
Это не интуитивно, это ты привык.
Аноним 15/01/20 Срд 22:26:49 1573754839
>>1573752
Ну да, привык и ты привыкнешь. И чем больше в твоих действиях будет осознанности - тем быстрее привыкнешь и ты.
Аноним 15/01/20 Срд 22:40:36 1573760840
>>1573692
>>1573702
Вообще не нужно, если не пишешь под юй, не придумывай.
Нахрен прогеру в 20м верстка, если давно для повышения специализации придумали всякие фреймворки с онлайн конструкторами?

Все затухает, потому что это вопрос такой же примитивный, как и "как нормально вытирать жопу" - так же, как и нормально что угодно другое, трахаясь с ней версткой изо дня в день часами, желательно на вечнотекущих проектах.
Аноним 15/01/20 Срд 22:55:23 1573768841
>>1573751
нихуя не интуитивно. Спеку читать слишком дохуя страниц.
охуиллионы страниц. Из-за ебаной верстки, которая должна быть простой поидее. Но она сложная
Аноним 15/01/20 Срд 23:03:26 1573777842
>>1573768
Ну значит для тебя всё будет сложное. Займись более простым делом, уступи дорогу более смышлённым ребятам.
Аноним 15/01/20 Срд 23:05:02 1573780843
Пилю расширение для лисы. Нужно заставить ебанный ютбуб разворачиваться на весь экран автоматически.

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

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

>В запросе полноэкранного режима было отказано, так как Element.requestFullscreen() не был вызван изнутри короткоживущего обработчика события, сгенерированного пользователем.
Аноним 15/01/20 Срд 23:05:23 1573781844
>>1573233
Хех, ебать ты лошпек) Как там в 2018? Думал, что реакт выучил и всё? Хуй там плавал, надо ещё выучить редукс, контекст, аполло, рекомпоуз, саги, санки для сайд-эффектов, хелмет, дропзоун, спринг, дауншифт, фаербейс. Это уже не говоря о классике типа иммер, имьютбл и рамда.
Аноним 15/01/20 Срд 23:07:04 1573786845
>>1573781
>дропзоун, спринг, дауншифт, фаербейс
Ну это уже жир)
Аноним 15/01/20 Срд 23:10:54 1573787846
>рекомпоуз
Алло, как там в 2020?) это же уже полтора года как неактуально. Сейчас бы хуки не знать, в 2к20 то, ну ты и отсталый конечно...
Аноним 15/01/20 Срд 23:11:37 1573788847
>>1573781
GraphQL, in memory, serverless, SaaS
Быстрее, выше, хипстерскее!
Аноним 15/01/20 Срд 23:55:34 1573854848
Аноним 16/01/20 Чтв 01:07:32 1573893849
image.png (32Кб, 245x197)
245x197
image.png (33Кб, 245x197)
245x197
Аноны, я только изучаю js, и возможно где-то объяснялся ответ на мой вопрос, но я упустил и не могу найти.
В общем мне в голову пришла такая мысль, что функция на пик2 должна перезаписать переменную "а" собственной самой функцией, и в таком случае код бы сломался, т.к. в аргументе функции по моей ебанутой логике будет сама функция, и такой код зациклится и выдаст ошибку или типа того.
Но код работает, и нет никаких ошибок.
Почему "a = someFunction ( a );" продолжает держать значение "2" когда я вроде бы как перезаписал эту переменную функцией?

Я какой-то хуйни нагородил у себя в голове, и теперь не могу от этой мысли отвязаться, спаси анончик.
Аноним 16/01/20 Чтв 01:09:28 1573895850
>>1573893
Ебанутый нахуй тебе это надо?
Лучшее бы ноду поставил и начал пилить свой первый мувисерчер.
А так только время зря потеряешь.
Аноним 16/01/20 Чтв 01:13:11 1573899851
>>1573893
В строчке со стрелкой ты не переписал "a", а просто присвоил ей результат функции "someFunction". Что собственно хотел, то и получил

Если хочешь

>Перезаписать переменную "а" собственной самой функцией
То убери скобки в конце "someFunction"
Аноним 16/01/20 Чтв 08:36:34 1573960852
>>1573781
>саги
а я ска все думал, кто эту хуйню в 2020 использует кроме нас ибо легаси
Аноним 16/01/20 Чтв 09:34:01 1573983853
>>1573960
Все, кому нужны сколь-либо сложные асинхронные флоу.
Аноним 16/01/20 Чтв 09:56:04 1573996854
>>1573983
async/await не завезли?
зачем городить сложные асинхронные флоу? может быть это проблемы архитектуры приложения?
Аноним 16/01/20 Чтв 10:11:08 1574000855
>>1573996
Генераторы более продвинутые, чем async/await
Аноним 16/01/20 Чтв 10:33:19 1574009856
>>1573996
>async/await не завезли?
Завезли, но в сагах много полезной обвязки и они более мощные. Например, их можно стопнуть, в отличие от промисов.

>зачем городить сложные асинхронные флоу? может быть это проблемы архитектуры приложения?
Ну блять, бизнес-логика сложная. Не все же пишут круды с двумя запросами на приложение.
Аноним 16/01/20 Чтв 10:42:18 1574018857
>>1574009
>их можно стопнуть, в отличие от промисов
сомнительно async тоже можно стопнуть, но ладно

>бизнес-логика сложная
декомпозиция?
Аноним 16/01/20 Чтв 11:14:04 1574041858
>>1574000
Хоть раз видел генераторы в продакшн коде?

Аноним 16/01/20 Чтв 11:18:10 1574042859
>>1574041
Видел. Я их у себя на проектах использую, когда саги пишу. В ФП языках это вообще повсеместно используется. Она даёт ленивость. Генератор это же по-сути корутина.
Аноним 16/01/20 Чтв 11:23:53 1574044860
15328746934.jpg (43Кб, 540x392)
540x392
>>1574042
>Генератор это же по-сути корутина
Аноним 16/01/20 Чтв 11:33:19 1574055861
>>1574044
Что? Это частный случай корутин же.
Аноним 16/01/20 Чтв 12:26:36 1574083862
>>1573777
Js для меня намного проще
Аноним 16/01/20 Чтв 14:07:11 1574153863
Аноны, которые шарят за теорию, поясните:
Вот в ЖС есть Область видимости, лексическое окружение, скоуп, [[Scope]], внешние лексическое окружение. Можно сказать, что:

Область видимости = Лексическое окружение = Scope,
[[Scope]] - просто свойство объекта, которое хранит информацию о лексическом окружении и ссылается на глобальное лексическое окружение
Аноним 16/01/20 Чтв 14:33:14 1574186864
Аноны. Блять. Объясните пожалуйста как работают модули в 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.. Я не понимаю, пчоему у них всё работает, я делаю тоже самое и хуй.
Аноним 16/01/20 Чтв 14:48:34 1574207865
>>1574186
Двачую, у самого такая-же проблема. Я так понял, нужно накатывать вебпак, чтобы он потом все эти модули вместе собрал.
Аноним 16/01/20 Чтв 15:16:47 1574223866
>>1574207
Ну нигде ничего об этом не говориться, абсолютно. Они просто пишут export/import и всё работает.
Аноним 16/01/20 Чтв 15:41:45 1574239867
>>1574186
>>1574207
>>1574223
Встретились два одиночества.

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

>Ну нигде ничего об этом не говориться
Это само собой разумеется в 2020 году. Может, тебе ещё объяснять как ИДЕ поставить или как компьютер включать?
Аноним 16/01/20 Чтв 15:44:10 1574244868
>>1574239
Спасибо, что объяснил.
Аноним 16/01/20 Чтв 16:27:58 1574296869
>>1574239
>не из файловой системы открывать, а поднимать серверочек для них
CORS то флагами можно обойти, но там потом ещё много говна, например для модулей в ответе должен быть корректный mime тип. Подозреваю что твой однострочник на php не будет с этим заморачиваться тоже.
В вебшторме есть встроенный сервачок или можно что-то типа http-server из npm взять
Аноним 16/01/20 Чтв 16:53:20 1574332870
>>1574296
>Подозреваю что твой однострочник на php не будет с этим заморачиваться тоже
Сложно проверить?
curl -i localhost:8080/test.js
HTTP/1.1 200 OK
Host: localhost:8080
Connection: close
Content-Type: application/javascript
Аноним 16/01/20 Чтв 17:06:17 1574348871
>>1574296
Щас бы флаги на целый браузер вешать ради того, чтобы обойти то, что не нужно обходить. Зачем специально стараться, чтобы сделать не по-человечески?

>однострочник на php не будет с этим заморачиваться тоже.
Всё будет работать как надо, никаких маймов не нужно
Аноним 16/01/20 Чтв 17:21:05 1574358872
>>1574186
Почитай про вэбпак и бабел
Аноним 16/01/20 Чтв 17:22:57 1574360873
>>1562734
похоже на то, что у тебя отключен вывод в консоль, в правом уголке есть панелечка, там Лог, вот кликни на него чтобы завелось.
Аноним 16/01/20 Чтв 17:31:45 1574375874
>>1574358
А что сам посоветуешь лучше? Вебпак или бабел? Я слышал вроде что вебпак, это что-то более свежее.
Аноним 16/01/20 Чтв 17:36:07 1574381875
>>1574375
В мире джаваскрита нужно постоянно учить мемы, иначе станешь баттхёртом.
Аноним 16/01/20 Чтв 17:43:25 1574396876
>>1574375
Они нужны совсем для разного
Аноним 16/01/20 Чтв 17:44:02 1574397877
Аноним 16/01/20 Чтв 17:47:21 1574399878
Снимок экрана 2[...].png (81Кб, 918x600)
918x600
Снимок экрана 2[...].png (77Кб, 1110x600)
1110x600
>>1562152 (OP)
Двач, как полюционировать эволюционировать с чувачка, пишущего код с первого пика, в чувачка, пишущего код со второго?
Аноним 16/01/20 Чтв 17:50:03 1574400879
>>1574399
Прочитать про методы массивов да стать.

за сравнение через == получай хрртьфу в лицо
Аноним 16/01/20 Чтв 17:50:14 1574401880
>>1574399
Выучить все методы? Первый код будет работать быстрее.
Аноним 16/01/20 Чтв 17:52:38 1574408881
>>1574401
>Первый код будет работать быстрее

А какой объективно лучше?
Что проще поддерживать?
Аноним 16/01/20 Чтв 17:54:34 1574411882
>>1574400
>Прочитать про методы массивов да стать
Почитал на learn.javascript.ru и написал первый пик по первой задачке, а в ответах был второй пик. Я глупый?
Аноним 16/01/20 Чтв 17:56:23 1574412883
>>1574411
Вряд ли это к глупости имеет отношение. Просто два разных подхода. Первый быстрее, но читается хуёво, второй медленее и понятнее, хотя и мутки мутные есть с тернаркой, мельтешит.

Хочешь реально тупым себя почувстсовать? Сходи на codewars и после того как решишь очередную задачу - посмотри на чужие решения из разряда most clever, вот там у тебя самооценка-то и упадёт

Аноним 16/01/20 Чтв 17:59:29 1574414884
>>1574399
во втором бы еще интерполяцию строк вместо конкатенации
Аноним 16/01/20 Чтв 18:00:37 1574416885
>>1574399
Писать код на JS.
>>1574408
Второй.
>>1574411
Да, ты тупая скотина, но не потому что написал второй код с пика, а потому что думаешь, что его написал такой же вкатывальщик, как ты, а не уже состоявщийся жопаскриптер.
Аноним 16/01/20 Чтв 18:00:43 1574417886
Аноним 16/01/20 Чтв 18:06:13 1574426887
>>1574399
Это палка о двух концах. Я так на коудворс задачки решал, а потом кукухой поехал и начал ЛЮБЫЕ решения пытаться уместить в одну строчку с помощью кучей методов, мапов/редьюсов с абсолютно жуткими колбеками етц.
Не делай так.
Аноним 16/01/20 Чтв 18:06:31 1574429888
>>1574399
Проблема первого пика не в том, что он не использует методы массива, а в хуевом именовании переменных. (если закрыть глаза на лишнее arr[key].length)
Замени arr на words и key на index — сразу станет понятно.
Аноним 16/01/20 Чтв 18:45:52 1574482889
>>1574408
Объективно лучше тот, который соответствует кодстайлу, принятому на конкретном проекте.
Аноним 16/01/20 Чтв 20:29:44 1574549890
А на сколько блокируется контора после неудачного собеса? Например я мувик не стану делать - приду к ним на вакансию, которая его не требует но контора с реактом работает - его по ходу дела изучать надо будет - мне скажут, что я не подхожу, а через месяц я уже сделал мувик и могу ли я снова к ним идти? Они ж обо мне помнить будут. Как к такому вообще относятся?
Аноним 16/01/20 Чтв 20:34:25 1574551891
>>1574549
Тебе во время отказа скажут, что добавили тебя в базу, и если им понадобится твоя кандидатура, то они тебе дадут знать. Если ты через месяц опять долбиться к ним будешь, то тебя просто в чс кинут как неадеквата.
Аноним 16/01/20 Чтв 20:36:32 1574553892
>>1574551
> что добавили тебя в базу, и если им понадобится твоя кандидатура, то они тебе дадут знать.
А они как-то мониторить будут, как я развиваюсь разве?
Аноним 16/01/20 Чтв 20:37:30 1574554893
>>1574549
Зависит от конторы. Если после собеса тебе говорят, что перезвонят через неделю -- забей хуй, контора говно. Если получил фитбек, узнай, можно ли попробовать ещё раз в идеале, тебе это скажут сами.

мимо устроился в датку с третьего раза
Аноним 16/01/20 Чтв 20:38:36 1574556894
>>1574553
кому ты сдался, мониторить тебя)
если ты не прошел собес - получай недостающие знания и иди опять на собесы
Аноним 16/01/20 Чтв 20:42:08 1574557895
>>1574556
> если ты не прошел собес - получай недостающие знания и иди опять на собесы
>>1574551
> Если ты через месяц опять долбиться к ним будешь, то тебя просто в чс кинут как неадеквата.
Где правда то? Я может за месяц недостающие знания получу.
Аноним 16/01/20 Чтв 20:44:38 1574561896
Аноним 16/01/20 Чтв 20:53:14 1574566897
>>1574561
Мы все сейчас наблюдаем как ты их получаешь. Если бы тебе не хватало знаний, которые можно получить за месяц, то тебя бы взяли на исптытательный, но нет, тебе указали на дверь, значит за месяц эти знания не получаются.
Аноним 16/01/20 Чтв 21:04:59 1574578898
Сколько примерно займет изучение React если выделить на чтение документации и специфических статей на хабре пол или целый день? И вообще, сложен ли он?
Аноним 16/01/20 Чтв 21:05:55 1574579899
>>1574578
Зависит от твоего бэкграунда.
Аноним 16/01/20 Чтв 21:08:30 1574582900
Аноним 16/01/20 Чтв 21:13:14 1574585901
>>1574578
>специфических статей на хабре
это контрпродуктивно
Аноним 16/01/20 Чтв 21:13:21 1574586902
>>1574579
3 года опыта в чистом си. так уж и вышло - попытался в си++ провалилась, да и не нужно стало Игрался много с чем. Тесты на ноду кстати проходил - выходит в районе 50-70, не ниже. Сегодня прочитал про React на хабре - вроде начал понимать синтаксис и предназначение, но не уверен что этого хватит до собеседования. Вообще в принципе не знаю как быть увереным в том, что знаний достаточно. В самой ноде ничего сложного нет, если сравнить одно "многоуровневые и константные указатели и идеей разницы между константными указателями и указателями на константу" - в свое время у меня мозги взрывались. Но с понятием асинхронности после чистого си мне таки пришлось попотеть, да.
Аноним 16/01/20 Чтв 21:20:55 1574598903
>>1574586
Ну и что ты забыл в этом треде? Дуй в rust тред
Аноним 16/01/20 Чтв 21:23:14 1574606904
>>1574598
Зачем раст? Конкретно в моем мухосранске вакансии есть только по плюсам, из которого мне только векторы и классы известны. Но на ноду хоть отбавляй хуева туча.
Аноним 16/01/20 Чтв 21:28:37 1574614905
>>1574606
Ну с твоим опытом плюсы тебе легче выучить будет, в долгосрочной перспективе это более перспективно, кмк.
Аноним 16/01/20 Чтв 21:37:33 1574620906
>>1574614
Работать на плюсах будет сложнее в разы и ответственности больше, но в основном ЗП мало отличается от ЗП в веб-разработке, но опять же - лично там, где я планирую работать. Но я слышал, что в ДС та же история. Остается только в других странах искать.
Аноним 16/01/20 Чтв 21:43:20 1574626907
>>1574620
А, так ты простой путь ищешь. Ну тогда ты зашёл туда, куда нужно.
Ну у тебя глуповатый вопрос, это же всё субъективно и зависит от многих факторов. Изучить реакт не сложно, в нем нет ничего сложного.
Аноним 16/01/20 Чтв 21:54:23 1574636908
>>1574586
Если ты после трёх лет C, не осилил С++, значит React ты точно не осилишь, потому что это сразу ООП и функциональщина, а C это процедурная хуйня для дегенератов.
Аноним 16/01/20 Чтв 21:58:55 1574641909
>>1574636
>Если ты после трёх лет C, не осилил С++
ООП-то я осилил. Но знаешь, если понаблюдаешь за холиваром С++ программистов, ты начинаешь понимать, что ООП - это лишь мелкая часть того, что надо знать С++ кодеру, ну и еще понимаешь, что нихуя не знаешь, а попытка узнать больше - будет стоить нескольку лет, и нет гарантий, что ЗП будет выше от ЗП обычной макаки.
Аноним 16/01/20 Чтв 22:01:23 1574646910
Аноним 16/01/20 Чтв 22:05:28 1574655911
>>1574641
Надо не за холиварами наблюдать, а язык учить. Как ты свои 3 года C описать можешь? 1.5 года писал пет-проект уровня тудулиста, остальные 1.5 наблюдал за холиварами?
Потому что какой-то ты слабенький для трёхлетнего сишника. Если у тебя асинхронность вызвала сложности, то значит ты не использовал многопоточность. Почему?
Аноним 16/01/20 Чтв 22:15:04 1574666912
>>1574655
>. Если у тебя асинхронность вызвала сложности, то значит ты не использовал многопоточность. Почему?
Потому что не было идей для софта, которая нуждалась бы многопоточности. Я в основном писал модификации для видеоигр, где все строится на хуках и патчах, ну и еще всяких ботов. Лишь однажды правда мне пришлось еще один поток завести в точке входа дллки, но это мелочь на уровне использования _beginthread - все остальное на хуках и патчах и обмазыванию асмой.

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

>остальные 1.5 наблюдал за холиварами?
Одного раза хватило в телеграм чатике по плюсам. Потом понял, что делать мне там нехуй. Тут даже не за холиварами наблюдать надо, а просто вчитаться в то, что они обсуждают.
Аноним 16/01/20 Чтв 22:17:23 1574672913
>>1574666
>Потом понял, что делать мне там нехуй.
Лол, тогда тебе к яваскрипту даже близко подходить не стоит.
Аноним 16/01/20 Чтв 22:17:52 1574673914
Аноним 16/01/20 Чтв 22:23:20 1574678915
>>1574673
Ну смотри. С++ это тот же JS, только там ты всё видишь и контролируешь, он логичен, а в JS половину ты не видишь, половина делается за тебя, при этом он в некоторых местах максимально не логичен и большую часть времени тебе нужно будет работать с объектами, которые ты не осилил.
Это как с основ кидаться сразу к чему-то более высокому, понятно, что если ты основы не осилил, то JS тебя только запутает.
Аноним 16/01/20 Чтв 22:25:57 1574681916
>>1574678
понятно - говно этот твой жс значит. жава лучше
Аноним 16/01/20 Чтв 22:30:01 1574686917
Аноним 16/01/20 Чтв 22:38:07 1574700918
У кого-то есть архивчик с рассылками шаблонов от хтмл академии? помню раньше прилепляли
дайте ссылку или как найти подскажите
Аноним 16/01/20 Чтв 23:06:13 1574739919
Снимок экрана 2[...].png (66Кб, 838x407)
838x407
Снимок экрана 2[...].png (68Кб, 1065x531)
1065x531
Снимок экрана 2[...].png (65Кб, 837x476)
837x476
>>1562152 (OP)
Первый пик - задачка с learn.javascript.ru
Второй - мое решение
Третий - решение из ответов

Чему автор учебника выбрал такое решение, а не как у меня?
В чем мое решение хуже?
Аноним 16/01/20 Чтв 23:13:04 1574746920
>>1574739
С твоим решением вроде как проблем нет, просто с точки зрения теста ты все упростил. Итерацию пропустил, поиск значения пропустил. Если понимаешь пример из ответов, то проблем нет. Он просто сделан более самостоятельнее, что ли.

И мне кажется пример с циклом какой-то грязный, при каждой итерации объявляется переменная, это по определению грязно - по крайней мере в СИ точно было бы. Зачем, если можно определить переменную перед ентрипонтом цикла, и затем просто переустанавливать значение на нужное?
Аноним 16/01/20 Чтв 23:13:32 1574748921
>>1574739

Может быть просто ты решаешь задачу из главы, где мап ещё не проходили?
Аноним 16/01/20 Чтв 23:13:35 1574750922
>>1574739
У автора понятно расписанное решение, которое может понять даже начинающий, а у тебя душня только ради того, чтобы всё в одну строчку спихнуть.
Аноним 16/01/20 Чтв 23:16:52 1574753923
>>1574739

Разве безопасно идти по массиву и одновременно менять его? На сколько я знаю в пхп за такое убивают. Я не прав?
Аноним 16/01/20 Чтв 23:18:16 1574756924
>>1574753
Прав, за такое везде убивают.
Аноним 16/01/20 Чтв 23:19:48 1574759925
Аноним 16/01/20 Чтв 23:20:21 1574761926
>>1574753
А что не так? Какие подводные?
Аноним 16/01/20 Чтв 23:25:22 1574773927
>>1574739
Сорта вкусов.
Я б
const newArray = arr.filter((item) => !(item >= a && item <= b)); arr.splice(0, arr.length, ...newArray);
Аноним 16/01/20 Чтв 23:26:24 1574775928
>>1574750
Разе map не очевиднее?
Сразу понятно, что дальше будет выполняться что-то для каждого элемента массива, а как цикл работает, нужно думать, а потом еще думать, что в этом цикле делается
Аноним 16/01/20 Чтв 23:27:33 1574776929
>>1574775
forEach ещё ладно бы, но map точно только запутывает.
Аноним 16/01/20 Чтв 23:29:47 1574782930
>>1574773
>Я б
>const newArray = arr.filter((item) => !(item >= a && item <= b)); arr.splice(0, arr.length, ...newArray);

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

А чему нежелательно идти по массиву и одновременно его менять?
Аноним 16/01/20 Чтв 23:36:45 1574801931
>>1574782
Большая вероятность нарваться на ошибки, особенно когда одни элементы логически зависят от других. Сами элементы в массиве изменять нормально, но не массив.
Аноним 16/01/20 Чтв 23:38:51 1574804932
>>1574739
Мысли у всех разные, а задача тривиальна и решения могут быть какие угодно.

Хоть так можно
const f = (arr, a,b) => {
arr.forEach((item, index) => !(item >= a && item <= b) && arr.splice(index, 1))
}
Аноним 16/01/20 Чтв 23:40:31 1574808933
>>1574801
А чему ты const использовал?
Аноним 16/01/20 Чтв 23:43:22 1574815934
>>1574808
Это не я, я мимокрок.
Аноним 16/01/20 Чтв 23:51:15 1574837935
>>1574739
Потому что у тебя одностроковая хуйня, а не решение. При этом всё это делается еще проще:

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

Аноним 16/01/20 Чтв 23:56:07 1574849936
>>1574782
>arr.splice(0, arr.length, ...newArray);
А чему не работает arr = newArray ?
Аноним 16/01/20 Чтв 23:56:12 1574850937
>>1574837
>inPlace
Жопой читаешь? Это не изменит исходный массив и вернет новый массив, а такого поведения быть не должно + у тебя даже сама задача решена не верно
Аноним 16/01/20 Чтв 23:57:19 1574853938
>>1574782
В основном из-за внезапных подводных камней для алгоритма:
Во-первых, можно поменять элементы которые впереди и твой алгоритм охуеет когда дойдёт до них или внезапно для себя вылетит за пределы массива. Здесь тот случай, но тем не менее.
А при итерации по индексам индекс придётся корректировать если наоборот удаляются элементы позади, i-- например в белом куске кода.
Ещё компиляторам/интерпретаторам от такого хуёво, наверняка многие оптимизации идут по пизде.
Аноним 16/01/20 Чтв 23:58:45 1574858939
>>1574849
Это изменит область памяти на которую указывает переменная arr, но не содержимое этой памяти.
Аноним 17/01/20 Птн 00:00:58 1574867940
>>1574837
>>1574850
А ещё он отфильтровал наоборот.
Лол, надо же так обосраться на задаче для джуниора с вьетнамского форума горлового пения.
Аноним 17/01/20 Птн 00:04:50 1574873941
Снимок экрана 2[...].png (78Кб, 1064x551)
1064x551
>>1574858
В моем случае почему-то ничего не меняется

>Это изменит область памяти на которую указывает переменная arr, но не содержимое этой памяти.
Почему не оставить это сборщику мусора?
Аноним 17/01/20 Птн 00:07:23 1574877942
>>1574873
Потому что объявлять массив нужно либо через var, либо выше объявления функции.
Аноним 17/01/20 Птн 00:11:09 1574886943
Снимок экрана 2[...].png (79Кб, 1064x551)
1064x551
>>1574877
>через var
Не помогает
Аноним 17/01/20 Птн 00:18:50 1574907944
Бляя как же ненавижу эти алгоритмы ебаные, сортировки хуевки всякие... Просто блевать тянет.
Аноним 17/01/20 Птн 00:22:01 1574916945
>>1574907
Уверен что кодинг твое?
Аноним 17/01/20 Птн 00:22:41 1574918946
>>1574873
>>1574886
Потому что массив передаётся в функцию по ссылке, а не по значению. Т. е. у тебя внутри массива arr это ссылка на массив, если ты будешь работать с этой ссылкой, т. е. вызывать методы arr, т. е. изменишь тот массив на который ссылается твоя переменная arr, в случае с присваиванием, ты своей переменной, в которой была ссылка, присваиваешь массив. Очевидно, что это никак не влияет на массив на который была ссылка в этой переменной.
Аноним 17/01/20 Птн 00:23:20 1574922947
>>1574918
>у тебя внутри массива
внтури функции

Аноним 17/01/20 Птн 00:23:51 1574925948
>>1574907
Достаточно в общих чертах их понимать. Реализовывать с нуля вряд ли понадобится, всё типовое уже давно написано за нас.
Аноним 17/01/20 Птн 00:26:05 1574930949
>>1574886
Верни массив. время поиграть с промисами.
Аноним 17/01/20 Птн 02:21:29 1575051950
>>1574641
Охуенное ООП без наследований в 99% процентов случаев
Функциональщина в чем заключается?
Реакт охуенно простой, вебпак и бабел дольше учиться настраивать, чем с ним разбираться
Аноним 17/01/20 Птн 03:37:06 1575070951
Аноны, чисто по опыту, посоветуйте, что учить поверхностно для веб-разработки, а что нужно знать досконально. Что устарело? Что набирает популярность?
Аноним 17/01/20 Птн 05:39:38 1575089952
Аноним 17/01/20 Птн 05:39:54 1575090953
Аноним 17/01/20 Птн 06:57:36 1575104954
>>1575070

Обязательно

- Верстка (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
Аноним 17/01/20 Птн 08:06:09 1575120955
>>1574907
Хоть одну написал то?
Аноним 17/01/20 Птн 08:08:45 1575121956
Аноним 17/01/20 Птн 08:58:11 1575130957
>>1574401
>Первый код будет работать быстрее.
С чего хоть?
Аноним 17/01/20 Птн 09:22:56 1575142958
>>1574739
>Использует map? который сделан для изменения каждого члена массива, тупо для удаления по условию
>Чему автор учебника выбрал такое решение, а не как у меня?
>В чем мое решение хуже?

Ну так то можно и ложкой гвозди забивать, а так как минимум читабельностью хуже.
Аноним 17/01/20 Птн 10:27:00 1575176959
Как запретить читать переменные и использовать мои функции в консоли гугла?
Аноним 17/01/20 Птн 10:39:17 1575186960
>>1575176
Храни их в замыканиях, юзай symbol, дождишь TS 3.8
Аноним 17/01/20 Птн 10:45:27 1575194961
>>1575176
Оборачиваешь всю свою портянку двумя фигурными скобками и пользователь отсосет, при попытке что то вызвать
Аноним 17/01/20 Птн 10:53:47 1575199962
Аноним 17/01/20 Птн 11:11:50 1575204963
>>1575199
Почему это я инцел? А может ты инцел?
Аноним 17/01/20 Птн 11:18:06 1575207964
>>1575176
Консоль гугла, лол.

В целом — никак. Ты же весь код на клиент передаешь.
Аноним 17/01/20 Птн 11:21:45 1575209965
>>1575207
М - минификация
О - обсфукация
М & О - минификация и обсфукация

Аноним 17/01/20 Птн 11:23:54 1575211966
>>1575209
Обфускация, если что
Аноним 17/01/20 Птн 11:29:10 1575213967
>>1575209
При желании что угодно можно расковырять. Бороться с этим довольно бессмысленно.
Аноним 17/01/20 Птн 11:56:19 1575226968
Аноним 17/01/20 Птн 12:11:00 1575234969
Аноним 17/01/20 Птн 12:25:18 1575239970
>>1575207
Скрыл >>1575194
>>1575204
Потому что какое-то гамно заумное пишешь, когда можно было просто все обернуть { }
Аноним 17/01/20 Птн 13:17:49 1575293971
>>1575194
Копирую его портянку. Меняю в редакторе. Блокирую загрузку этого скрипта на странице. Обновляю страницу. Вставляю отредактированную портянку.
>>1575176
Можно только осложнить, но это защитит только от школьников и бабушек. Если нужно что-то скрыть и запретить использовать, то это выносят на сторону сервера.
Аноним 17/01/20 Птн 14:17:43 1575360972
>>1575293
Я слышал, ты сайты взламываешь? Сможешь взломать вк тёлки одной побратски
Аноним 17/01/20 Птн 15:00:32 1575405973
>>1575293
Как скопировать скрипт со страницы?
Аноним 17/01/20 Птн 15:03:35 1575408974
Аноним 17/01/20 Птн 15:04:15 1575411975
>>1574666
Мне кажется ты просто разпиздяй и нытик. Могу конечно ошибаться
Аноним 17/01/20 Птн 15:09:22 1575414976
>>1574678
Какая то шаблонная, стереотипная портянка про JS. Все в JS нормально с логикой. Дыры и странности есть в каждом языке.
>>1574681
Да не слушай ты его. Если системщик - вкатывайся в ноду.
Аноним 17/01/20 Птн 15:12:35 1575416977
Аноним 17/01/20 Птн 15:14:04 1575418978
>>1575414
Да, в JS всё нормально, если рассматривать его как браузерный язык. Как язык, который позволяет за малое количество действий, получить результат. Но именно это и делает его сложным для освоения тем, кто до этого не разобрался в основах. У тебя большая часть делается за кулисами, от этого тебе может казаться что-либо не логичным, но вот если бы ты знал, что там делается за кулисами, то у тебя бы не возникало вопросов. И те, кто работал с С++, например, знают что происходит за кулисами, потому что в C++ ты это делаешь вручную и представляешь что и как работает.
Аноним 17/01/20 Птн 15:18:17 1575428979
>>1575418
>>JS всё нормально, если рассматривать его как браузерный язык
Да ты что? А я думал он одну нишу с Фортраном делит.
Дальше пурга. Шли кулисы через кулисы.
>> делает его сложным для освоения тем
Осваивать нужно не язык, а программирование.
Аноним 17/01/20 Птн 15:59:46 1575484980
>>1575428
Я про это и говорю. С JS-ом ты программирования не освоишь, нужно что-то более низкоуровневое.
Аноним 17/01/20 Птн 16:02:38 1575489981
>>1575484
Ты так это написал, как будто программирование - это про написание кода
Аноним 17/01/20 Птн 16:03:26 1575491982
>>1575484
Какой бред) в js есть все те понятия, какие есть в любом языке. Ну и понятное дело, что увлеченный человек не будет себя ограничивать одним языком
Аноним 17/01/20 Птн 16:08:57 1575502983
>>1575491
Конечно. Передача по значению и ссылке тоже есть в js?))))0)) Может быть многопоточность в js есть?))) Может быть в нём есть явное приведение типов?))) Может быть в нём есть полноценные классы и структуры?))))
Аноним 17/01/20 Птн 16:12:27 1575510984
>>1575502
>Передача по значению и ссылке тоже есть в 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 «полноценные»
Аноним 17/01/20 Птн 16:15:01 1575514985
>>1575418
Что вообще значит «за кулисами»? У языка есть спека и он работает так, как в ней написано.
Аноним 17/01/20 Птн 16:30:06 1575541986
>>1575502
На сколько я понимаю "явное приведение типа данных", это не просто маня мантра, и "так разрабатывать удобнее!!11".
В большей мере это позволяет компилятору лучше оптимизировать код. Но это лучше знает тот тип выше, который на C пишет
Аноним 17/01/20 Птн 16:40:43 1575559987
>>1575502
>передача по значению и ссылке
Есть конечно же. Объекты по ссылке, примитивы и функции по значению
>Многопоточность
Есть. Сервис воркеры.
>Приведение типов
TS, bucklescript, reasonml, flow к твоим услугам
>структуры данных, классы
Есть, есть. Любую структуру ты можешь написать сам, в случае чего, тебя ничто не ограничивает. Так что твои кукареки необоснованные.
Аноним 17/01/20 Птн 16:45:09 1575567988
1579268707937.jpg (30Кб, 685x288)
685x288
Анончики, не гнобите плиз, не могу понять как работает else в этой рекурсии. Вообще не вдупляю, почему рекурсия записывается в numbers и что оно там возвращает.
Аноним 17/01/20 Птн 16:50:38 1575580989
20190929094910.jpg (55Кб, 348x392)
348x392
>>1575510
>Вообще-то да.
Показывай мне аналог пикрила.
>https://nodejs.org/api/worker_threads.html
Почитай чем поток отличается от процесса.
>https://www.typescriptlang.org
И? Зачем ты ссылку даёшь на другой язык программирования?
>define «полноценные»
Поддержка несколько конструкторов, хотя бы.
Аноним 17/01/20 Птн 16:51:14 1575582990
>>1575559
>Любую структуру ты можешь написать сам

Проиграл с жопаскрипт макаки, которая не знает чем структура отличается от класса.
Аноним 17/01/20 Птн 16:52:25 1575587991
Прошлогодний
Т
Р
Е
Д
Аноним 17/01/20 Птн 17:09:27 1575611992
>>1575567
Рекурсия никуда не записывается. Когда выполнение кода доходит до
numbers =
То начинается рекурсивный вызов функции до получения результата, т. е. пока endNum - startNum не будет равно 0.
Как только результат получен, стэк вызовов начинает схлопываться, т. е. последний вызов вернёт [1]
Далее выполнение кода продолжается, т. е. код, получивший [1], пойдёт дальше:
numbers.push(endNum)
endNum в предпоследнем вызове функции равен 2
В итоге ты получаешь массив [1, 2] и возвращаешь его в предыдущий код, который находится на стадии numbers =
И так по цепочке, пока самый первый вызов не получит массив [1, 2, 3, 4] и не добавит в него первоначальный endNum, т. е. 5
Аноним 17/01/20 Птн 17:21:53 1575622993
>>1575611
Понял, спасибо тебе
Аноним 17/01/20 Птн 17:21:57 1575623994
Аноны, можно ли передавать local state детям, если я уверен что изменение этого стэйта будет синхронным среди детей?

Так же мне не раз в треде писали, что я либо не знаком/ не пользуюсь call-back. Я не раз читал что есть call-back функции, но видимо я не ловлю какую-то важную суть. Можете придумать какое-нибудь тривиальное задание для меня, чтобы я сам себя проверил на знание call-back.
Аноним 17/01/20 Птн 17:44:40 1575627995
>>1575541
Нет, это как раз таки про удобнее. Строгая типизация нужна в первую очередь для отлова ошибок ещё на уровне написания кода а не в рантайме или при компиляции.
Современные компиляторы/интерпретаторы – чёрная магия, им уже похер что оптимизировать.
Аноним 17/01/20 Птн 19:00:29 1575669996
>>1575582
Это где я написал, что не знаю, чем отличается?
Аноним 17/01/20 Птн 19:22:23 1575691997
>>1575669
>Любую структуру ты можешь написать сам, в случае чего, тебя ничто не ограничивает.

Вот здесь
Аноним 17/01/20 Птн 20:04:26 1575725998
16
Аноним 17/01/20 Птн 20:08:45 1575727999
>>1575691
И что тебя ограничивает?
Аноним 17/01/20 Птн 20:12:10 15757281000
image.png (124Кб, 540x540)
540x540
Хочу нарисовать на canvas такую анимацию. Что почитать, чтобы без долгих объяснений фундаментальных основ про синусы и косинусы?
Аноним 17/01/20 Птн 20:15:10 15757301001
>>1575728
Вставилось как png, в общем я об этом:
Аноним 17/01/20 Птн 20:15:52 15757321002
>>1575730
Макаба еще и ссылки ест?
images.app.goo.gl/DwH4ow1fy5bVCXLt7
Аноним 17/01/20 Птн 20:28:43 15757371003
>>1575728
Дрочи webgl. Но без тригонометрии в нем далеко не уедешь.
Аноним 17/01/20 Птн 20:34:56 15757431004
>>1575737
WebGL это вроде про 3D. Не подскажешь какой-нибудь фреймворк под эту задачу?
Аноним 17/01/20 Птн 20:38:41 15757471005
Аноним 17/01/20 Птн 20:39:23 15757481006
Аноним 17/01/20 Птн 20:52:49 15757671007
Аноним 17/01/20 Птн 20:55:51 15757711008
>>1575743
Под эту задачу не нужно никаких фрейворков. Там же нет сцены и всего один квад. Голый webgl и много шейдерного кода.

Shadertoy ок для быстрого старта.
Аноним 17/01/20 Птн 20:56:49 15757731009
>>1575771
Запустить шейдер на голом js — геморрой размером с авианосец
Аноним 17/01/20 Птн 20:58:59 15757771010
>>1575773
Ну так, строк 50 мб. Ничего такого что требовало бы прям ФРЕЙМВОРКА.
Аноним 17/01/20 Птн 21:04:03 15757811011
>>1575728
Апи канваса что 2д что 3д низкоуровневое и тупое, такое же как все остальные апи для рисования.
Сложность тут только в собственно программирование алгоритма анимации.
Если ты этот шар взял из какого-нибудь туториала по плюсам или шейдерам, с него и начинай, потом портируешь на канвас но нахуя тогда уже?.
Аноним 17/01/20 Птн 21:04:47 15757841012
>>1575777
Нужно же знать эти 50 строк, а зачем их знать, если можно взять готовый фреймворк? Я пробовал, получилось. Сложно, не нужно.
Аноним 17/01/20 Птн 21:10:07 15757891013
>>1575781
Я этот шар взял картинкой в /b, хочу написать на JS чтобы встроить в веб-страницу с моим CV
Аноним 17/01/20 Птн 21:11:00 15757901014
>>1575777
> строк 50
Пиздец вы зажрались в высокоуровневом JS.
Аноним 17/01/20 Птн 21:13:12 15757941015
>>1575789
такой же шар ты не нарисуешь, если не найдёшь автора, и он не отдаст тебе код. Можешь нарисовать "что-то типа", если с нуля потратишь несколько десятков часов. Для простого смертного это очень сложно, нужна тригонометрия и знание glsl.
Аноним 17/01/20 Птн 21:17:32 15758011016
wobs-w.webm (144Кб, 1280x720, 00:00:01)
1280x720
А вообще, мне печально, что в вэбе все не используют шейдеры...
Аноним 17/01/20 Птн 21:19:44 15758041017
>>1575801
Незачем же.
Какой-нибудь красивый эффект который дизайнер захотел на фоне проще в видео записать.
Аноним 17/01/20 Птн 21:21:02 15758061018
bg-wav.webm (12570Кб, 672x672, 00:00:06)
672x672
>>1575804
Дизайнеры ограничены...
Аноним 17/01/20 Птн 21:22:44 15758091019
rings-50.webm (6227Кб, 1280x720, 00:00:08)
1280x720
>>1575806
...а видео весят очень много.
Аноним 17/01/20 Птн 21:24:50 15758161020
w-rings.webm (3915Кб, 1280x720, 00:00:14)
1280x720
>>1575809
...правда, шейдеры жрут видекарту, которая есть не у всех... сложно всё, короче.
Аноним 17/01/20 Птн 21:31:44 15758201021
rainb-w.webm (3979Кб, 1280x720, 00:01:09)
1280x720
wave-pattern-3.webm (10771Кб, 1280x720, 00:00:10)
1280x720
и вот так ещё можно
Аноним 17/01/20 Птн 21:33:25 15758231022
Аноним 17/01/20 Птн 21:35:25 15758251023
Здравствуй, /b/, это webm-тред?
Аноним 17/01/20 Птн 21:42:27 15758281024
w-points.webm (614Кб, 903x903, 00:00:10)
903x903
>>1575825
webm — в любом треде хорошо
Аноним 17/01/20 Птн 21:50:56 15758381025
Какой проект реализовать? Чтобы не слишком сложно, и чтобы приобрести популярность хотя бы человек у ста...
Аноним 17/01/20 Птн 21:55:20 15758411026
>>1575838
Создай искуственный интеллект который будет делать заебись по описанию, и сможешь приобрести популярность у предпринимателей.
Аноним 17/01/20 Птн 22:03:03 15758471027
>>1575841
Я же сказал не сложно. И тем более разве на жаба скрипте можно написать искусственный интеллект?
Аноним 17/01/20 Птн 22:04:45 15758501028
Аноним 17/01/20 Птн 22:09:11 15758611029
>>1575850
Ну вот уже кто-то сделал... для чего эта ебань нужна кстати? А мне что интересного сделать?
Аноним 17/01/20 Птн 22:12:00 15758721030
>>1575861
Так до тебя все простое уже написали, для всего есть несколько версий, уже нового ничего придумать нельзя.
Аноним 17/01/20 Птн 23:02:48 15759411031
>>1575809
Представляю, как бы мой i5 задымился от расчёта таких бубликов.
Аноним 17/01/20 Птн 23:12:14 15759581032
Аноним 18/01/20 Суб 00:06:01 15760561033
>>1575941
Видеокарта считает, на проц пох
Аноним 18/01/20 Суб 00:09:06 15760581034
Есть проблема, гугл не помог - в vs code не работает автодополнение в папках, которые созданы через create-react-app - если нажать ctrl+space, будет строка загрузки автодополнения, пустая естественно. Есть старые папки, созданные таким образом - в них все работает. Если попробовать ввести хоть что-то в папке с неработающим автодополнением - оно перестаёт работать во всех папках вообще, до перезапуска вскода. Как это можно исправить? Это что-то в node modules надо поменять? Перестановить вскод?
Причём это не касается хтмл/цсс - там сниппеты работают исправно.
Аноним 18/01/20 Суб 00:53:43 15761121035
Привет аноны. Прошу вашей помощи. Есть какой нибудь способ приостановить выполнение функции до загрузки страницы?


funstion test{

var a;
var b;

var c = a + b;
////// тут что-то, что остановит выполнение пока страницы не загрузится
alert (c);
}
Спасибо
Аноним 18/01/20 Суб 02:25:54 15761451036
>>1576056
Нет в моем синкпаде видеокарты
Аноним 18/01/20 Суб 02:26:48 15761461037
Аноним 18/01/20 Суб 03:17:23 15761611038
>>1573780
Бампирую вопрос. Уже перерыл все что можно все равно не пашет. Что сука характерно если себе на страницу заебенить ютубплеер, то с ним можешь делать что душе угодно, но вот с плеерами на ютубе тебе делать ничего не дают. Что за хуйня?

Ну же аноны, неужели никто здесь из вас не писал расширения для браузеров? Не верю. Учить жс и не писать расширения это же пиздец тупо.
Аноним 18/01/20 Суб 05:17:43 15761751039
>>1573780
>>1576161
Тебе же руским языком браузер написал:

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

Не пустят тебя в полный экран без клика пользователем на кнопку.
И слава богу.
Аноним 18/01/20 Суб 06:54:38 15761871040
Аноним 18/01/20 Суб 08:48:10 15761951041
>>1576175
Да сука, что же они за мудаки то такие. Какого хуя я не могу автоматизировать некоторые простые вещи. Ублюдки, блять. Реально без ручного нажатия никак?
Аноним 18/01/20 Суб 09:04:02 15761981042
1549750174649.jpg (29Кб, 255x185)
255x185
>>1576195
Ну короче я наконец разобрался, оказывается это даже не вина ютуба. Просто сам ебучий FullScreen API сделан так что:

>По соображениям безопасности полноэкранный режим может быть запущен только из обработчика событий (то есть инициируется пользователем);

То есть я изи могу сделать кнопку которая вызывает фуллскрин, но автоматически его запускать ни ни. ЕБаный стыд, как же я горю.
Аноним 18/01/20 Суб 12:21:20 15762731043
Есть тут такие люди, которые знают и любят вабаудио?
Идет какая-то дикая (пол-секунды) задержка от микрофона, хотя цепочка там проще некуда:

navigator.getUserMedia({audio:true}, micCB);
function micCB(_in){
var mic = audioContext.createMediaStreamSource(_in);
var sp = audioContext.createScriptProcessor(256, 1, 1);
mic.connect(sp);
}

Аноним 18/01/20 Суб 13:05:39 15763191044
>>1576198
Хочешь, чтобы каждый сраный второй сайт пытался автоматом свою охуенно важную рекламу тебе в фулскрин запихнуть?

Посмотри на муделей, которым про Notifications API рассказали - 2019 год прошел под знаком "Нет, не хочу оповещений. И здесь тоже. И здесь. Заткнитесь нахуй"
Аноним 18/01/20 Суб 13:06:24 15763201045
>>1576319
Напоминаю, что эти оповещения так заебали пользователей, что все браузеры будут отключать их нахуй по умолчанию.
Аноним 18/01/20 Суб 13:09:01 15763251046
>>1576319
Ну вообще так то у расширений вроде как побольше прав чем у кода с сайтов. Хотелось бы что ими можно было фулскринить. ДА и тем более там большими буквами всегда пишется что выход из фулскрина ESC, так что ничего страшного бы не случилось.
Аноним 18/01/20 Суб 13:13:34 15763281047
>>1576319
Ну не, ничто не переплюнет "Мы что-то слышали про закон о cookies который пытались принять в одной стране на которую наш сайт даже не ориентирован, но нам надо заставить нажать вас на кнопочку потому что так делают все."
Аноним 18/01/20 Суб 13:54:28 15763701048
Аноним 18/01/20 Суб 14:12:24 15763871049
>>1576328
"Зарегистрируйтесь, чтобы увидеть больше". Охуенно, что это обходится так же элементарно, как и запреты на копирование.
Аноним 18/01/20 Суб 15:52:06 15764721050
Покидайте полезных каналов в тг
Аноним 18/01/20 Суб 18:30:34 15766491051
image.png (139Кб, 951x415)
951x415
2020 год. Консоль браузера от ведущего разработчика софта при открытии сервиса ведущего разработчика софта.
Аноним 18/01/20 Суб 19:48:40 15767051052
Аноним 18/01/20 Суб 19:53:38 15767121053
Я правильно понял, что <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
Аноним 18/01/20 Суб 20:12:44 15767321054
>>1576712
Нет, неправильно ты понял.
>Он сам внедряет этот прелодер и чекает, что данные зафетчены и потом уже рендерит компонент?
Нет. Да и как ты себе такое представляешь?
Аноним 18/01/20 Суб 20:17:45 15767461055
>>1576732
>Нет. Да и как ты себе такое представляешь?

Я предполагал, что новый Suspense из ветки experimental, проверяет переменные в которые сохраняются данные из промисов (например запрос к API), если промисы выполнены, то рендерит компонент, а если нет, что показывает то, что указанно в fallback
Аноним 18/01/20 Суб 20:20:29 15767501056
Screen Shot 202[...].png (94Кб, 919x666)
919x666
>>1576746
Там в примере есть комментарий
// Try to read user info, although it might not have loaded yet
и в рендере нет никаких проверок на то, что данные загружены
Аноним 18/01/20 Суб 23:08:16 15770411057
>>1576058
Бамп. Серьёзная проблема, что делать? Скажите на что ориентируется вскод, когда решает, какое автодополнение показывать и показывать ли.
Аноним 18/01/20 Суб 23:11:21 15770471058
>>1577041
Попробуй все плагины выключить вся суть
Аноним 18/01/20 Суб 23:39:34 15770911059
А как удалить вс код с камбутера? А то я переустанавливал, а у меня все расширения остались
Аноним 19/01/20 Вск 00:13:44 15771421060
Ronald-McDonald.jpg (50Кб, 1024x576)
1024x576
>>1577091
Настало то самое время
Аноним 19/01/20 Вск 01:02:10 15771721061
>>1577091
У меня один раз получилось так, что у меня их было два - 64 и 32х бит. Переустанавливался один из них, но запускался другой. Долго прифигивал в этом всем, пока не обнаружил это. Понятия не имею, как так могло получиться. Я ставил его один раз и потом просто обновлял время от времени.
Аноним 19/01/20 Вск 02:14:53 15772061062
>>1576058
>нажать ctrl+space
Подскажите, а в маке какая комбинация для этого? Command+space открывает спотлайт поиск
Аноним 19/01/20 Вск 04:24:59 15772231063
>>1568306
Спасибо за инфу, надеюсь меня теперь тоже не обоссут
Аноним 19/01/20 Вск 10:15:45 15772621064
>>1563599
а чем тебе не нравятся hoistащиеся functionы? Сфига ли всего на жирных стрелках писать??
Аноним 19/01/20 Вск 10:48:51 15772761065
Какую интересную технологию сегодня выучить? Урок на youtube прилагать обязательно
Аноним 19/01/20 Вск 11:02:58 15772821066
Аноним 19/01/20 Вск 11:10:49 15772901067
>>1577282
И че это, не понял нихуя
Аноним 19/01/20 Вск 11:35:45 15773011068
Аноним 19/01/20 Вск 12:08:18 15773151069
>>1562152 (OP)
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html

перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
перекат https://2ch.hk/pr/res/1577313.html
1068 79 193
Настройки X
Ответить в тред X
15000 [S]
Макс объем: 40Mб, макс кол-во файлов: 4
Кликни/брось файл/ctrl-v
Стикеры X
Избранное / Топ тредов