24 декабря Архивач восстановлен после серьёзной аварии. К сожалению, значительная часть сохранённых изображений и видео была потеряна. Подробности случившегося. Мы призываем всех неравнодушных помочь нам с восстановлением утраченного контента!
Аноны, хочу получить советов мудрых, высераю пару предложений и код на скриншоте, а получаю смехуёчки. Как быть?
Если рассчитываешь получить дельный ответ, формулируй правильно вопрос:
У меня есть проблема\задача (А) %текст-ошибки или задача%. Я пытался решить ее так %кусок-кода-опционально% (Б), у меня не вышло %текст-ошибки%. Я погуглил, почитал документацию и попробовал сделать так %кусок-кода-%(В), но получаю ошибку (Г).
Сделай песочницу по ссылкам выше для ясности и удобства. Если никогда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.
>>1639808 (OP) Суп джаваскриптач. Есть какие-нибудь продвинутые курсы по ноде?
Я фронтендер с 3 годами опыта, могу в питон на вменяемом для работы уровне. Но с нодой никак не подружусь - пытаюсь писать по-модному-фронтендерному-типа-фпшному и очевидно всираюсь, т.к хорошей архитектуры не получается. Просто потому, что с ЖСом привык работать в контексте 1 сессии у юзера, которая заканчивается с перезагрузкой страницы. С питоном таких проблем нет, но у питона серверная часть из коробки выглядит намного приятнее.
>>1639987 >серверная часть из коробки выглядит намного приятнее Ты сейчас про джангу? Работаю сейчас с ней, люто бомбит с того, что нельзя просто асинк/авейт сделать, как в ноде.
>>1639987 >привык работать в контексте 1 сессии у юзера >С питоном таких проблем нет >по-модному-фронтендерному-типа-фпшному >Я фронтендер с 3 годами опыта Ты обычная макака без фундоментальных знаний подхватывающая единичные фишки и те неполноценно Твое существование очередное доказательство ущербности постсовковых галер и их обитателей
смотри как устроенны чужие mvc фреймворки на гитхабе, и попытайся для начала запилить своё приложение с одной инстанцией, например полноценный клон двача или какой-нибудь видео чат, потом для этого приложения реализуй многопоточный кластер с n-инстанциями на основе pm2, nginx и redis
>>1640201 сейчас уже много либ для ноды стали де-факто стандартами, например express, redis, socket.io, Sequelize ORM и тд, так что сейчас грех жаловаться, в 2015 была ситуация "веселей" в этом плане
>>1640141 > На русском нет нихуя Я вроде и не просил на русском, с инглишем все в порядке. >>1640143 Про джангу в том числе, но с ней работал не так уж и много.
>>1640199 Я для этого и прошу какие-нибудь курсы, чтобы подсмотреть бест практисы и то, как люди дружат ноду с наиболее популярными тулзами редис рэббитмку монга мускль постгресс сокеты и т.п. Например вот >>1640209 спасибо, сказал про "стандарты".
>>1640165 Маня, съеби нахуй. Твое существование очередное доказательство ущербности постсовковых галер и их обитателей.
>>1640355 если они не ебланы, то перезвонят, так как по умолчанию подразумевается, что числа будут положительные
>~~‘s flooring capabilities make it a better alternative to Math.floor if you know you’re dealing with positives — it’s faster and takes up less characters. > if you know you’re dealing with positives
>>1640365 Поскольку задача стояла чисто техническая, автор мог продемонстрировать углубленные познания в механизмах работы интерпритатора и не писать скобки, подчеркивая понимания различий между бинарными и унарными функциями (-)
>>1639887 Придумываешь себе программу, которую давненько хотел бы иметь в быте, но никак не находил/такой нет, и реализуешь на практике. На JS сейчас можно написать практически всё что угодно сайт/игра/утилита/десктоп приложение/мобильное приложение, даже если оно юудет говно по производительности, как все любят кукарекать, это лучший способ. Имеешь идею, и идёшь к ней, гугля каждую деталь реализации, базарю, ещё захочешь. Даже если не закончишь в итоге, скиллов прибавится.
>>1639808 (OP) Как сделать one, two, three?? >var promise = new Promise(function(resolve){setTimeout(function(){console.log("resolve one"); resolve("one")}, 1000);}); >promise.then(function(){return new Promise(function(resolve){setTimeout(function(){console.log("resolve two"); resolve("two");},1000);});}); >promise.then(function(){return new Promise(function(resolve){console.log("resolve three"); resolve("three")});})
>>1640456 >var promise = new Promise(function(resolve){setTimeout(function(){console.log("resolve one"); resolve("one")}, 1000);}) >.then(function(){return new Promise(function(resolve){setTimeout(function(){console.log("resolve two"); resolve("two");},1000);});}) >.then(function(){return new Promise(function(resolve){console.log("resolve three"); resolve("three")});}) -> >resolve one >resolve two >resolve three
У меня есть текст который хочется, чтобы можно было выделять. Но проблема в том, что я не могу это сделать из-за того, что его закрывает прозрачный блок спереди, у него есть только border который выполняет эффект границы. Ну и пиздец, идей нет
>>1640461 Тогда - так: >var promise1 = new Promise(function(resolve){setTimeout(function(){console.log("resolve one"); resolve("one")}, 1000);}) >var promise2 = promise1.then(function(){return new Promise(function(resolve){setTimeout(function(){console.log("resolve two"); resolve("two");},1000);});}) >var promise3 = promise2.then(function(){return new Promise(function(resolve){console.log("resolve three"); resolve("three")});}) -> >resolve one >resolve two >resolve three
Аноны, мне нужно последовательно, строчка за строчкой записать в файл нодой из цикла данные. т.е. вот так: foreach((item)=>{ fs.writeFile(item, ...); }) в таком случае пишет не по порядку, что логично. если что то типа такого сделать: foreach( async (item)=>{ await newPromise((resolve,reject)=>{ fs.writeFile(item, ..., (err)=>{ if(err){reject()} resolve()}); }
})
тоже не по порядку пишет, что в принципе логично, но не так явно. Цикл не ждет выполнения await в первой итерации, а запускает все итерации последовательно. А уж как await выполнятся - так и выполнятся.
Так как в моем случае последовательно записать в файл? Или только получить данные полностью, и одним действием записать в файл?
>>1640506 Я так понимаю - не можем. Это не поможет в соблюдении последовательного порядка записи. Promise.all просто дождется выполнения всех промисов. Но сами вызовы fs.writeFile() будут идти асинхронно.
анон, подскажи такой момент по jquery. как мне сделать так чтобы он всегда слушал страницу ? вот у меня есть страница с lazyload и нужно чтобы он на определенные блоки подбрасывал то что мне надо. если просто делаю (document).on(ready) то срабатывает только для первых блоков которые изначально подргружаюстся
Есть задача трансформировать в объекты let vasya = { name: "Вася", surname: "Пупкин", id: 1 }; let petya = { name: "Петя", surname: "Иванов", id: 2 }; let masha = { name: "Маша", surname: "Петрова", id: 3 };
let users = [ vasya, petya, masha ];
let usersMapped = users.map(user => ({ fullName: `${user.name} ${user.surname}`, id: user.id })); Объясните пожалуйста, почему выполнение функции users.map не будет работать без скобочек {} и ()
>>1640511 https://javascript.info/call-apply-decorators Тебе же надо получить результаты резолвов и потом что-то с ними сделать в определённом порядке? Храни тогда результаты в переменных, а потом пихай их в финальную функцию.
>>1640617 >>1640617 Потому что с таким же успехом, ты можешь передать объект - как параметр функции, в их цепочку, наподобие: >var add = x => y => x + y; console.log(add(2)(3)); //5 и куда ты присунешь этот объект - javascript'у не очевидно...
Аноны, в верстке абсолютно не смыслю, хочу реакт приложение дополить адаптивно под телефоны. Допустим, я определяю через window.innerWidth и window.innerHeight текущий размер дестктопного браузера и через пропсы определяю размер необходимых мне детей. Как я правильно понял, браузер телефонов не эквивалентен пиксель в пиксель и там происходит какой-то скейл. Допустим, у меня телефон 360x640, что покажет window.innerWidth и window.innerHeight для этих размеров. Вернет ли он мне 360х640 - борды самого приложения или какую-то другую величину?
Так, я поставил формик в свой рякт прожект и нпм матерится о прототайп полюшн от минимиста. Он сука в 579 зависимостях. Неужели это надо вилкой разгребать? Я прочитал, что нпм один хуй старые версии хранит в бекапе, чтобы зависимоти не ломать.
>>1639808 (OP) Я вам промисы принёс https://github.com/username1565/nanoboard-javascript-captcha/blob/master/index.html - за квартиру, за Январь... Чтоб каптчу локально ты - сам вводил, тупая тварь. https://username1565.github.io/nanoboard-javascript-captcha/index.html И не ддосил мой сервак, на вот этом имени: http://nboardn46ay6ycdi.onion/ чтоб нбордочка была - ещё неистребимее! Как же долго каптча-пак, я препечатывал, ебануться сколько букв, вручную обрабатывал... Это всё лишь для того, чтобы ты не лез ко мне, а локальненько каптчу ввёл, к своей же - простыне. А потом на сервера, все посты сможешь залить, JSON'ом, как всегда - хуле тут ещё мудрить?!! И хоть пачкой их там пость - JSON'чиком посты, там ведь даже API есть, для таких, спецом - как ты. Если нравится проект - "заходи на огонёк": http://76dqlkbo4ffj475k.onion/s/res/771.html Это лучше чем плевать - шмарклями на потолок. Стегу нам бы заюзать - в видеотрансляциях, так, отправим мочерню - на утилизацию.
>>1641319 Будешь громче орать, когда такие петухи как тот анон на криво/косо написанном барахле будут деньги поднимать. Пока ты на галере будешь гребсти.
>>1641425 В твой случай не вникал, но бывает такое: В письмо я вставляю однопиксельную картинку <img width="1" height="1" src="http://мойсайт.рф/спалился-уникальный-сыч" /> Если твой почтовый клиент картинку не заблочит, то твой браузер безоговорочно пошлёт к моему серверу запрос по этому адресу.
Анон, что делать если не могу даже самые элементарные задачки решить? По типу: leetcode.com/problems/merge-two-binary-trees/ Не могу придумать правильные логические условия и всё. Хоть убей..
>>1641668 Давай начнём с того, что сливать бинарные деревья - это не совсем элементарная задачка. Второе - вертеть деревья на вайтборде просят разве что в Яндексе и Гугле. Вернись к более простым вещам, почитай теорию по алгоритмам. И кстати, ты зачем задачки решаешь? Ну то есть для самооценки, наверное, хорошо, но ты же понимаешь, что с реальной работой это имеет не оч много общего?
>>1641726 Чтобы научиться писать код и закрепить прочтение Кантора, закрепить знания. Деревья - в жс они объекты, разве научиться всем фишкам с объектами это бесполезно?
>>1641730 >Чтобы научиться писать код Программисты пишут не просто код и не всегда решают алгоритмические задачки (фронты уж так точно), они воплощают хотелки бизнеса. Я не очень представляю себе таск на работе, где тебе пригодится бинарное дерево (опять же, если мы говорим про фронт). Хочешь упарываться в аглоритмы, тебе не в JS и не во фронтэнд. Лучше решай практические кейсы - сделать форму ввода для банковских карт, пагинацию, фильтрацию, объекты запихни в Редакс или Мобх. В общем, более приближено к практике, а не к теории. А Кантор не повредит, но не им единым.
>>1641753 Не надо дрочить на код ради кода. Рекурсия - интересная штука, но многие тимлиды, когда услышат про рекурсию на проде, отправят тебя быстро и далеко.
>>1641757 А что такого в рекурсии то? Ее недостатки я знаю, но смешно было бы думать что опытные люди будут прям шугаться при упоминании слова рекурсия.
Программач, объясни про замыкание. Я понимаю что вызов "count" будет увеличивать "counter" на единицу, и то что при каждом вызове будет создано новое лексическое окружение. Но каким образом при новом вызове счетчик продолжает расти? Почему переменная не берет значение "counter = 0"? Получается оно его сохраняет, но куда? В переменную "count", или в переменную функции "counter" и просто при каждом вызове значение перезаписывается? Если так то все равно где оно хранится?
>>1641304 Чем тебе var не угодил? Вообще-то, там во всех скриптах var: https://github.com/username1565/nanoboard/tree/master/scripts в том числе и в jquery-1.12.0.js И всё нормально работает, как, впрочем, и вторая ссылка из предыдущего поста, до которой ты, из-за невежественного отношения своего к стандартнейшему var - так и не дошёл.
>>1641319 >>window["promise"+(test+1)] = window["promise"+(test++)] >ору с кода Тут >>1640717 Мне понравилось то, что можно комментировать тесты! Охуенно же!
Вон, тест AddPow - закомментирован, потому что долго работает, но зато его можно просто расскомментировать и всё. И не надо промисы переименовывать, как тут: >>1640465
>>1641880 Изучаю Джаву кста с недельку, по решениям с SO тоже var всегда писал. Потом меня обоссали тут, начал const и let. И сука const дольше и сложней писать бля.
>>1641892 То есть, ты сначала повёлся на чей-то троллинг, затем, втупую - погнулся под пиздёж троллящего, а теперь сам решил так потроллить, и ещё охуел, и катишь бочку на каноничнейший - var?
Я вам, ещё раз, блядь, повторю - следующее: никто не будет менять, свои, проверенные временем броузеры, и даже целые операционные системы, для одной лишь поддержки, обратно-несовместимых директив let и const, если можно просто - написать var, а вместо стрелочных функций: function(variable){/var work_with_variable.../}
>>1641826 Там и читаю, параллельно гугля непонятные моменты. Вот один из них. Эту тему уже раз 10 перечитал, и не до конца понимаю, почему при новом вызове переменная растет.
Суп, анонимусы, столкнулся с проблемой. Есть произвольный текст вписываемый пользователем, и нужно чтобы символы по очередке поднимались в верхний регистр, а потом возвращались в нижний, через что это можно реализовать?
>>1641958 Кстати, поэтому и борда эта не пашет в старых браузерах. Потому что напихали этих let в sharkey.js... C var бы работало. Пикрелейтед. Вон, в строке 1159, в sharkey.js - вижу let: https://2ch.hk/makaba/templates/js/sharkey.js >Uncaught SyntaxError: Unexpected strict mode reserved word sharkey.js:1159
>>1639808 (OP) Дайте кто-нибудь годный плеер, чтобы на сайт повесить, и чтобы там можно было встраивать видео .mp4, воспроизводить это видео, и скопировать прямую ссылку на .mp4-файл этого видео и скачать это видео.
>>1641995 >Кстати, поэтому и борда эта не пашет в старых браузерах. Какие нахуй старые браузеры? Все релевантные браузеры чуть не каждый месяц обновляются, а если твой васянофорк так и не запилил поддержку стандарта пятилетней давности, то это его проблемы. Ну или твои, если ты буквально на некроговне сидишь.
>>1639808 (OP) Возможно ли как-то, при помощи WebStorage и LocalStorage - реализовать server-less WebRTC, между браузерами, без всяких STUN-серверов, и чтобы там видео чаты были, звонки, и главное - чтобы оно всё было - peer-to-peer???
>>1639808 (OP) Существуют ли какие-то IRC-клиенты, наподобие этого: https://client00.chat.mibbit.com/ но без сервера, и не для ноды, а для браузера, чтобы открыть в браузере, ввести relay-сервера и порт, и подключиться и чатиться там - анонимно и без регистрации. Есть такое??? Где???
>>1642296 Serverless не значит без серверов, лол. И тебе всё равно нужен кто-то, кто nat пробивать будет, просто так без сервера ты только большинство клиентов не соединишь, ибо почти у всех роутеров cone nat. А в чём проблема то? Если люди не за симметричным nat, то их спокойно тупо через stun гонять можно. Для этого можно хоть самый дешманский дроплет на digital ocean/vultr купить, трафик там весь будет - это tcp хэндшейк обоих пиров, который буквально 1 запрос на каждого.
Интересует самый оптимальный реверсивный метод кодирования, байтового массива в строку, и наоборот. Base64 - отпадает, потому что избыточность. Самое простое, что приходит в голову - это каким-то образом преобразовать массив в байт, в массив 7-ми битных значений, а потом преобразовать это в символы ASCII. Но, для этого, нужно обрабатывать каждый байт, извлекая биты. Есть чё-нибудь более быстрое, и главное - выдающее минимальную строку текста?
>>1642931 >Base64 - отпадает, потому что избыточность >Давайте сделаем Base128 Можешь свой массив интерпретировать как UTF32 строку, тогда символов будет мало, байтов конечно же останется столько же
>>1642931 Дык и интерпретируй свои байтики как строку, какое ещё кодирование? Или ты хочешь чтоб у строки художественная ценность и захватывающий сюжет появлялись?
>>1643153 Давай перепишем на Рякте! Какой реплейс? Ты собрался регулярками ХТМЛ парсить? Напиши функции, которые делают элементарные нужные трансформации к тексту ячейки, возвращают новый текст. Напиши функцию, которая будет выбирать нужную трансформацию. Напиши функцию, которая будет из ссылки на таблицу возращать список нужных ячеек. Напиши функцию, которая к списку ячее будет применять трансформации, заменять текст.
>>1642925 >Serverless не значит без серверов, лол. Это я уже понял, причём аж - после долгих двух суток гуглежа... >И тебе всё равно нужен кто-то, кто nat пробивать будет Stun-серверы это делают же. >просто так без сервера ты только большинство клиентов не соединишь Тут ты опечатался, что-ли? >ибо почти у всех роутеров cone nat. Но, почти у всех роутеров есть и UPnP. >А в чём проблема то? Проблема в том, что изначально, реквестировалась возможность бессерверного децентрализованного обмена инфой. >Если люди не за симметричным nat, то их спокойно тупо через stun гонять можно. Да, я видел STUN-серверы на GoLang и ещё чём-то там, на node.js. Но это же надо ноду ставить. >Для этого можно хоть самый дешманский дроплет на digital ocean/vultr купить, >трафик там весь будет - это tcp хэндшейк обоих пиров, который буквально 1 запрос на каждого. Сразу отпадает. Важено наличие открытого исходника, и главное - возможность поднять свой серв - самостоятельно, в LAN, чтобы всё работало без Интернета вообще. К тому же, речь шла о безсерверной сети - то есть о browser-to-browser p2p-сети. Такой сети, которая работала бы пока у кого-либо, открыта - хотя-бы одна вкладка в браузере. Я знаю, что это можно сделать через расширения к браузеру, или тупо впилить сервер, как в той же Opera - IIRC. Этот: https://stackoverflow.com/a/3283794 , говорит, что по-сути, они туда отдельный сервер сунули...
Также, я где-то слышал, что есть даже браузеры децентрализированные, через которые раздаю файлы в p2p-сетях µTorrent.
Думал я в эту сторону, гадал, и пришёл к WebSQL. Как оно работает, толком, так и не понял, но, думаю, можно было бы организовать децентрализованный обмен инфой, например, расшарив свой публичный ключ какой-нибудь, как в TOR'e - onion-домены работают, и чтобы по публичному ключу этому, можно было зайти и запросить что надо, из хранилища, отправив корректно-сформулированный запрос, и получив определённый блок инфы, данных, из базы WebSQL, причём откуда получив - никого ебать не должно, инфу должна бы раздавать децентрализированная сеть, раздавать её - отовсюду и везде, как-бы синхронизируя базу данных, сохраняющую целостность в разных сегментах сети, автоматизированно.
>>1643003 >Base64 - отпадает, потому что избыточность >Давайте сделаем Base128 Бейсы-пейсы - это не то. Оно же - нечитабельное нихуя, блядь. >Можешь свой массив интерпретировать как UTF32 строку, тогда символов будет мало, байтов конечно же останется столько же Надо чтоб читалось. >Дык и интерпретируй свои байтики как строку, какое ещё кодирование? Ну а в какой кодировке-то строка эта будет? Очевидно, что надо распознать как-то кодировку данных в байтовом массиве, а потом уже закодировать в строку, корректно, так чтобы не было там никаких "заменяющих символов", портящих данные. Ну и конечно же, при успешном распознании кодировки данных, и кодировании их в строку, строка эта должна бы так же успешно, и назад, из строки - в байты декодироваться...
Вообще, изначально, у меня задача состоит такая. Вот есть переменная, скажем. И она может быть как массивом байт, так и строкой. Если это байты - то надо подать её на вход одной функции, которая обрабатывает сырые байты загружаемых файлов. Ну там, в arraybuffer их конвертирует, и дальше, по коду... Если же это строка - то надо подать её на вход другой абсолютно функции, которая проинтерпретирует это как строку. И задача здесь, состоит в том, чтобы закодировать байты так, чтобы читабельный текст оставался текстом, а не каким-то видоизменённым бейсом, который при попытке декодирования в строку, внезапно - может дать байты или хуету неведомую, с заменяющим символом, строкой не являющуюся и обратно во входные байты не преобразовывающуюся...
>>1644234 Какие же кони в вакууме Даже кекнул, когда увидел, из какой это книге Пару лет назад пытался читать вторую редакцию но выдиржал от силу треть, это просто эталон бесполезной отсебятины
>>1644234 >>1644253 Мне кажется, там надмозгно написано реализовать в классе Символ.итератор самому, что ты и сделал. Решение не проверял, но выглядит похоже на правду. Доебусь до имён. Антоним для add это remove: https://www.thesaurus.com/browse/add Если у тебя коллекция, лучше её называть элементом во множественном числе. Тогда вместо group.group получится group.items
Как не изобретать велосипед? Сделал ручками раз сервер выдающий красиво из sql, сделал два. Больше не хочу, как вообще называется сборка сайта по кускам. Хочу чтоб оно само мне результаты запроса строило в красивые таблички с сортировкой и фильтрацией и графики, чтоб аккаунты какие-нибудь были реализованы, всплывающие окошки и уведомления итд - вызывай не хочу, чтоб с css в конце концов не ебаться а взять какую-то тему.
>>1644486 > maintainer of the popular core-js library > it gets downloaded more than 26 million times every week via the npm registry, and is widely used by major companies including Apple > г.Барнаул, Алтайский край
Что за пиздос происходит? Не одной достаточно контрастной светлой темы ни у vscode ни у webstorm. Всех пограммистов граф Дракула покусал и они только по ночам работают? Реально горит жопа от этого.
>>1644506 Тёмные темы для глаз легче - сетчатку не нагружают. Без разницы днём или ночью. Со светлой темой ты фактически часами на яркую лампочку пялишься, что нифига не полезно для глаз.
Контрастные темы вообще зло - потом полосы в глазах остаются. Только мягкие плавные переходы.
>>1644515 Ну ладно там всякие байтоебы, но вы же фронтенды делаете. Постоянно переключаетесть между черной иде и белым сайтом? Глазки не бобо после этого?
css in js или css modules ? Писать семантические классы по 1-2 на реакто-компонент или атомарную хуйню вроде padding10, paddingX15 и делать клепать из из них семантические компоненты вроде Footer, Message, Container?
Аноны, вопрос по реакту. Есть пикрелейтед. Я хочу, чтобы при запуске функции ресайза, сразу возвращался другой компонент (например <Loading />) и когда функция завершалась, то вот только тогда происходил бы нормальный рендер. Я это могу сделать через жопу, вынести let , менять let внутри useEffect и затем внутри самой функции возвращать одну компоненту или другую. Но по мне так это выглядит убого или норм?
Скажите, как вкатиться в ваш стан? Сейчас работаю сеошником/лидогенератором/маркетологом/эникейщиком в одной конторе, фиксил разные проблемы на сайте, правил код, вёрстку, могу сверстать лпшку простенькую. Сейчас на node js пилю различных ботов через puppeteer.
Хочется действительно освоить профу. Скажите, могу ли я в дс2 рассчитывать с такими знаниями хотя бы на штуку баксов или же мне ещё что-то нужно подтягивать до этой величины? Также посоветуйте пет проектов, которые в глазах работодателей будут хорошо смотреться.
Котоны, пишут расширение для хромого и внезапно понадобилось выполнить некоторый код в контексте страницы. Есть код инжекта: let s = document.createElement("script"); s.textContent = code; (document.head||document.documentElement).appendChild(s);
И тут у меня возник вопрос, а сам сайт такую ебалу может отследить? Ну подписаться там на изменения document.head или ещё чего? Я что-то ничего внятного не нашёл, на ум приходит разве что периодически отслеживать имена всяких глобальных переменных которые инжектятся.
Здравсвуйте. Прошу не гнать меня ссаными тряпками, т.к. очередной нуфаг. Кто-то из местных анонов знает о потребности js в гейропке? я умею в гугол, но там все слишком красочно. Будто бы, как горячих пирожкие разбирают, как фронтендеров, так и бэк. ЕДу туда по офферу, но совсем не погромист - скорее пишу ТЗ и прочую залупень, но уже давно хотел перекатиться.
>>1644802 Джуниор сегмент полностью захвачен демпенгующими индусами хохлами и прочими белорусами, если ты перекатываешься в тир1 европу - смотри "инкубаторы" и курсы на месте Если ты катишься в какую-нибудь Польшу, Литву, Латвию, Эстонию и вообще нихуя не знаешь про программирование - перекат (в программисты) того не стоит
>>1644802 Могу предположить что сейчас рынок джунов стагнирует, и время хайпа уходит. Времена когда брали только за то что на html умеешь программировать прошли, как мне кажется. На данный момент порог входа значительно вырос. Как пример два тестовых которые мне давали: 1. nodejs/express + react - микро блог(авторизация/регистрация и все такое) с добавлением статей с картинками. Морда реакт - бекенд нода/sql. Можно было использовать фреймворки и т.д. 2. Тоже самое в принципе, но только на чистом пхп, без фреймворков. И я в сущности считаю что это хорошо. Рынок замрет на оптимуме профессионализма. Совсем нубы отсеются, а так же исчезнет мотивация "да в ойти за нихуя не делания 300к плотют", что опять же хорошо для тех кто люит, как это не странно звучит, это ебаное программирование.
И в сущности весь этот маня хйап - только вокруг JS, и даже не JS а фронт-библиотек. Чет я не вижу очередей вкатывальщиков в С++ или в дата саенс. Потому что там блядь сложно, и долго, и любить наворачивать это говно полной ложкой нужно.
Есть тут аноны, которые деплоят проекты с гитхаба через zeit.co? Столкнулся со след. проблемой: когда пытаюсь сделать деплой с гитхаба, то ловлю ошибку The repository either does not exist or is not publicly accessible. Ловлю ошибку на всех проектах, хотя они все открытые.
Бля! Понадобилось мне, значит, заебенить MPEG-DASH. Как настоящий профессионал, естественно, захотел ознакомиться с текстом стандарта и что же я нахожу? Только предложение купить за ~200 баксов! https://www.iso.org/standard/79329.html Чё за нах? Может, и W3C начнёт продавать свои спецификации?
Пытаюсь понять работу с google drive api. Не понимаю суть этой хуйни: const {client_secret, client_id, redirect_uris} = credentials.installed; const oAuth2Client = new google.auth.OAuth2(client_id, client_secret, redirect_uris[0]);
Тут credentials - это json объект со структурой: {"web": { "client_id":"......", "project_id":"......", "auth_uri":".......", "token_uri":".......", "auth_provider_x509_cert_url":"......", "client_secret":"......", "javascript_origins":["......"] }}
Почему в примере какой-то installed? Что это? Собственно, компилятор срет ошибкой >TypeError: Cannot destructure property `client_secret` of 'undefined' or 'null'.
>>1644867 Добавлю, если логически можно предположить, что client_secret и client_id должны соответствовать одноименным переменным, то что делать redirect_uris вообще без понятия. К тому же это еще и массив должен быть.
Аноны, как можно фиксить mixed content error? Тяну данные для таблицы с filltext API. Когда держу npm сервак, всё нормально, но стоит запустить приложение по нормальному, так браузеры сразу жалуются на mixed content error. Замена http на https в запросе не помогает.
>>1644828 >лол А что ты лолкаоешь, маня? для практикующего программиста это естественно не сложно. Но для вкатывальщака, который вчера научился цикл перебирать это сложно, и очень.
>>1644881 Не, понятно, что можно воспользоваться готовыми инструментами для фрагментирования видео разного качества с генерацией mpd xml-ей, а на фронте воспользоваться готовыми плеерами. Но я бы хотел на клиенте всё-таки вручную в несколько потоков выкачивать с помощью Media Source Extensions куски видео в зависимости от пропускной способности и класть в кэш и иметь над этим полный контроль.
Так вот, как показывает практика, хорошее знание стандартов помогает сразу избежать многих граблей.
>>1644828 Серверная нода объективно ощутимо сложнее пхп, к примеру. Без маня фреймворка типа экспресс - сложность в запиливании чего то на ноде очень своего резко возрастает. Асинхронность и низкоуровневость нормально так в голову новичка оттрахает. ну а АПИ для реакта на експресс запилить дохуя ума конечно не требуется. На пхп же - роутер навелосипедил, сервак настроил- и вперед, в сущности нихуя не нужно. На голом пхп хоть свой фейсбук запиливай. Ты хоть пробовал на голой ноде что то более-менее сложное пилить?
>>1644992 Господи, откуда вы такие тупорылые беретесь, и нахуя блядь я это пишу и это мой самый большой косяк Я могу только предположить , на основании чего ты ответил. Но в сущности это не важно. Потому что адекватный спец понял бы о чем я, даже если бы я и выразился некорректно. Это в частности и отличает спеца от ишака. Для дебилов - "низкоуровневость" - относительно вэб-приложений. В контексте вэб-сервера нода менее дружелюбна, и в "низкоуровневость" тебя ткнет носом быстрее. Понял ты это или нет - не важно. Тебе же хотелось тупо выебнуться. Ведь ты из тех, кто может на еще более ""низкоуровневом " относительно запилить хеловор. Куда уж тупым js бекендерам до тебя, ага. Так вот хуй соси, пидор. На плюсах я и сам могу либу запилить . Но с апломбом об этом не кукарекаю.
Фротендеры-жабоскриперы, напомните пожалуйста, как обновлять несколько страниц с одного домена? Допустим, пользователь поставил где-то на одной странице галку, а эта глака без перезагрузки должна подействовать сразу на все открытые страницы.
>>1644886 Нахуя ему вкатываться если он ничего не умеет, я целый год учил технологии чтобы на таких тестовых не обсираться, да и на вещах гораздо сложнее.
Пездец, анон, помоги, нихуя не могу понять почему сраная иконка не устанавливается на сайт. Ебусь уже второй день, пробовал картинки и в директории, и в папку images, и ссылкой, как указано на пике, ничего не получается. Кэш в хроме чистил, в других браузерах тоже самое. Код на скриншоте и ссылка на код: https://jsbin.com/hoponepuce/edit?html,output ЧЯДНТ?????
Хуйню порешь. Если не пишешь на машинных кодах - то значит вообще не имеешь права "низкоуровневость" произносить? Плюсы то ведь тоже по сути "высокоуровневый" язык.
Жсач, почему бы не применить концепцию работы CSS на всю логику сайта в принципе, а не только для стилей? Представить интерфейс в виде правил: my-el .hidden { console.log('This element is hidden!') } tab:click { this.siblings().hide() }
Почему такое еще не сделали? JQuery близок, но работает "здесь и сейчас", т.е он далек от описательных правил, подобным CSS.
>>1644769 Бля эти приложения на жс как бабы ученые Попробуй назови хотя бы три: кюри, хоппер, эээ кюри? Вот и тут только вскод более лимение, остальное лагованное говно Телега вообще на qt
>>1645437 >>Только как задачку на понимание и для надрачивания скиллов программирования. Именно для этого Можешь скинуть линк какой нибудь гайд/алгоритм?
>>1645412 Я понимаю что колбеки. Как написать то кастомный промис?
Есть сторонний сайт на реакте. В нем форма - textarea.
В этой форме нужно изменить уже введеный текст скриптом.
Я делаю форма.value = форма.value.replace() , но мне выдается предупреждение, что изменения не внесены. И только если я еще что-то вручную меняю, он видит изменения, сделанные replace-ом.
Я так понимаю, это из-за контролируемого состояния формы. Как это обойти, чтобы мои изменения через replace не требовали дополнительных изменений руками?
Мир вашему дому. Появился вопрос касаемо параметров события. Допустим есть картинка <img class='displayed-img' src='images/..'>. Из этой картинки хочу изьят параметры class и src. Есть обработчик события img.onclick = function (e){ e.target.src // здесь возвращает путь 'images/..' e.target.getAttribute('src') // возвращает путь e.target.getAttribute('class') // возвращает 'displayed-img' e.target.class // возвраащет undefined ????? }
Почему в конце он не видит значение? Спасибо за ответ.
Домашку задали визуализировать пирамидальную сортировку (пошагово по кнопке), так как алгоритм рекурсивный, то он может сделать несколько действий в вайле (проще говоря есть вершины дерева, которые рекурсивно опускаются вниз, если они меньше потомков). (пик1) (анимация там)
И вот проблема в чем, в этом вайле у меня показ состояния и собственно сама перестановка (пик2) И дело в том, что я вообще не могу сделать так, чтобы он условно выполнялся построчно, то есть показ изменений>изменение>продолжение цикла
Когда он пробегает разок всего, все ок, но когда самый верхний элемент просеивается до низа через все вершины (а это 3 итерации), то все ломается, а именно:
1) если делаю таймаут показа, то итерации проходят, и получается, что пока был таймаут он показывает мне лишь последнюю итерацию 2) если делаю таймаут на изменение массива (swap), то почему-то массив не изменяется, а если же делаю таймаут на весь IF, то страничка виснет.
Помогите, я пришел из построчных языков, ниче не понимаю тут
Какой же охуенный NEXT Бросайте все своё говно и перекатывайтесь Еще и для неосиляторов из коробки автоподстройщик вебпака, бабеля, опциального автонатягивающегося тайпскрипта, SSR ебать, статик бандлы
>>1639808 (OP) Я ниразу не погромист но кажется ваш тред то что мне надо. Можно ли с помощью вашей штуки сравнить таблицу на сайте и таблицу из файла на компе и отличающиеся строки выделить на сайте? Если скажете что можно пойду учить или искать готовый вариант.
>>1645812 > Почитай основные принципы работы бека и фронта, лол Это все понятно. Но зачем это среднему клиентскому приложению на Carlo/Electron? Нужно разве что всяким тырпрайз-гигантам.
>>1645797 За бесплатно настолько невнятное говнище тут никто разбирать не будет
По скринам непонятно, как ты там натянул рекурсивный алгоритм на циклы, но скорее всего ты обосрался именно с этим Какие-то всратые процедурки, копипаст текстовых инжектов, охуеть на дворе 2020
>Домашку задали Это полный пиздец, лучше пройди какой-нибудь бесплатный курс в интернетах
>>1645843 >>1644850 Консоль скорее всего посих совместимая и \n обрабатывает православно, шиндусятский говноблокнот может хотеть костыльные шиндусятские \r\n или ^M Можешь еще попробовать писать с указанными в файлрайте опциями кодировки или утф8 или шиндош1251, но лучше не еби мозг и перекатись
>>1645847 Хотя бы нормально выложи своё говно Ты мог тупо не смочь в скопы и написать setTimeout(swap(hui), 100) вместо setTimeout(() => swap(hui),100)
>>1645850 можем в тг? просто глянуть навскид, может я и правда обосрался где-то везде, но не здесь (я стесняюсь выкладывать что-то, плюс это как никак в учагу полетит) @zcxzzcx
>>1645841 Как это нету? fruits = [apple="apple", mango="mango"] Если есть желание, можно приделать синтаксический сахар(потребует eval). enum = (...args) => eval(`[${args.map(e=>`${e} = "${e}"`).john(',')}]`)
> fruit = enum("apple","mango") >> ["apple","mango"] > apple >> "apple" Но это все хуйня, накатывай Babel, хотя с транспилятором каждый сможет, а ты попробуй без транспилятора
>>1645887 >>1645870 >>1645841 А нахуя в жиес вообще enum? Нехуй плодить типы, есть универсальные компаунды - {} и [] словарь и список соответственно. Большего не нужно. В идеальном языке есть только один базовый, универсальный тип.
>>1645853 Отмена, я победил эту хуйню делая копию массива штукой slice(), чтобы передавать временное состояние массива, спасибо, ебать счастлив что накостылял, прям очень
>>1645884 Найс, теперь рабочий процесс только усложнится лишним шагом сборки. Это еще считая, что теперь проект надо будет делить на сорс и бандл. А благодаря зависимостям мы имеем жирные банды на 2Мб, а то и больше. Не пора ли перестать делать говнокод?
>>1645888 >Компиляция в чисто CS смысле подразумевает перевод сорца в байткод. В CS нет чистых определений TS добавляет новый уровень абстракций, поэтому его можно назвать и компелятором, вместо транспилятора
Мой первый проект. Я назвал его Шинобудильник. Сначала на страничке онли шинобу, потом я клацаю на неё и выходит форма ввода времени. Я ввожу нужное время и по его истечению выводится ЗВУК КАК ШИНОБУ ЕСТ ПОНЧИКИ. Как вам, анончики? Кажись меня ждёт большое будущее, так что бойтесь нового конкурента на IT рынке.
Пиздос, как же не хочется завтра на работу работать. Хочется пилить свои ламповые проекты отключившись от всего остального мира. Зачем я стал погромистом?
Почему не получается вернуть данные через колбэк из func3? Аргумент err определяется правильно (null), а res не правильно (undefined). При этом, если вызвать console.log(res) перед 20 строкой, то там все нормально.
сука как же я зааебался. в разметке висит button type="button" onclick="addDiscount();" и затем под самой разметкой расписана эта функция addDiscount(). но почему жс его не видит и когда я кликую на кнопку то получаю говно в лицо в виде Uncaught ReferenceError: addDiscount is not defined ?
Сап, как правильнее взаимодействовать со свойствами внутри класса (конструктора).
var Animal = fucntion (firstName){ this.firstName = firstName; // Записываю в свойство имя console.log(this.firstName); // так правильнее манипулировать свойством console.log(firstName); // или так? }
Аноны, разумно ли использовать useState с Редаксом. Пикрелейтед реализовал, то что хотел : когда меняется размер окна, то запускается одна callback функция и автоматически удаляется event resize, которая с задержкой в 1 секунду определяет размер окна и меняет стор ( при определенных значениях, перестраиваются дети). Во времени изменения окна, мы видим заглушку.
Ананасы, кто-нибудь юзал ChartJS? Нужно в Pie диаграмме выделить определённый сектор (выделить в смысле программно, когда юзер в таблице строку выбирает) В гугле забанили, нихуя не гуглится
Аноны, можно ли используя какой-то дебагер Реакта пропускать Реактовые функции (т.е. меня интересует только мой контекст, я не хочу опускаться вглубь реактового скелета)
>>1646779 Очевидно или не очевидно я имел ввиду без async/await promise.all - это типа сахар? Или гдето глубже все зарыто.
Я выше спрашивал про линк на та как промисы реализованы , я не о их использовании, а о том как оин написаны. И можно ли на JS реализорвать свой велосипедный промис? Вроде как бабел для версий JS еще без промисов реализовывать этот алгоритм. Кстати нужно глянуть, пришло же на ум.
ХТМЛяч, хочу хоткеи на не свой сайт. Как бы приделать accesskey в получаемую страницу? Видел, что кто-то умудрялся менять css на не своём сайте, Куклоскрипт вон есть. Может плагин какой существует?
Ковырял dom и заметил, что в разных способах обработки событий названия обработчиков различаются, в частности click и onclick. Что-то я совсем с этим запутслся. На мдн событие называется click, а onclick там нет, хотя в примерах встречается. Когда где что ставится?
>>1647096 Ебать ты даун. Я хоть и залётный, но это очевидно, что лефтпик автосгенерированная хуита и что руками можно написать на js так же красиво как и на пике справа
>>1639808 (OP) Блядь, как же заебали эти окна на сайтах, про то, что используются куки. Зашёл сюда: https://unicode-table.com/ru/ Чуток пролистал... Вылаааазит хуйня: >Мы используем cookie, чтобы сделать сайт максимально удобным для вас. Подробнее (ссылка). "Принять" (кнопка) И закрыть эту залупу нельзя, и отменить никак. Только принять, блядь. А что если я не хочу ихние куки ебучие принимать? Как быть? Начать дудосить ихний серв, штоле?
Хей, вротендеры. Угадайте, какая джава макака оказалась на морозе из-за короны-чан? Да, да, я. Делать нехуй, так что решил пока карантин идет вкатиться к вам. Посоветуйте какую-ту обстоятельную книжку или ресурс по JS. Желательно, описывающие внутренности и принципы работы языка.
>>1647812 Ты похоже не очень понял. Твоя ссылка - просто гайд по использованию промиса. Естественно я использую и promise, и async/await. Я на ноде люблю парсеры писать.
Мне стало интересно как в принципе устроен Promise. Описаны его структуры в V8 на С, или это все таки JS сахар над колбеками. И можно навелосипедить свой маня-промис.
>>1647829 p.s. Я сейчас классический пример нахуй не нужных вопросов. Не делайте так но тоогда тред будет жить по 10000 лет. Пять секунд гуглежа дали кучу ссылок на статьи о написани своих кастомных промисов
Поясните тупиздню: как сделать интерфейс для апи? Есть апи туду-листа, обычный CRUD.
Непонятно вот что: Как делать отправку форм?
При классическом способе, когда юзер жамкает на кнопку, то браузер отправляет запрос на ее action и затем переходит по этому адресу.
А просто взять и перейти на роут апи нельзя! Я знаю, как отправить запрос на JS. Мне непонятно, как можно вообще иметь разные URL'ы для приложения, при этом сам сервер их нихуя не контролирует.
Вопрос из классов реакта (как это было раньше?). Допустим у меня есть App.jsx и тут хранился стэйт фильма ( допустим массив фильмов, полученное через апи, и массив избранных фильмов, которые пользователи сами выбирают). Предположим что sql у нас нет и нас попросили сделать весь в стор в js, хотя очевидно что так не делают. Допустим я хочу, чтобы добавить в избранное можно было сразу из 3 мест (и так же убрать) : на самой странице полученных фильмов, в конкретном фильме и например в поиске по всем фильмам. Получается я вынужден прокидывать сразу 2 функции (удаление и добавление в избранное) всем 3 конечным детям через пропсы, потому что кнопка будет в самом конце. И это считалось норм в плане читаемости кода? Типо,если там 20 компонент, то я был бы вынужден посмотреть каждую снизу вверх, пока не дошел бы до нужного стэйта. Или я что-то упустил? И если это так, то представьте огромное приложение и просто десятки кнопок и прокидывание функций через сотню компонент.
Помогите, сделяль калькулятор, все работает, но вышел такой говнокод, что хочется помыться. https://jsfiddle.net/yxb7mfer/
При каждом нажатии на любую кнопку приходится делать проверки. Все бы ничего, но функция с проверками выходит очень громоздкой и пахнет говной. Че делать, как структурировать код с обработкой пограничных случаев?
>>1648141 1. Он у тебя не работает. 2. Этот говнокод нужно переписывать полность. 3. За eval можешь пару раз об стену головой удариться и забыть об его использовании.
Используй switch case конструкцию и парситься строка должна вручную, без всяких eval.
Выбираю направление для вкатывания, плиз, помогите определиться: 1) Если бы вы сейчас вкатывались в разработку с нуля, во что бы вкатывались? 2) Как я понимаю - дизайнеры рисуют ui, задача фронтендера - воплотить это в коде. Можно ли считать, что фронтендер подчиняется дизайнеру? Если так, то есть ли вообще тогда место творчеству? 3) Нужно ли знать дизайн и разбираться в ui/ux? 4) Часто ли фронты работают с фотошопом? 5) Легко ли иммигрировать относительно других направлений разработки? Заранее спасибо!
1. Зачем нужны объекты если по сути классы это те же объекты но с более широким функционалом?
2. Смотрю видеоурок как человек делает тетрис и у меня голова взрывается от этих многомерных массивов и вложенных циклов с кучей сдвигов как на пикрелейтед, все путается в голове в итоге ничего не понимаю. Я тупой и не скрываю это, интересует вопрос как это пофиксить? Я так понимаю это плохое пространственное мышление?
>>1648328 >1. Зачем нужны объекты если по сути классы это те же объекты но с более широким функционалом? Класс это чертёж объекта. Например есть Анон как собирательный образ и есть конкретный анон - ты. Образ это вроде как класс, а ты это вроде как объект класса Анон. Конкретная реализация.
>2. Смотрю видеоурок как человек делает тетрис и у меня голова взрывается от этих многомерных массивов и вложенных циклов с кучей сдвигов Человек хуйню делает. Не смотри таких. В геймдеве тоже есть паттерны и тоже надо делать объекты. А твой человек пишет дикую лапшу. Это всё проще и нагляднее можно писать, если с умом. Посмотри другие видеоуроки лучше.
>>1648347 >конкретно в джаваскрипте например { a: 1, b: 2 } это объект Это коллекция по сути.
>не находишь что класс с конструктором и всем прочим для него излишен? А если мне надо с пару десятков таких объектов с разными значениями? И не двумя, а с десятком? Вручную набивать, как мартышка? В играх такое сплошь и рядом - создаётся сотня объектов с разными переменными внутри, а потом ещё и обрабатываются всем скопом каждый цикл.
>>1648358 >В жаваскрипте нет коллекций Коллекция в программировании — программный объект, содержащий в себе, тем или иным образом, набор значений одного или различных типов, и позволяющий обращаться к этим значениям.
Ты не можешь записать туда данные и достать их оттуда?
>>1642931 >Интересует самый оптимальный реверсивный метод кодирования, >байтового массива в строку, и наоборот. >Base64 - отпадает, потому что избыточность. >Самое простое, что приходит в голову - это каким-то образом преобразовать массив в байт, >в массив 7-ми битных значений, а потом преобразовать это в символы ASCII. >Но, для этого, нужно обрабатывать каждый байт, извлекая биты. >>1643003 >Base64 - отпадает, потому что избыточность >Давайте сделаем Base128 Заебись, идея! Посоны, я вам принёс пару рубасов: https://jsfiddle.net/bxLj7h61/
>>1648639 Нет. В этом проблема больших проектов где дохуя кода, приходится писать велосипеды типа хеш-суммы для названий переменных, может видел let user[AE7B3J...] - вот это оно и есть.
надеюсь на вашу помощь, аноны. есть такой вот скрипт для валидации формы https://ideone.com/vSimW5 почему то когда он срабатывает т.е. выбрасывает мне алерты, то он дублируется. схуяли так если я форму посылаю только один раз?
Аноны, объясните плиз, почему здесь будет показывать актуальное состояние, а не состояние в момент вызова handleClick. Он ведь должен захватить окружение в момент вызова, но этого не происходит. Объяснения "However, this is, and has always been, mutable" я не понимаю. Почему handleClick не сохраняет текущее состояние this?
Сел написать валидацию для жсонов, приходящих на сервер. Посмотрел как это делают нормальные люди. А там миллиарды строчек. Ну и как я все это должен был придумать? Пиздец.
>>1648929 Ну вот ссылку на this ты захватил, а реакт тем временем сделал cmpInst.props = newProps, теперь ты читаешь из старой ссылки на объект новые значения полей объекта
>>1649097 Читаешь доки про декораторы, там написано "можно делать валидацию". Начинаешь делать валидацию объектов, понимаешь что тебе объекты надо в инстансы классов маппить. Вспоминаешь про декораторы, начинаешь делать автомаппер. Через пару месяцев миллиард строк готов.
анонче, подскажи такой момент. работает с jquery и делаю селектор по input. он мне возвращает n.fn.init(5) и дальше затем уже идут начиная с нуля мои инпуты. так вот. как мне к этим инпутам обратиться и добраться до них?
На курсе Maximilian Schwarzmüller по JS сделали скидку, думаю записаться. Кто нибудь проходил? Это все можно на рутрекере скачать, но через Udemy можно сдавать задания. Ну и сертификат можно получить. Расскажите, удобно ли там процесс обучения происходит?
>>1649266 Пох что бы выберешь, в этих курсах главное практика и изготовление проекта, а теорию один хуй будешь учить на ютубе от всяких Лущенко, Мининов и Димычей, так как они объясняют как для даунов. Я таких курсов проходил 3 штуки, но всё равно 80% информации черпал из бесплатных источников.
>>1649280 Да это понятно, просто курс дисциплинирует, все эти дедлайны, задания. Ну и потраченные деньги, хоть и небольшие, тоже стимулируют что-то делать.
Суп, пилил игру на жс по книге Беляева С.А. "Разработка игр на языке javascript". Собственно, переписав код я столкнулся с тем, что он нихуя не работает. Ошибка на скрине. Так и должно быть и я читаю мусор или я чего то не понял? Код прилагаю https://pastebin.com/UQfMuECg
Аноны, есть какой нибудь учебник/статья который структурирует следующую тему: загрузка файлов с клиента на сервер - кодировки, MIME -типы. И так же отправка клиенту файла на скачивание 'Content-Disposition', 'attachment'. Я в этих вещах очень не уверен. А структурированой инфы нет. Буду благодарен ели просто дадите последовательность того, что требуется изучить.
>>1649310 В ошибке сказано, что проблемы с аргументом для drawImage, это первый аргумент, то что ты собираешься отрисовать в канвасе, когда вызываешь context.drawImage( аргумент, 0,0 ).
>>1649356 Ну, как я понял, вся проблема в том, что drawImage() не в onload, собственно писал тестовый объект, выкинув весь мусор из кода, и ловил ту же самую ошибку. Собственно, написал свою реализацию с drawImage() в onload и все работает. Собственно, просто хотелось узнать, это я какие то подводные не учел, или автор мне в штаны насрал.
>>1649354 Хм, какого автора можешь посоветовать? Помимо вышеуказанной книги, прочитал на метаните раздел по жс, полагал, что если не учитывать фреймворки, то этого достаточно для основы. Книгу начал читать, в основном, для практики языка
Стоит ли экономить на переменных, описывая все методы по ходу внутри выражений или лучше все декларировать, описывать, присваивать переменным и уже с ними работать?
Аноны, пытаюсь подробно разобраться с изменением стэйта (хуки и Редакс), хочу реально увидеть скорость рендера и ререндера и проанализировать, что конкретно изменилось в доме и что заново пересчитывается в компонентах. Подскажите есть ли такой глубокий дебажер или что-то близкое? Однако, я не хочу видеть родные действия скелета самого реакта или как-то их полностью пропускать.
блять это пиздец. кто нахуй проектировал этот ебучий jquery? почему сука в самом коде движка он на любой сабмит реагирует? у меня из за этой ебучий хуйни скрипт дважды вызывается. хуй знает че делать. из за того что вшит в сам jquery код то даже unbind() не помогает. аноны, если кому то предложат работу на jquery - НИКОГДА, СЛЫШИТЕ, НИКОГДА НАХУЙ НЕ СОГЛАШАЙТЕСЬ НА НЕЕ ЕСЛИ вам не будут платить за это пол ляма рублей в день. такое говно пиздец я ебал >>1648836 - кун
>>1648235 >Открыл код, увидел eval и var, закрыл код. >>1648698 >Погуглил про var и eval, понял что их не стоит юзать.
Как же вы заколебали, со своим хейтом стандартнейшего var. Что такого невъебенного в этих ваших let и const? Блочная видимость?? А так, чо, нельзя: >if (true) { > var test = true; // используем var вместо let > test = undefined; >} >alert(test);
>>1649564 >>1649564 Зато это ОБРАТНО-СОВМЕСТИМЫЙ костыль, который ещё и очевидно указывает на необходимость блочной видимости, при чтении кода, и может применяться там где она нужна, а где не нужна - не применяться. В отличие этих вот дериктив, обратной несовместимостью не обладающих, ложащих этот же двач - в стародревних браузерах, и которые привыкли пхать туда, где блочная видимость нафиг не нужна - чисто по привычке, и отчасти - из-за дебильного хейта няшного var.
>>1649553 Когда ты читаешь чужой код и видишь явно const, то ты 100 проц понимаешь, что вот здесь она объявлена и ссылка на значение не меняется. Если ты видишь let, то ты даешь понять, что где-то ссылка может измениться и это необходимо. В JS есть только const и иногда let, поэтому когда я вижу залупу на let мне хочется смачно харкнуть в лицо децику.
То что ты пишешь больше кода сам и запоминать твои причуды никто не будет, я даже разговаривать не хочу. Ну и вишинка на торте, твоя переменная не ушла из памяти + лишняя операция присваивания.
>>1649584 >хочется смачно харкнуть В похлёбку свою из помоев харкни, быдло тупое.
>вишинка на торте, твоя переменная не ушла из памяти Бле... Те чё рельно, впадлу написать так: > delete test; var test = undefined;
>>1649553 >let >Блочная видимость?? Да там же, блядь, даже блочной видимости нет, как таковой, лол. >{ let x = 1; console.log(x); } console.log(x); Нахуй он вообще нужен, этот let? Оставьте var в следующей версии ES, чтобы все охуели.
>>1649595 >{ let x = 1; console.log(x); } console.log(x); >Да там же, блядь, даже блочной видимости нет, как таковой, лол. Ааа, не, она есть, также как и с const. Я до этого, просто глобально объявил x в консоли. Впрочем и так блочная видимость пашет с var: >{ var x = 1; console.log(x); delete x; var x = undefined; } console.log(x);
>>1649595 >Бле... Те чё рельно, впадлу написать так:
В своих соло проектах можешь писать как хочешь, мне поебать, если рассчитываешь на ко-оп, то можешь с такими запросами сразу навернуть.
Delete работает со свойствами объектов. И еще раз повторяю, то что ты присвоил undefined !== удаление из памяти. В памяти по прежнему будет место для этой переменной.
На 8 строчку. На пробелы, отступы похуй. Где 'путь' ковычки должны остаться, когда вставлять будешь. play('asf/asdf') >там все написано Не всё там написано, хуйня ты мелкобуквенная. Ты здесь для того, чтоб анону доставлять, а не свои вопросики обкашливать. Так что давай прохладную, что ты там в Дискорде собрался делать.
>>1649734 обычного бота в дс пытаюсь сделать, но я тупая хуйня ничего не понимающая. Просто беру уже существующий код и вставляю его, а потом сижу как ебливый свинтус нихуя не понимаю, а почему же нихуя не работает
Привет, бандиты. А что в js нельзя сделать переменную name что бы возвращала number? Ковыряюсь, пытаюсь понять как все работает. Сделал для теста разные переменные перемножаю и т. п. Сделал левую переменную назвал name а она всегда стрин. Что за дела? Так и должно быть?
Выделил хук для Реакта в отдельный пакет, который намерен опубликовать. Проект, в котором я его использую и сам хук написаны на JS, всё хорошо задокументировано в JSDoc — разумеется, интеллисенс VSCode перестал работать, поэтому я добавил в пакет tsconfig.json и автоматически сгенерировал файлы деклараций через Тайпскрипт. Затем добавил в package.json >"types": "./index.d.ts", Но интеллисенс так и не заработал, совсем, ни комментарии не подхватывает, ни типы. Где может быть очевидная ошибка? Нужно ли проекте, который импортирует пакет что-то тайпскриптовое настраивать?
>>1649251 Брал его курс по ангуляр Что могу сказать, самый легкий способ забить хуй на ангуляр в моей жизни.
По самому курсу - гоняет хуйню из пустого в порожнее. Суходрочка на десятки часов.
Сделаем сначала хуйню. Потом переделаем А теперь допиши самостоятельно к ней функцию А теперь все стираем и по новой пишем
Понял что ангуляр - это блевотина ебаная. Считаю, что это плюс, мог бы так и не узнать.
Сегодня хотел начать проект, подумал может сделать на ангуляре, вспомнил что это и решил что лучше это все забыть как страшный сон.
>>1649296 Никаких дедлайнов там нету, это просто видосики. Иногда курсы удачные, иногда не очень. Контроль качества отсутствует. Задания, кстати, тоже никто не проверяет, иногда какой-нибудь индиец напишет тебе односложный отзыв, но не более.
>>1650409 >соус >высер какого-то восторженного жопаскриптера, который просто перечисляет возможности JS и на пустом месте заявляет, что "С++ и Раст конечно не догонит, но с Python можно сравнивать!"
Сап. Есть вопрос по ReactJS - пишу UI, делаю Layout. Судя по тому, что если все стили захуячить в Layout (bootstrap, jquery всякие), то для компонентов это работать не будет. Исходя из этого - нужно в каждый компонент пихать по 10 ссылок на либы. Но это как то не комельфо - каждый раз копипастить в каждый источник. Можно ли это как то упростить и захуячить в один файл, который передавать в компонент? Спасибо
Ёбанный рот этого Ionic. Уже на этапе подготовки все пошло не так. Проблема в том, что на этапе разработки Фреймворк использует WebpackDevServer, который умеет проксировать запросы на другие урлы. И фронт доволен что запросы не CrossOrigin и я доволен что могу параллельно разрабатывать и фронт и бэкенд. Но этот сраный Ionic не даёт влезать в конфиг вебпака напрямую, у него какие-то свои конфиги, которые нихуя не работают. В гугле все как один разрабатывают на ангуляре, используют ng serve, proxy.conf.json и прочую ангуляровскую залупу, а я пишу на реакте и мне всё это никак не помогает. В документации для версии 3 есть раздел Service Proxies, в котором все понятно описано что писать в ionic.config.json для проксирования, а для пятой версии нихуя в доках нет, блядь! Пидорасы!
У меня такой вопрос, я посредственно знаю js, то есть я умею работать с массивами, циклами, знаю про замыкание, но ооп в js не трогал но знаю его в других языках и асинхронщиной не занимался, можно ли с такими знаниями начать учить vue.js?
>>1650577 >bootstrap, jquery всякие Что у тебя там вообще за говнецо с жиквери и ряктом? >то для компонентов это работать не будет Чому не будет? Все стили, которые импортируются на страничку с ReactDOM рендером, будут работать на все элементы в рендере. Или ты рендеришь в DOM с каждого компонента отдельно? >Можно ли это как то упростить и захуячить в один файл, который передавать в компонент? Выделяешь отдельную страничку под DOM рендеры, импортируешь все большие компоненты и файл общего стиля в неё. Будет ещё бонус в том, что можно импортировать специфические стили в компоненты, и, в случае конфликтов, эти стили перепишут те, которые в дженерик рендер файле.
>>1651146 я охуел, когда узнал, что у реакта свой bootstrap. А я свои библиотечки туда тулил. Подскажи, как правильно сделать: 1. В Index.html (id=root) должны быть rel, script или пустой html файл? 2. Я хочу создать Layout. Только его рендерить? Только в него пихать все import? 3. Bootstrap вообще используется в React? Мне сетка нужна только; 4. Подскажи годные Best practice
>>1651223 >1. В Index.html (id=root) должны быть rel, script или пустой html файл? Это который в девелопер моде? Для него достаточно элемента с айдишником, который подцепляет ReactDOM.render(). В него реакт и будет всё впихивать, что связанно с этим рендером. Так что в html можешь хоть что запихивать. >2. Я хочу создать Layout. Только его рендерить? Только в него пихать все import? Не ебу, что такое Layout. Но если это набор стилей, то импортируй его на страничку, в которой объявлен домовский рендер. И компонент, вызываемый этим рендером. >3. Bootstrap вообще используется в React? Мне сетка нужна только; Ты с нуля собираешь поделие на реакте, или мигрируешь на него? Для с нуля можно юзать Create React App и прикручивать бутстрап к нему по гайду https://create-react-app.dev/docs/adding-bootstrap/ >4. Подскажи годные Best practice Да я сам вкатыш и даже родить тудушечку не могу. Но в целом почитай доку реакта и там лазий по ссылкам.
>>1651238 А что толку читать, если статические анализаторы не работают, если в библиотеках нет аннотации типов, а без них статические анализаторы слабо работают.
Аноны я начал смотреть буру по реакту, все понятно объясняет, но если я возьму например доку реакта, я смогу там все это узнать так же ? просто изначально боялся док, вроде как видос понятней.
>>1639808 (OP) TextEncoder и TextDecoder - это хорошо и прекрасно. Может кодировать и декодировать одной строкой, без написания ебических функций. Но... Мало того, что на его разработку забили хуй, так он ещё и что, не поддерживает работу с LATIN-1 (iso-8859-1) кодировкой, штоле? Охуеннейшей, реверсивной кодировкой, позволяющей кодировать байты в строку и наоборот, в те же байты? Той самой, единственной из реверсивных кодировок, которая поддерживается .NET Core? https://rextester.com/MIJXD38430
>>1653889 >не понимаю откуда такие ебланы вылазят. Мне в одной веб-студии сказали, что по нему работают. Я-то сам до этого Vue пробовал, вот и не понимаю - может это я неправильно то делаю.
>>1650658 А нахуя, ответь мне, делать что-то по сложному если я могу сделать это по простому? Любишь сложности и хардкор - пиши на си или хаскелле, блядь. Нам-то зачем своё говно советовать? Люди ещё на svelte пишут, а там вообще почти один HTML - и ничего, приложения по итогу получаются не хуже ангуляровских.
>>1654023 Ангулар избыточен и сложен для любых приложений не уровня CRM и 1С. Если мне нужен здоровенный монолит я возьму ангулар и какой-нибудь зенд или джанго. А если мне нужен туду или мувисерчер, то я возьму реакт или свелт с нодой на бэке. Забивать гвозди микроскопом - хуёвая идея, а вот выбирать инструмент под конкретную задачу - это правильный подход. Мне ионик нужен был для создания PWA а-ля учёт расходов или домашняя бухгалтерия. Я написал фронт за пару вечеров на реакте, так зачем мне писать в три раз больше кода с ангуларом?
>>1654894 >скорей проект у тебя 5 форм на весь проект. А что, бывает по другому? Какая разница сколько форм? Условный интернет магазин обычно с 3 формами работает. Оформление заказа, подписка на рассылку и написать нам в контактах. И че ебать?
>инструмент под конкретную задачу - это правильный подход.
писать на технологии, которую ты не знаешь или знаешь поверхностно. Люди, которые видят фреймворк 10 минут и нихуя не знают его подводных камней, архитектурных особенностей в итоге проект закрывают, но в коде полная хуйня.
@ - Да я тут разберусь в новом фреймворке за 10 минут, вот для админки возьму реакт! раньше писал на ангуляре @ А почему ты пропсы прокидываешь на 4 уравня вниз и используешь контекст почему бы не взять *? @ Да хуй знает у нас в ангуляре так было принято! @ а почему ты не используешь хуки? @ А нахуй они нужны? я в ангулере без них обходился, ООП НАШЕ ВСЁ. @ НАХУЯ ТЫ ПОДКЛЮЧИЛ В РЕАКТ ШАБЛОНИМЗАЦИЮ ОТДЕЛЬНОЙ ЛИБОЙ, ЕСТЬ ЖЕ JXS? @ Так у нас в ангуляре так было ебана, это удобно! .... Я АРХИТЕКТОР, Я ВЫБРАЛ ТЕХНОЛОГИЮ ПОД ЗАДАЧУ, но не знаю всех подводных камней, библиотек и прочей хуйни!!!!!1111)))))0000
в итоге ты либо не пишешь бек, либо пишешь, но тебя хуесосят все коллеги потому что у тебя получилась конская залупа, вместо хорошего продуманного PHP кода
если выбирать между гением С++ алгоритмистом, который знает PHP 2 дня и макакой которая с ПХП около 10 лет, я бы отдал проект макаке.
>>1655264 И вот на этот моменте мы возвращаемся к твоему первому ответу, где ты хуесосишь смузи- фреймворки и предлагаешь все делать на ангуларе. Смекаешь о чем я?
>>1659481 Да, это заебись хуйня перед собесом. Плюс посмотреть в лучших решениях, как es6 синтаксис позволяет лаконично решать задачи. Недельку посиди, 5к задачи должны решаться за 1 взгляд. Посмотрел, понял как делать алгоритм -- это заебись. Там есть тупорылые задачи уровня прописать 5 разных условий, такие лучше скипать
>>1660948 Мне точно пригодились, потому что и деревья приходилось рекурсиями крутить, и сложную бизнес логику реализовывать. Да и алгоритмические задачки на собесах это не редкость.
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Для программирования на ХТМЛ https://codepen.io/pen/
Для Ноды с консолькой https://repl.it/languages/nodejs
Для фреймворков https://codesandbox.io/
Залить, задеплоить страничку, сервер, контейнер https://zeit.co/now
Аноны, хочу получить советов мудрых, высераю пару предложений и код на скриншоте, а получаю смехуёчки. Как быть?
Если рассчитываешь получить дельный ответ, формулируй правильно вопрос:
У меня есть проблема\задача (А) %текст-ошибки или задача%. Я пытался решить ее так %кусок-кода-опционально% (Б), у меня не вышло %текст-ошибки%. Я погуглил, почитал документацию и попробовал сделать так %кусок-кода-%(В), но получаю ошибку (Г).
Сделай песочницу по ссылкам выше для ясности и удобства. Если никогда самостоятельно найдёшь решение — поделись в треде, мы за тебя переживаем.