Ссылка на прошлый тред: >>1138230 (OP)Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.Часто задаваемые вопросы: https://github.com/vladimir37/js-thread/blob/master/Wiki/faq.mdСписок материалов для изучения: https://github.com/vladimir37/js-thread/blob/master/Wiki/learn.mdСписок инструментов и направления JS-разработки: https://github.com/vladimir37/js-thread/blob/master/Wiki/tools.mdКонфа /pr/ в Slack: https://slack-2chpr.herokuapp.com/НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД! Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
Ты СОВЕРШЕННО не понимаешь в чем суть JS. JS это не раби «о, привет чуваки, зацените я слепил три гема и получился блог, гыгы». JS это не псевдофункциональный код питона. JS это не C#, Джава или ПХП. JS это язык, на котором люди могут побыть программистами-творцами — ужасными, поехавшими, ненормальными чудовищами, которыми они на самом деле и являются.Добавили промисы, а мы смеемся. Присыпали сахаром прототипы и назвали классами, а мы смеемся.Три тимлида прыгнули с крыши 16-этажного дома, взявшись за руки после попытки разгрести код с тридцатикратной вложенностью, а мы смеемся и просим еще. Промисы, колбэки, асинки/авайты — мы смеемся. Модульность, асинхронность, непрерывная интеграция, юнит-тестирование, key-value хранилища, два десятка фреймворков на любой вкус — мы смеемся. GitHub позволил писать приложения на десктопе, запихивая в каждый хеллоуворлд отдельный браузер — мы смеемся. Мы бездушно подпишемся под чем угодно, наши предпочтения не основаны на здравом смысле, бесцельные споры — наша стихия, мы — истинное лицо современного IT.
>>1157103Сенкс. Но как чтобы для при отмене просто закрылось, а не писалось null или undefined где указано.
Какой фреймворк на фронт сейчас самый модный?
>>1157842vanilla.js
>>1157770Блядь ну подумай йобана. Хорошо сука подумай. Ответ под спойлером:https://jsfiddle.net/2gxj0Lv0/26/
Сука бля я сейчас с ума сойду с этой асинхронностью. Как мне заставить эту пизденб работать? Пока все это было в одной функции оно работало, но мне нужны они отдельно, потому что там еще несколько блоков и каждый нужно отдельно мапить, не хочу иметь функцию в сто строчек .thenов. Почему в fetchJSON console.log() вызывается в нужный момент, но return нихуя не возвращает?https://jsfiddle.net/yqtzgz1r/6/
>>1157894Потому что ты даун, очевидно же. Таким как ты даже помогать нет никакого желания. Противно смотреть.
>>1157895>pooque
>>1157894>но return нихуя не возвращает?return всё нормально возвращает. Вопрос только, куда?
>>1157904То есть если я трай выпилю всё ок будет?
>>1157918Ещё раз внимательно посмотри на строки 23 и 24. Подумой, что они должны делать, и что они делают сейчас.
NWjs или Electron?
>>1158063Да я чёт не въезжаю в колбеки ваще. async function populate(url, callback){ await fetchJSON(url); await callback(json);}Так что ли?
>>1158214await callback(json);Объясни, что делает эта строчка?Меня удивляет, как ты смог в одном месте написать нормально, а в другом — нет. Явно спиздил где-то, не вникая, прям как глупый списывальщик в классе.
Сап джаваскриптач. Наткнулся на такую проблему: TS изменяет имена переменных в коде, из-за чего в отладчике получается вот такая хуйня, как на пике. Можно как-то исправить?конфиги такие: https://ideone.com/tc2KJ5
>>1158214ты разберись с промисами для начала, а потом ебашь async/await
>>1158214https://jsfiddle.net/yqtzgz1r/29/ учись, пока я жив
>>1158220Пытается исполнить функцию принятую параметром с параметром, полученным из предыдущей.Ты не знаешь, сколько я времени въебал чтобы к такому виду прийти. Конечно пару подсказок у друга взял, но в целом это часы и часы гугла, иногда несколько суток к ряду. Я не могу понять как ебучие колбеки делать, абстрактные примеры на стаковере или ещё хуй знает где вообще не помогают. В целом это эта функция, которую я пытаюсь разбить на блоки https://jsfiddle.net/9fv5stx4/ , и я просто читаю и нихуя не понимаю как колбек сделать чтобы вызвать populate с аргументом, полученным из fetchJSON. Да я знаю, что из асинхронной функции нельзя просто взять и вернуть значение, но разве await/async не для того чтобы асинхронные вещи выполнять в синхронной манере?
>>1158275а лучше вообще так https://jsfiddle.net/yqtzgz1r/45/
>>1158281https://notehub.org/7jbzw
>>1158275>>1158292State of the art срань, мне ещё рано такое видеть, я джве недели этим занимаюсь. Но спасибо, радует глаз.
>>1158312в качестве упражнения предлагаю тебе реализовать свой собственный fetch, используя XMLHttpRequest:заготовка: https://jsfiddle.net/nzxhszxd/1/готовый код: https://jsfiddle.net/nzxhszxd/5/
Жикваери олдфаги, подскажите – насколько важно в аяксе указывать тип ожидаемых/отправляемых данных? Я например испытываю эстетическое удовольствие от подобной записи:$.get('http://sitename.com/api/posts') .done((data) => { console.log('Result', data) }) .fail((err) => { console.log(err.statusText) })
>>1158336для начала ответь на вопрос: какое отношение REST имеет к jquery в частности и к js вообще?
>>1158260бамп
>>1158339Никакого. А теперь ответь не мой.
>>1158342раз никакого не имеет, то смотри, что тебе семантически удобнее. надо рест - делай рест. не надо - не делай.
>>1158281>но разве await/async не для того чтобы асинхронные вещи выполнять в синхронной манере?Именно для этого, да.Ладно, хуй с тобой, не буду пытаться тебя самого подвести к ответу, распишу.Твой код https://jsfiddle.net/yqtzgz1r/6/>await populateLegend(json);Вызывает функцию populateLegend, передавая в неё json. Где ты создал объект с именем json внутри функции populate? Нигде, у тебя его нет. Откуда он должен браться? очевидно, из fetchJSON(url).>await fetchJSON(url);Действительно вызывает fetchJSON, дожидается его выполнения (т.е. получения данных из интернета) и лишь затем переходит на следующую строку. Внутри fetchJSON>return json;вполне вовремя возвращает эти данные, только когда они получены.Но куда он их возвращает? Вникуда. Ты не сохраняешь возвращённые данные нигде.Вот тут> const json = await response.json();же ты нормально сделал, и асинхронную функцию вызвал, и возврат присвоил переменной. так и там тоже>const json = await fetchJSON(url);сделай и всё должно заработать.
>>1158346Блядь, точно, анончик, пиздец. Я не спал пару дней и уже дупля не давал почти что я делаю. С работы вернусь и сделаю, спасибо, держи интернеты.
сап, гайс. нуфага вопросможно ли создать удаленный репозиторий(на гитхабе) локально?я знаю, что можно сделать "git clone" уже существующего на моем гитхабе репозитория.но как сделать наоборот, т.е. например создал папку на рабочем столе -> сделал в ней git init, и как через командную строку дальше разместить его на гихабе?
>>1158390скачай гитдесктоп и не мучайся
>>1158390создаешь реп на гитхабе, затем git remote add * && git push -u master в своем локальном
>>1158406спасибо.а создать удаленный из локального получается нельзя?>git remote add && git push -u master && - что это?
>>1158173В общем плане вкусовщина. Для новичка- если совсем нуб, проще будет электрон, если нуб, но при этом много пилил расширений под хром и знаком с его хромовским api - nwjs.В не общем плане, разница в построении архитектуры приложеия на низком уровне. Если у тебя ПО для которого важно то,к ак устроенна в нем мультипроцессорность, как именно и по какой логике создаются рендер процессы, работа с контекстами ноды\браузе, и прочее, то тут есть разница. (самое очевидно из такого, nwjs позволяет не создавать на каждое новое нативное окно по процессу, в то время как в электроне это невозможно). Я пилю кастомный браузер для себя. И долго метался между ними двумя. Витоге по всем юхкейсам все взвесив nwjs подошел лучше. Но для "стандартных" проектов, которые все берутся пилить на этих платформах, каких-то там утилит и прочим, что вообще не стоит пилить на таких тяжеловесных штуках - проще электрон, ибо у него api более удобно оформлено для нубов. Electron построен вокруг CEF, NWJS вокруг полноценного хромиума. Вся разница в том, как контексты ноды внедряются в браузер движка, и как дергаются нативные апи. (в электроне это обертки над cef, в nwjs это переиспользование апи для chrome apps\extensions.) Короче говоря, разница эта важна только в очень специфических случаях.
>>1158390>например создал папку на рабочем столе -> сделал в ней git initВ командной строке переходишь в нужный каталог и делоешь git init>и как через командную строку дальше разместить его на гихабе?git pushНа, читай https://git-scm.com/book/ru/v2/
>>1158474создать реп на гитхабе из командной строки, ты про это? гитом - никак, git - это не клиент для гитхаба. в github desktop наверное можно.
>>1158474>а создать удаленный из локального получается нельзя?Используя github API можно.https://stackoverflow.com/questions/2423777/is-it-possible-to-create-a-remote-repo-on-github-from-the-cli-without-opening-br/10325316#10325316https://stackoverflow.com/questions/28385884/how-to-create-repository-in-github-through-github-api
>>1158487А мне вот больше электрон приглянулся, так как по стилю программирования он как нода, а нвжс показался "простоватым"(понятно, что не в плане возможностей). Не знаю, как объяснить. Ну и по быстродействию, нвжс быстрее работает лично у меня.мимо
>>1158551У них совершенно одинаковые возможности в плане функционала, который они предоставляют и позволяют реализовать.Разница на низком уровне реализации. И архитектуре этой реализации. Это может быть важно лишь тем, кто и пилит что-то углубляясь на этот самый уровень, а не просто делает обертки для сайтов.
>>1158487Ну и если это важно, то - nwjs старше электрона. Электрон пилится гитхабом + сообществом, но рулится самим гитхабом и его компанией. Это изначально корпоративный проект, хотя начинался тоже как проект одного единственного чувака (до релиза atom-shella, он пилил PoC у него есть в его репозитории). nwjs пилится в сущности одним чуваком + сообществом + инвестиции от компаний (в nwjs вливаются intel). Короче как-то так.
>>1158556А, ну еще когда все начиналось, был AppJS, но он очень быстро сдох не выдержав конкуренции.
>>1158556Это о том, что на электрон подвязано намного больше продакшен проектов корпораций (атом, vscode), что собственно не даст ему просто так внезапно если вдруг что издохнуть. С nwjs дела иначе, на нем таких крупных массовых проектов вроде нет.
>>1158562Электрон в общем-то и выстрелил в тот момент, когда разработка nwjs сильно затормозилась. Истории была очень похожа на раскол node.js на io.js, собственно и просиходила в тоже время. Хотя в тих случаях это история была не о форках, а о платформах.
>>1158497>>1158499>>1158502Спасибо
>>1158487>если совсем нуб, проще будет электрон, если нуб, но при этом много пилил расширений под хром и знаком с его хромовским api - nwjsВидимо я как-то не правильный нуб. Электрон мне показался сложнее, чем нвжс.
Рили, есть какие-то норм группы для вкатывальщиков JS? Где уже есть те, кто не просто млять переменные создавал но и слайдер какой-то запилил. А то все что не попадается мне - мертвые конфы. Не с кем и посоветоваться.
>>1158599Зачем тебе с кем-то советоваться? Сиди и дрочи сначала базовые конструкции языка. Потом придумай себе задачу и пили её. Далее план всегда одинаковый:0. Хочу сделать N1. Не знаю, как сделать2. Гугл3. Гугл4. Гугл5. Гугл6. Спросить конкретно твой вопрос на стаковерфлоу/2чч.хека/пр7. go to 0Со временем будет опыт, что-то будешь делать без гугла или хотя бы будешь конкретно знать, где искать. Так примерно вся разработка на всех языках и происходит, если ты, конечно не синьёр и не пишешь всё на память(кроме синьёров 2000 года рождения)
https://jsbin.com/qenotuzuto/edit?js Котаны, давно забил на JS. Напомните правильно ли я помню (и понимаю) как работает async/await:После инструкции await ожидается промис, после чего конструкция ожидает пока этот промис выполнится и результат из него (resolve или reject, не важно вроде) будут переданы в константу, в данном случае в res. В конце функция обозначенная как async всегда будет возвращать промис, даже если там примитив, т.е оно неявно создает промис в выполненном состоянии и возвращает его, поэтому этот async можно передать в другой await тем самым как бы создавая цепочку.
>>1158688>Котаны, давно забил на JSТот, кому простить предательство, будет предавать тебя всю жизнь.Иди туда, где был. Отныне мое сердце принадлежит другому.
>>1158688Если промис реджектится, то await выдаст ошибку, так что await нужно в try/catch заворачивать.>В конце функция <...> как бы создавая цепочку. Хуй знает, что ты тут имел в виду, но скорее всего ответ да.>async function f(){return 5}>const p = f(); // p — промис>const r = await p; // r == 5
Как можно реализовать плеер аудио с ютуба, кроме банального встраивания плеера в страницу и скрытия видео?Пакет нпм YouTube-audio-stream какой то уебанский, ничо не понятно. Смог консольный плеер замутить только.А мне веб нужен. Хелп.надо создавать аудио-стрим как то? А как? Если для экспресса есть догадки, то как на коа реализовать - я в тупике.
>>1158692Спасибо братишка. А то я уже стал разбираться с библиотеков 'co', чтобы вспомнить как эта хуйня вся работает. Там же вроде на корутинах все реализовано было.
>>1157660 (OP)Есть существующий сайт, пишу юзерскрипт для себя. Ясно, что я вообще понятия не имею как это делать.И мне в общем нужно изменить элемент на пикриле. Что это такое и как к нему обратиться, чтобы изменить стили у него?
>>1158698Ты аудио-файл с ютуба получить не можешь или имея аудио на сервере на сайт не можешь застримить его?youtube-dl -f <код_формата_для_аудио> -g <video_id>Получаешь прямую ссылку на аудио файл, дальше хоть в <video> вставляй.(вебм аудио, работающее в html5 video имеет коды 251, 250 и 249 самые часто доступные, остальные в сорцах youtube-dl сам найдёшь).
>>1158698>Пакет нпм YouTube-audio-stream какой то уебанский, ничо не понятно.А тут ютуб виноват, не дают, гады, нормального АПИ для скачивания всех форматов. Я youtube-dl на js для себя портировал, там да, жопа та ещё, особенно для декрипта сигнатур всяких. Алсо, упомянутая тобой либа какая-то ниочинь, она какчает видео и с помощью ffmpeg'а конвертит в аудио. Лучше вот https://github.com/fent/node-ytdl-core попробуй.
>>1158767Это псевдоэлемент, по-моему через JS к нему не обратишься никак
>>1158816Да я уже нашёл. Похоже что и правда там всё очень плохо
На каком уровне мне нужно знать JS если я буду писать на TypeScript?Сам я c# макака, но начинал свой путь с JS и многое уже подзабыл, и вот думаю стоит пройтись по JS и вспомнить его или сразу заняться TS?
>>1158816Не подскажешь как добавить таблицу стилей в документ?[CODE].b-link_button.is-censored::before{ content: '';}[/CODE]
>>1158823Нахуя он тебе? Ты ебанутый? Вся прелесть жс в динамической типизации.
>>1158827CSS-ку кастомную? Я через плагины браузерные добавлял свои правила на лисе Stylish, например
>>1158829Проект в котором я буду участвовать делается на TS
>>1158831> CSS-ку кастомную?Ну я насколько понял - да.> Я через плагины браузерные добавлял свои правила на лисе Stylish, напримерДа не хотелось бы ещё лишний плагин заводить.
>>1158786Ютуб не то, что бы виноват. Просто это против TOS его.Спасибо за либу.
>>1157660 (OP)!! vs Boolean()Чё пизже?
>>1159029Первое, очевидно. 2 символа против 9.
Жабосеры, вкатывальщик ебучий итт. Очень интересует такое ебливое явление, как curyying. Оно же блять ебанутое, оно надо вообще? Или это вебмакаки придумали, чтобы их нормальные программисты не так сильно говном поливали?
>>1159029бля я и не знал о втором способе
Господа, помогите пожалуйста, в одном моменте.Задача:Простейший экспресс (или чистая нода) сервер локально.Принимает с локальной реакт аппы запрос, редиректит на адрес, получает ответ, редиректит реактовской аппе.Покажите пример, как реализовать, пожалуйста.
>>1159034Заходи поясню
>>1159034Надо, охуенная тема. Смотри funfunfunction, читай вот эту хуйню - https://github.com/MostlyAdequate/mostly-adequate-guide
>>1158767не оч понял что ты именно хочешьесли тебе нужен before.content - добавляй свой цсс через addstyle
Аноны, посоветуйте хороший IDE под жабаскрипт и особенно Node.js. Хочу чтобы как в Эклипсе можно было нажать на функцию и посмотреть как она работает в библиотеке, если я захочу ее переписывать, или в свой код утащить.
>>1159140Vim
>>1159140Такой нет, т.к. язык динамический. Более-менее нормально работает VS Code и Webstorm, там Typescript definitions есть.
>>1159156Если бы мне нужен был текстовый редактор, я бы спрашивал в ньюфаг-треде.>>1159162А чего-то уровня Eclipse под C нету?
>>1158767создать из js правило css с описанием этого псевоэлемента и поместить его в CSSOM
Есть аутентификация по токену, который хранится в localStorage. В токене хранится информация об аватаре и имени пользователя. На стороне клиента декодится и уже на основе этих данных рендерится личный кабинет, в котором можно поменять аватарку и юзернейм. После того, как пользователь решил поменять что-то, идет патч запрос на сервер, там вся инфа обновляется. Но вот теперь на стороне клиента, если обновить страницу, то данные ведь берутся из старого токена, где ничего не обновилось. И как лучше с этим быть? Сервер мой, могу просто на каждый патч запрос вешать новый токен с обновленной инфой и на стороне клиента тоже его использовать. Это вообще логично? Как подобные приложения должны работать? Кажется, я уже с логикой где-то налажал.
>>1159287О, я придумал. Кажется, будет проще не в токене хранить юзеринфо, а каждый раз, как страница обновляется, слать запрос на сервер, чтобы он возвращал нужные данные о залогиненном пользователе, а по токену будет просто аутентификация.А зачем мне вообще в токен что-то пихать? Почему так делали в видео, по которым я учился? Там, наверное, статическая информация была. Ну и ладно.Ну, если я конечно все делаю неправильно, то можете что-нибудь подсказать.
https://jsfiddle.net/pptr6p1s/Можно ли как-то сохранить получаемые данные из jsonа в переменную result и использовать вне функции? Получается только вывод в консоль, алерт итд.
>>1157660 (OP)Так, аноны, вот есть у меня библиотека, в библиотеке в одной из функций есть такой вызов: var querystring = require('querystring'); var https = require('https');var postreq = https.request(options);postreq.write(postBody);postreq.end();Как мне посмотреть что именно эти функции делают?
>>1159347Как вы заебали. Иди читай про асинхронное программирование. И учись тому, что тебе не надо сохранять свои данные из жсона в переменную, блядь.
>>1159355node-inspector
>>1159356Да пошел ты нахуй, пидрила
>>1159357И как им пользоваться?Там в официальной документации охуительное объяснение уровня запускаешь@писоешь@какоешьhttps://nodejs.org/en/docs/guides/debugging-getting-started/
>>1159362Запускаешь. Он тебе пишет порт. Открываешь блядь вdevtools в хроме ссылку, и работаешь. Там ахуенное описание. Все понятно даже идиоту.
>>1159362Не хочешь девтулс в хроме, можешь в вс коде.Написано же всё https://nodejs.org/en/docs/inspector/
>>1159362Или ты ждешь, что тебе там будет написано как дебаггером пользоваться? ТОгда вынжужден тебя разочаровать, как пользоваться дебаггером конкретной среды, которой ты пользуешься - ты должен и так знать. Инспектор лишь предоставляет протокол для взаимоействия тоего дебаггера с нодой.
>>1159363Мне непонятно, можешь считать меня идиотом.>Он тебе пишет порт. Открываешь блядь вdevtools в хроме ссылку, и работаешь.Пикрелейтед. Ну или WebSockets request was expected если ws:// убрать>>1159364А так чтобы без установки всякого левого говна?>>1159365Вообще я задавал конкретный вопрос, как мне посмотреть что делают функции: >>1159355В C для того чтобы это сделать я сразу открываю хедер с нужной функцией, если что потом еще в сорцы могу залезть. И в эклипсе это у меня так настроено, что я по ЛКМ+Ctrl сразу открываю функцию. Ну я и хочу похожий функционал, но для редактора ноды, чтобы не копаться в сотне файлов и искать где же там эта херня реализована.
>>1159370>А так чтобы без установки всякого левого говна?>в эклипсе это у меня так/0
>>1159370>В C для того чтобы это сделать я сразу открываю хедер с нужной функциейДокументацию читать не пробовал?
>>1159370>Пикрелейтед>Chrome DevTools>Option 1: Open chrome://inspect in a Chromium-based browser. Click the "Open dedicated DevTools for Node" link.А ты что блядь открываешь?
>>1159372>>1159373Так, ну Хром вроде напердолил. В Хроме не открывался, пришлось открывать в Chromium, вроде немного разобрался.Почему первый вариант нормально срабатывает, а второй вариант отправляет реквест, но выдает мне исключение? В других ООП так можно делать.
>>1159375Ой дурак.Тебе не дебаггер нужен. И не исходники читать.иди, читать, документацию блядь. https://nodejs.org/dist/latest-v9.x/docs/api/
>>1159376У меня дедлайн через 3 дня, а еще нихуя не сделано, я только всякую документацию по Javascript открыл и в ней нихуя не понятно. У меня уже 200 вкладок в браузере открыто и я половину из них я прочитал, но нихуя не могу понять.Сейчас пытаюсь разобраться, как мне выводить все мои https реквесты в лог.
>>1159379>Сейчас пытаюсь разобраться, как мне выводить все мои https реквесты в лог.Ебать. Сделать обертку вокруг модуля https в котором реализовать логгирование и использовать его вместо оригинального. Паттерн Прокси - слышал о таком, горее ООП-программист.
>>1159140WebStorn. Я пользуюсь его аналогом для Java - IntelliJ IDEA, тут тоже есть поддержка джаваскрипта, в принципе норм работает. Правда тупит иногда.
>>1159030Да, но второе семантически правильнее, как бы сразу очевидно что оно делает и это функция. Можно делать так: arr.map(Boolean). Возможно оно и работает быстрее, но не уверен.
>>1159381Ты сюда самоутверждаться приходишь?
>>1159507Если бы в его сообщениях не мелькало такой ахинеи как >>1159375>В других ООП так можно делать.То и ответы были бы иные.
Чуваки, а вот скажите. Как считаете, нормальная практика использовать промисы и асинки в более высокоуровневых целях?Ну например, пишу я игру, и говорю гипотетическому персонажу human.raiseLeg('left'). Он раздумывает, запускает анимацию поднятия левой ноги, а после того, как анимация закончится, он кидает Promise.resolve(). Я резолв принимаю и после этого говорю ему: human.raiseLeg('right'). Он раздумывает, а потом кидает Promise.reject('Я что, на хуе стоять должен?'). Я в кэтче это ловлю и отправляю пользователю соответствующее сообщение, предлагая поразмыслить ему над более подходящей командой.Вот насколько так правильно делать? Я заметил, что 1) к моим реджектам подмешиваются другие эксепшены типа ReferenceError, и 2) даже если отделять мои сообщения от остальных исключений, дебажить становится трудно, потому что через промисы просерается стек вызовов. Или может, по крайней мере, возвращать мои ошибки через резолв типа resolve({ fail: 'Я что, на хуе стоять должен?' })? Или вообще как бы вы подобную задачу решили?
>>1159509Ты наверное на первоклассников тоже кричишь, что они дебилы и умножать даже не умеют
>>1159381>Паттерн Проксиche?
>>1159525А обычный лисенер хуже?
Анон, вопрос по AngularJS: как запилить обновление данных на странице с интервалом И без перезагрузки (ну т.е. чтобы уже отображенные данные не исчезли).
>>1159381Так, ну с хуйней разобрался более менее.Мне на самом деле не сам Javascript нужен, а понять как работает сетевой стэк Дискордовского API, ну вот я и пытаюсь развинтить эту либу: https://discord.js.org/Сейчас пока только разобрался как отправлять сообщения через Webhooks, и то там свои ньюансы.Сейчас пытаюсь понять этот код и как именно он принимает сообщения на сетевом уровне, то есть чтобы что-то подобное я мог провернуть с curl-ом или другой подобной библиотекой: https://gist.github.com/eslachance/3349734a98d30011bb202f47342601d3
>>1159607Конечно, кричу. Я же учитель в школе.
>>1159870Хорошо. Не кричишь, а обзываешь
>>1159733С промисами проще писать тесты, поэтому решил склониться к ним. И вот вопрос, а может зря?
Посоны почему иногда надо писать в фигурных скобках импорт а иногда нет?import React, { Component } from 'react';
>>1159947>import React, { Component } from 'react';>Component === React.Componentподумой
Стоит ли учить вью?
>>1159967После реакта можно развлечься, может вакансия подвернется, че бы нет.
Анон, а как обстоят дела с работой заграницей? Готовы ли работодатели помочь с релокейтом или они предпочитают местных макак? Все таки речь идёт о жсе. И знающих его довольно много, из-за низкого порога вхождения.мимо засматриваюсь на джава и питоно макак, которых пачками перевозят заграницу.
>>1159980>помочь с релокейтом>жсОру.Ты бы ещё спросил про хтмл с ксс.
>>1159947Кури деструктуризайию в ES6
>>1159998Спс
Аноны, почему все базовые объекты ссылаются на Object.prototype? Зачем так сделано? Можно же было сразу ссылаться на Object. То есть не __proto__ = Object.prototype, а __proto__ = Object. В чем смысл?
помогите , не совсем понимаю этот синтаксис >~_.indexOf() в const hasEmptyCell = arr => ~_.indexOf(arr, e)
>>1160141Тильда это побитовое отрицание
>>1160150благодарю
>>1160150еще вопрос назрел . То есть indexOf() вернет индекс первого элемента массива , значение которого не равно e ?
>>1160155>не равнопочему "не"?
>>1160170так ведь перед indexOf() стоит отрицание ~ . значит функция будет работать в обратном направлении .если бы небыло отрицания - indexOf вернула бы индекс элемента , значение которого = e
>>1160127Думаю, это сделано для того, чтобы не похерить все делегируемые объекты, модифицировав их прототипный объект.
>>1159525Как-то так, я с телефона, пофикси там если что.https://jsfiddle.net/ffyfm9xp/1/
>>1160175В смысле? Я не понимаю твой ответ. Можно спокойно изменить любой метод в любом прототипе, в том числе стандартный в базовых объектах. Так в чем смысл отдельного свойства prototype?
>>1160155Вернет значение индекса и потом применит побитовое отрицание. То же самое что перевести число в двоичное представление и заменить нули на единицы а единицы на нули
>>1160173>отрицание ~побитовое отрицание. Это не логическое НЕ.~01011100 = 10100011~0 = -1~1 = -2~2 = -3и т.д.
сап веб-макакены . Собираюсь написать блог для поднятия скилла. Хочу сделать его полноценным веб-приложением . правильно ли я понимаю данную штуку:есть клиентская (VIEW) часть для нее я выбрал библиотеку React . состояние приложения я буду хранить в store Redux . для серверной части :нужен роутинг , для этого буду юзать react-routerбаза данных - MySQL . для взаимодействия с БД использовать планирую PHP .таким образом , PHP мне нужен только для получения данных из БД и дальнейшей отправки их на клиент посредством Ajax .Правильно ли я понимаю взаимодействие между клиентской и серверной частью ? не намудил ли с выбором инструментов ?
>>1160352Нахрена тебе библиотеки? Ты что, сам не сможешь написать весь код?
>>1160366ты либо остряк , либо очень глупый
>>1160352>Правильно ли я понимаю взаимодействие между клиентской и серверной частью ? не намудил ли с выбором инструментов ?Вот на этом этапе стоило бы задуматься, правильно ли ты поступаешь, что дрочишь инструменты не понимая основ.
Приветствую. Хочу удаленную работу с навыком полученным через самообучение. Навык должен расти вместе с опытом.Прошу объяснить без категоричных высказываний - туда ли я зашел?Если мне придется работать не удаленно определенное время для стажа - я готов, не критично. Важна первоначальная цель.
>>1160542>Прошу объяснить без категоричных высказываний - туда ли я зашел?Нет.
>>1160352Нормана, главное делай, через 100 сайтов ты считай уже мастер верстки, методологии и всего всего. Но мой совет: Спрашивать это хорошо, но ведь самому попробовать это неплохо? Главное вести отчет о себе в Гите, но правда я не знаю какая у тебя цель, деньги или Искусство.
>>1160544Пидора ответ.
>>1160542>>1160547Вотнихуясебе, ты зачем мой пост из пыхапе треда закопипастил?Дискредетировать меня собрался? Или ты так помогаешь своей рекомендацией пацанского JS треда в том треде?
>>1160549>зачем мой пост из пыхапе треда закопипастил?Мне просто интересно было как местные отнесутся к этому посту.
>>1160553Реакция везде одинаковая: 1-2 ответов на вопросы, 10 подрывов уровня "КАК ОН ПОСМЕЛ?!".>Пришел какой-то залетный хуесос, который ни дня не учился и ни сделал ни одной задачи и сходу начинает спрашивать про работу и перспективы.
>>1160554Я хочу больше подрывов. Пойду в рубитред запощу. Хотя все рубисты передохли уже.
>>1160555Вернулся из рубитреда. Там мне предложили написать HelloWorld и предложили зп 300к в месяц руби программистом.
>>1160177Спасибо за интерпретацию, но у меня вопрос именно в асинхронных методах. То есть, ты вызвал moveLeftLeg, он подумал, сходил покурить, вызвал какой-нибудь setTimeout, доложил серверу о том, что ты приказал ему поднять ногу, и только потом поднял. А следующую команду ему нужно дать только, когда он закончит предыдущую. И вот здесь у меня прямо чешутся руки делать это через промисы, учитывая все вышеописанные недостатки.
>>1160180В том, что если мы унаследуем первый объект от второго, а потом поменяем свойство второго объекта именно объекта, а не его прототипа, то это не затронет унаследованный объект, прототип останется неизменным. Можно и прототип поменять, никто не запрещает. Но тогда это затронет и все делегирующие объекты, если у них внутри себя эти свойства не переопределены.
Спасибо за список учебных материваловMongodb express актуально?
>>1160618Для лохов. Юзай redis и koa.
>>1160595Давай больше инфы с конкретной задачей, я хуй знает что тебе нужно там.
>>1160352реакт-роутер для роутинга серверной части на пхп, че
анончики, как сделать вывод рейтинга фильма с кинопоиска с помощью чистого js, можно и jq, например вот этого https://rating.kinopoisk.ru/818144.xml
>>1161052с помощью чистого js, можно и jq
>>1161052Скачать xml'ку, распарсить, отобразить данные, как и где тебе нужно. В чём вопрос?
Аноны, решил вкатить себя в ваш апельсиновый джус. И сразу начал буксовать. Объясните мне за замыкания. Вот 2 скрина. Почему первый вариант работает, а второй нет. Разницу я выделил (как железа).
>>1161147Вроде эквивалентные операции же, почему в первом случае переменна становится статической, а во втором - нет.
>>1161147(() =>{...}) () ; - синтаксис функции, которая вызывается сразу же. Без () в конце она не будет вызываться.Удали во втором варианте ( перед function и заработает.
>>1161154То есть разница лишь в том, что в первом варианте она сразу вызывается, а во втором не сразу. То есть если функцию сразу при объявлении не вызвать, то переменная counter не сохранится, а если вызвать, то сохранится. Втф?
>>1161144>Скачать xml'ку, распарсить, отобразить>В чём вопрос?Вот в этом, не умею.
>>1161163Что у тебя есть сейчас вообще? Куда ты вывести хочешь?Имей в виду, что из-за CORS'а просто так в скрипте на своём сайте в браузере эту xml'ку ты не скачаешь (так что jq бессилен).Ну а на сервере в nodejs всё элементарно:request(url, (err, resp, data) => {xml2js(data, (err, data) => {console.log(data) // { rating: { kp_rating: [ [Object] ], imdb_rating: [ [Object] ] } }})})
>>1161162А первом случае ты делаешь один вызов, после которой у тебя появляяется одна единственная переменная counter в замыкании. И замыкание всего одно.А в вот тором случае, ты каждый раз создаешь новое замыкание, в котором хранится своя собственная переменная counter.Что не понятного-то блядь.
>>1161162Ты не пробовал упростить свой код, чтобы понять, в чем дело?В первом случае у тебя он такой>var counter = 0>function myFunction() {> element.innerHTML = counter++>}а во втором>function myFunction() {> var counter = 0> element.innerHTML = counter++>}
>>1161167>просто так в скрипте на своём сайте в браузере эту xml'ку ты не скачаешьиз-за этого и пришёл сюда, так как не смог, к сожалению доступ есть только к дизайну, так что хотелось бы всё таки на стороне клиента выполнять, вот пример который из-за этого сейчас не работает yraaa.ru/scripts/rating-kinopoisk-imdb
>>1161172https://developer.mozilla.org/ru/docs/Web/Security/Same-origin_policyhttps://ru.wikipedia.org/wiki/Cross-origin_resource_sharing
>>1161171Спасибо, анон. Я понял. Правда минут 15 доходило, но разобрался.Я искал проблему в первой функции, а она оказалась во второй.Вторая функция стирала из памяти мое замыкание каждый раз после своего завершения. Если добавить перед ней add = add(); то все снова работает.
Ананасы, вот на jsfiddle используется классный линтер который показывает ошибки в синтаксесе. Ест что нибудь подобное на сублим или vs code?
>>1161147Второе не наботает потому, что он каждый раз создаёт новую функцию и вызывает её. В первом случае функция создаётся изначально и вызывается одна и та же.
Господа, есть список состоящий из N элементов, в зависимости от того, какой элемент в списке выберет юзер - должна отображаться та или иная форма на странице.Как организовать это всё? Или хотя бы как загуглить правильно?
>>1161269Повесить обработчик на список, который будет смотреть какой нибудь дата аттрибут у event. Target и в зависимости от этого аттрибута открывать/показывать форму. Гугли делегирование событий.
>>1158336Максимально важно
>>1161277Так и сделал, по id выцепляю выбранный элемент из списка и отображаю нужную форму, через show/hide.Но вот теперь проблема - поля во всех формах required=True, и когда форма скрыта, а поля в ней не заполнены, то данные не хотят отправляться.Какие есть варинты решения?required=False - не самый лучший вариант т.к. не хочу на стороне сервера ещё и заполненность формы проверять.
>>1161295Динамически создавать форму с валидацией в процессе.Динамически заполнять required.Проверять заполнение формы вручную (не использовать required).Халявы нет.
Почему когда я добавляю атрибут html-тегу через jquery метод .data(id, 1), то в тексте страницы его не видно? Это же эквивалентно тому, что я ручками прописал <tr data-id="1">?
>>1161466Потому, что не в тексте надо смотреть, а в отладчике (DOM).
когда оправдано исп ноды?
>>1161300Ох-хо-хоЯ с JS вообще не знаком. Печально-сложные,для меня, пути решения, ладно.Спасибо за помощь.
>>1161052Апи их загугли
>>1161489На самом деле, можно попробовать такой фокус:Изначально required не ставишь вообще.Для элементов формы, которые должны быть required, делаешь класс типа "frm_required".Дальше - у тебя же есть набор элементов, которые ты показываешь в данный момент? Допустим, они у тебя в переменной $currFrmElts. Тогда ты пишешь:$currFrmElts.find(".frm_required").prop("required", true);Вместо переменной у тебя может быть селектор:$(...).find(...).prop(...);
>>1161565Я понял, всё логично, спасибо, заюзаю такой вариант.
>>1157660 (OP)> Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования.Вот это спизданул. На плакат нахуй.
>>1161241ESLint
как "правильно" использовать бутстрап 4 с реакт/вебпаком?просто инклудить CDN в HTML нормально?для чего существует bootstrap-react ?
>>1161639правильно посмотреть в доках CRA bootstrap-react и просто bootstrap как они работают вместе. Инклюдить в хтмл хуйня, собери нормально, чтобы все пакеты из твоей сборки вебпака применились к бутстрапу.
>>1161646а какие подводные если инклудить в ХТЛМ все же?спрашиваю так как bootstrap-react не поддерживает bootstrap 4.
>>1161668я ен пробовал, но предполагаю, что если все вебпаковские модули сработают (глянь сколько их в cra) на одной части кода и не сработают на той что с сдна будет неоч. Ну и лишний запрос с целой библиотекой не ок, когда тебе нужны только некоторые части, которые и запихаются в бандл.
>>1161466Кстати, если мне надо сделать каждую строку таблицы кликабельной, чтобы при нажатии открывалась страница с описанием этого объекта, хранить id как <tr data-id="1"> это норм? Если без Jquery.
>>1161779ок спасиб анон, пока пришлось взять бутстрап 3, так как столько времени копаться с этой хренью нету.
Где искать примеры реального кода? Вот к примеру я уже более менее освоил стандарт, ES6 фичи, штмл, ксс + синтаксис реакта, для понимания к чему мне надо стремиться я хотел бы увидеть как выглядит реальный, профессионально написанный, проект на том же реакте, какие есть стандартные приёмы и практики, но где искать фиг знает. Про гитхаб знаю, но где там искать, учитывая, что уровнем моих знаний я не смогу отличить говнокод, от эталонного.
Какого хуя у меня в jquery tr не выбираются?
>>1161989А, все.
>>1161963в гугле. я по этому учусь сейчас.https://github.com/AdaptiveConsulting/ReactiveTraderCloud
Чем навигацию по страничкам сделать?
>>1161295На стороне сервера валидацию в любом случае надо делать. Потому что послать данные на сервер не через пользовательский интерфейс, а как-то ещё (например, через Postman или Curl) — дело пяти минут. На клиенте валидацию делают только для удобства пользователя, а не в качестве реальной меры безопасности.
Использую require.js и пишу в модулях 'use strict'. Но строгий режим не включается. Почему так? Как включить?https://pastebin.com/pjxBvz5EПо-сути, строгий режим мне нужен только в define-функции, т.к. скрипт загружается в страницу.
>>1162241Пробовал ставить в начало файла? У тебя где-то в середине, может поэтому?Если нужно только для функции, то в ней и пиши, а не перед ней.
>>1162241Ты в блокноте пишешь, что ли? Ты бы хоть в валидатор какой кинул свой код.
>>1162246Пробовал как и перед define, так и в define функции, так и все сразу. Все 'use strict' стоят перед началом кода (в самом начале файла). Нужно не только для функции, а для всего модуля.
>>1162248В vscode. Валидаторов нет.
>>1157660 (OP)привет, кто нибудь делал скрипты которые читают историю браузера и подстраивают стиль на сайте под его вкусынапример если юзер читает мейлач, то фон будет как у мейлачика, тот же цвет.если порнхуб то черный фон и желтые буквыи тд
>>1162482Ты не можешь читать историю браузера.Ты прежде чем задавать такие вопросы не задумался хоть на секунду о том, насколько абсурдна твоя задумка? То есть ты действительно предполагал, что любой кто угодно, может просто вот так запросто посмотреть какие сайты ты посещаешь?
>>1162485А адаптивную тему как в мобильном хроме на десктопную версию еще не сделали?
>>1162485>запросто посмотреть какие сайты ты посещаешьМожно. Сейчас узнают ип, географический адрес, страну, провайдера, комп, браузер
>>1162490Но не историю посещений.
>>1162491ее тоже=)
>>1162501Не напрямую из браузера. Гугл может, у него закладки везде, а ты — нет.
http://pagination.js.org/index.htmlКак к этой хуите прикрутить свои классы?
jQuery hinge - у меня только один вопрос: что было в голове у человека, который написал ЭТО?
>>1162640Все сам сделал. Какой же я молодец.
>>1162199Ну это понятно, антош, я это как раз для забывчивых юзеров делаю, которые могут забыть заполнить одно из 5 полей.
мне кажется я делаю какую-то хуйню. не будем обращать внимание на коллбэк-хелл на этом скрине.чому я дебил у меня получается так много биндов? есть какой-то "более правильный" способ?
>>1162761>JS это язык с ООП, в нём нельзя говнокодить>Hold my beer
>>1162640Бля, ну пагинацию делать через отдельную библиотеку - это уже совмем перебор. Ну тоесть блядь вообще пиздец как перебор. Там самому на коленке писать минут 5. И то из них 4 ты кофе пить будешь.
>>1162761Стрелочные функции использовать, они автоматом биндятся.
Ребята, дайте инвайт в WEBTALKS в дискорде.
>>1157660 (OP)Анон, история такая. Подрядили на работе писать фронтенд. Ну я его и пишу уже месяца два. За это время у меня в голове образовалась просто нечеловеческая каша из стандартов, подходов, фреймворков и всего остального.И вот настал день, когда мы решили начать переписывать наш фронт на реакт. Естественно, я хочу подойди к этому вопросу ответственно и структурировать в голове всю мою кашу. Так вот, где бы найти хороший учебник по js, в котором учитываются самый новые стандарты и вот этот ваш ES-6 (погуглил тут и оказалось, что есть уже 8), но в пизду его.
>>1157660 (OP)Антоны, я не знаю ни парадигм ООП, ни модели MVC. Хочу окунуться в практику, познавая и осмысляя теорию в процессе.Зарабатывать программизмом не буду, поэтому мой говнокод в продакшене вы не увидете.Вопрос у меня вот в чем. Хочу уметь в node js.Стоит ли мне сначала изучить js, а потом уже постигать нюансы ноды?Или сразу, с нулевыми знаниями можно с нее начинать?
>>1162825ой, давай ты вместо того, чтобы пиздеть лучше покажешь как надо>>1162836у меня лэгаси. ЕС6 нельзя, бабель тоже нельзя. ну точнее я блять не успею так быстро перейти на бабельпридумал как вариант закэпчурить this в переменную, но не ли чего-то более идеоматичногоеще раз проблема:1. Сделал класс2. Класс содерджит поле $element3. Хочу в методах класса вешать листнеры jquery и внутри их обращаться к полю через this
>>1162923Banks A., Porcello E. - Learning React - 2017Только он на инглише.
>>1162825> >JS это язык с ООП, в нём нельзя говнокодить> JS это язык с ООПОй веей> в нём нельзя говнокодить> JS> нельзя говнокодитьОоооой веееееееей
>>1162827Че-то я сомневаюсь, что я бы справился за 5 минут. У меня опыта нет. Да и зачем, если есть готовое решение?
Придумайте шутку. Подебителю асинк.
>>1162973Ну хуй знает. Зачем ты вообще тогда в это полез? Вон уборщику в макдаке платят 45к, и ему тоже норм. И он тоже не хочет разбираться.
В двух словах чем отливается app.use в router.use (Express JS). App - это объект приложения. А router это объект маршрута? Т.е он сразу как-то привязан к app и знает что мы определяем миддлвары именно для этого приложения?И еще один вопросик. Объект req.session доступен в течении того времени, пока сохранена определенная кука в браузере? Т.е даже если HTTP-сессия будет закрыта, то эта, можно сказать user-session будет все еще активна, правильно? Тогда как работает res.locals? Это локальное хранилище переменных для текущего запроса или для всех запросов в определенной сессии?
>>1162948>придумал как вариант закэпчурить this в переменную, но не ли чего-то более идеоматичногоНу так-то>const self = thisвполне себе типичный жс-код был какое-то время (может даже и сейчас), так что нормальный вариант.
>>1162946бамп
>>1163235>Зачем ты вообще тогда в это полез?Ну например потому, что я вообще не на js-е пишу, но пришлось немного заняться фронтендом и я не хочу творить откровенную хуйню?
>>1163328>Пол Грэм в статье «Великие хакеры» утверждал, что программисты, пишущие на Java, далеко не так умны, как приверженцы Python. Он взбесил множество глупых Java-программистов (неужели я это написал?), которые принялись писать на своих сайтах развернутые контраргументы. Бурная реакция показала, что он задел за живое.>Я присутствовал при первой презентации этой статьи. И она заставила меня вспомнить один эпизод. >Я приехал в Индию, чтобы набрать сотрудников, и просматривал сотни кандидатов, претендующих на десяток рабочих мест. Наша команда, проводящая собеседования, страдала от нехватки сил и времени из-за низкого процента успешно пройденных собеседований. Несмотря на поздний вечер, головную боль и красные глаза, мы не расходились, пытаясь найти новый подход к отбору кандидатов. Требовалось оптимизировать процесс, увеличив число интервьюируемых или каким-то образом привлекая более толковых людей (а лучше и то и другое). Тем, что осталось от моего голоса после двенадцатичасовых попыток получения ответов от ошеломленных программистов, я предложил добавить к ключевым словам, по которым наши специалисты по поиску персонала отбирали резюме из базы данных,слово «Smalltalk». «В Индии никто не знает этого языка», — кричал заведующий отделом кадров. Но на это и был направлен мой расчет. Ведь программирование на Smalltalk коренным образом отличается от программирования на Java. Вариативный опыт даст нам новый уровень требований к кандидатам, а динамическая природа Smalltalk позволит Java-программистам подойти к решению задач с другой стороны. Я надеялся, что эти факторы дадут нам специалистов с высоким уровнем технической подготовки, которого не было у уже просмотренных соискателей. Добавление к списку требований Smalltalk удивительным образом уменьшило кадровый пул. Но теперь к нам приходили более одаренные люди. Они действительно разбирались в объектно-ориентированном программировании. Они знали, что Java не является универсальным, как его порой пытаются представить. Многие из них обожали программировать! Нам оставалось недоумевать, где же вы все были в предыдущие две недели?>Я до сих пор пользуюсь этим приемом при поиске разработчиков. Как лицо, отвечающее за подбор персонала, могу сказать, что в первую очередь это показывает степень вашей заинтересованности. Если я узнаю о том, что человек изучает некую область для саморазвития или, еще лучше, — для удовольствия, то пойму, что передо мной целеустремленный и любящий свою профессию специалист. Когда я спрашиваю людей, довелось ли им познакомиться или использовать некоторые нестандартные технологии, меня сводит с ума ответ: «У меня не было возможности работать в этой области». Не было возможности работать?! Но у меня ее тоже не было! Но я использовал свою возможность учиться.Эти второстепенные технологии и методологии не только создают образ правильно мотивированного и увлеченного своим делом человека. Они и в самом деле делают вас глубже, лучше, умнее и изобретательнее. Если вы не считаете все вышеперечисленное достойными внимания причинами, возможно, вы неверно выбрали профессию.
>>1163330
Умоляю помогите! Не могу разобраться в этом куске кода. Не могу понять зачем в выражении сравнения есть bodyvar html = document.documentElement;var body = document.body;var scrollTop = html.scrollTop || body && body.scrollTop || 0;scrollTop -= html.clientTop; // в IE7- <html> смещён относительно (0,0)alert( "Текущая прокрутка: " + scrollTop );
>>1163465Извини, это уже что-то экстраординарное и сложное. Что-то уровня сложных оптимизаций, чтобы понять суть которых нужно иметь ученую степень. Вряд ли тут найдется человек, способный дать тебе ответ. Просто не обращай внимания на этот кусок кода, пожалуйста.
>>1163465бамп
>>1163465это из собеседования в NASA?
>>1163475Все, до меня дошло зачем там body. Тупанул, заучился слегка лол
>>1163480Почему?
>>1163487Потому что такие задачи я встречал только там.
>>1163488В смысле? Это считается сложным? Тут же все просто
>>1163490Для тех, кто идет в NASA - конечно
>>1163500Хорошо, если ты не тролишь, то что конкретно тут сложного?
>>1163504Просто, чтобы понять как работает этот код, нужно быть не меньше, чем чертовым гением.
>>1163508Почему если в примере заменить на var scrollTop = 1 && body; будет NaN а если var scrollTop = body && 1; будет 1?
>>1157660 (OP)Сап, аноны.Как нормально дебажить транспиленный ES6/7/x код?А то меня уже доебало, что в хроме stepover улетает непонятно куда вместо перехода на след строчку, а внутри лямбд проебывается this.
>>1163514Я думаю надо быть Дональдом Кнутом, чтобы ответить на это.
>>1163515Зачем ты транспилишь код на стадии разработки?
>>1163515sourcemaps
>>1163523Так это как раз с сурсмапами.
>>1163522Потому что import from.
>>1163521дело в том что при выводе body выводится объект, но почему то если менять местами то выводит NaN
>>1157660 (OP)Начал учить жс. Понял что он ебанутый какой-то. Посоветуйте годных транспиляторов, пока думаю о бабеле и тайпскрипте?
>>1163525Что с ним?
>>1163527wasm фреймворки уже есть у раста и c#
>>1163531Как это относится к транспиляторам?
еру ыщьуерштп штышву нщг - шеы рфкв ещ учздфшт
>>1163530При чем тут твой пик? Один хер браузер не вдуплит import from.На самом деле хуй знает конечно, мне весь этот ебанутый стек достался в наследство от CSSSR.
>>1163526Ты долго еще будешь тупить, вместо того, чтобы пойти и почитать, как работает оператор && и зачем он нужен?
>>1163541читал я, обчитался и все равно не понимаю. Сначала он натыкается на 1 идет дальше натыкается на body и с хуя ли NaN?
>>1163543>Сначала он натыкается на 1 идет дальшеХуево ты читал. Иди перечитай.
>>1163551логическое И так и работает
>>1163555Как так?
>>1163558идет до первого false
>>1163527бамп
>>1163561Ну или последнего true
>>1163616Ну а почему NaN то? Должен быть [object HtmlBodyElement]
>>1157660 (OP)Вот типичный создатель erlach борды, так что лучше js
>>1163623Во-первых, взгляни ещё раз, в какой момент ты выводишь значение scrollTop'а. Затем, иди по шагам назад и смотри, где, как и какие ты ему значения присваивал. Если не получится, в NASA не возьмём, это твой последний шанс.
>>1163630Я все уже перепробовал прежде чем сюда писать. Если присвоить только body то будет object HtmlBodyElement, если присвоить 1 && body, то NaN, а если body && 1, то 1
>>1163636Жаль, очень жаль. Но не отчаивайтесь, вам всегда будут рады в Сколково! https://codepen.io/anon/pen/xWPved
>>1163639Я понял, там дальше была арифметическая операция над результатом. Всем спасибо, все свободны!
>>1163639Увы, слишком поздно. В качестве наказания следующее ваше собеседование будет провальным. Можете даже не ходить.
>>1163652-> >>1163645
Ладно, пора бросить двач, он мешает мне. Я не зайду в этот тред пока не устроюсь. Не считайте это чем-то типа ньюйиар резолюшенов. Я не отвечу вам пока не устроюсь. Ждите! Это не && где ты после первого проеба все бросаешь, это ||!Ушел въебыватьно сначала поспать
>>1163656Нахуя устраиваться? Иди на фриланс
Что лучше: шаблонные строки или куча плючиков и кавычек?
Посоны, а есть что-то свежее, чтобы сейчас сесть за Node.js? Работая на клиенте я конечно постоянно с ним каким-то боком взаимодействовал, но не хватает системных знаний. Привык учиться по книжкам, нравится логичность подачи материала в них. Но вот смотрю на "Node.js in Action", а ей 100 лет в обед, при том что новые версии ноды выходят очень часто. Поделитесь опытом кто за ноду садился в последние год-полтора - по каким материалам изучали, как набивали руку, как разбирались с best practices.
>>1163699Шаблонные строки гораздо аккуратнее выглядят.
>>1163795Зато кавычки эти изъебистые набирать надо.
>>1163796Ухх бл, это ж на целую тильду нажать надо!
>>1163656Бля в Линуксе && значит строчный цикл While true, а || значит While untrue, что это значит в JS?
>>1163627Внук луковых оладей подрос.
>>1163831чого? И что значит "в Линуксе"?
>>1163791Документация.
>>1163831&& - это И|| - это ИЛИКак в любом другом языке.
>>1163791>Посоны, а есть что-то свежее, чтобы сейчас сесть за Node.js? Работая на клиенте я конечно постоянно с ним каким-то боком взаимодействовал, но не хватает системных знаний. Привык учиться по книжкам, нравится логичность подачи материала в них. Но вот смотрю на "Node.js in Action", а ей 100 лет в обед, при том что новые версии ноды выходят очень часто. Поделитесь опытом кто за ноду садился в последние год-полтора - по каким материалам изучали, как набивали руку, как разбирались с best practices.>На чистой ноде вроде как никто не пишет, поэтому смело выбирай фреймворк для начала, а потом литературу. По Express'у неплохо зашла «Веб-разработка с применением Node и Express. Полноценное использование стека JavaScript» Итана Брауна. *мимо фронтендер, написал пару недель назад API на Express'е с авторизацией и всеми нужными плюшками.
>>1163918>На чистой ноде вроде как никто не пишетА нода разве фреймворком сама по себе не является?
>>1163923Нет конечно. Это просто интерпретатор вне браузера, грубо говоря.
Я использую redux и react. У меня есть две страницы: поиск организаций и добавление организации. На обоих страницах есть одинаковые компоненты: EconomicActivitiesSelect и TaxesCommitteeSelect. Оба подргружают данные по пользовательскому вводу и позволяют выбрать что-то из подгруженных вариантов. Мой store имеет следующую структуру: https://pastebin.com/bCwR2BfBКак сделать так, чтобы в mapStateToProps передавался не весь state, а state.organizationsSearch или state.addOrganization, чтобы можно было сделать так:https://pastebin.com/r8tUuwvE
>>1163941То есть, грубо говоря, компоненту должна передаваться часть state, а какая именно — зависит от того, где он размещён.
>>1163941Пока что додумался только брать нужную часть state в родительском компоненте и спускать данные в свои EconomicActivitiesSelect и TaxesCommiteeSelect как обычные props. Это нормальный подход?
>>1163941Насколько я помню -- neeqaque. А зачем тебе?
А это нормально, то что у меня поведение страницы определяется ее адресом? Или лучше хранить тип сущностей, с которыми идет работа, где-то в другом месте?
>>1163990Насколько я помню, «нормальный подход» — это создать модель предметной области, как здесь:http://www.r-5.org/books/computers/all-js/#/ http://www.r-5.org/files/projects/bookshelf-v10.zipИ в этой модели написать функции, которые в твоём случае назывались бы:organizations()addOrganization()searchOrganization()и так далее.>>1163944Модель в числе прочего имела бы функции-«геттеры», что позволило бы передавать её куда угодно, в любой компонент. И он бы читал из неё данные, как будто они там есть. Как раз в зависимости от класса компонента, его параметров (они же «props» компонента) и от того, где он сейчас размещён.Свои же данные, а тем более «window.sessionStore» модель ото всех скрывает.
>>1164277Да, и у тебя должен быть компонент Router, их много, возьми любой стандартный роутер, он будет вызывать нужные функции или возвращать константы, в зависимости от адреса страницы.
Кто-нибудь может пояснить про Dependency Injection и инверсию зависимостей с примерами на JS? Чет немного не понял нахуя эта вещь нужна. Второй пик - это часть теоретической части на Hexlet по этой теме, но там все равно не особо понял.
>>1164428Нахуй она не нужна в js, не переусложняй.
>>1164428Там русский технический писатель _умничает_, как у них принято. Упивается собой, вместо того, чтобы объяснять предмет.Не читай ничего по программированию на русском, и будет тебе счастье.Алсо, до некоторых вещей надо "дорасти".Т.е. столкнуться с проблемой, для которой данная вещь является решением.
>>1164437Хуямп.Хули ты дурацкие вопросы задаёшь?И причём тут парадигмы и модели, лол?Учи язык.И лучше английский, для начала.
>>1164517Английский я знаю.>И причём тут парадигмы и модели, лол?>Учи язык.Т.е. ты утверждаешь, что можно выучить объектный язык, не понимая модели ООП?Надеюсь, ты такой же программист как и я.
>>1164518Так ты просто троллишь тут, мудила?На хуй иди, бампает он, лол.
Хули у меня телега не работает блядь?
>>1162946Можешь начинать с 0 знаниями, но раз ты всё равно будешь постоянно бегать в доки ЖС, то почему бы не пробежаться по ней сразу, тогда будет меньше беготни в будущем.
>>1164527хуле мусора, хуле мусора, хуле мусора, хуле?
>>1164529А нода меня не испортит, если я с нее начну?
>>1164527https://twitter.com/durov/status/979284965178400769
>>1164559ну да, лучше в твиттере писать, он надежнее))
>>1163879>в Линуксе>Как в любом другом языке.Только не в Баше...
В Баше:| - And|| - If != True&& - If = TrueТипа [ test ] || action [ test ] && {action} (Угу кавычки во втором случае)
>>1164645>| - AndШо несёшь, это пайп.>|| - If != True>&& - If = TrueШо несёшь, это же же ИЛИ и И. Вот те пруф даже с первой же рандомной станицы http://www.tldp.org/LDP/abs/html/ops.html>[ test ] && {action} (Угу кавычки во втором случае) И? action && action тоже можно, чтобы вторая команда выполнялась только при успещном выполнении первой, например.ВВеди в ЖС'е, блин, a == true && console.log("я лох"), точно так же выведется текст. Так работают логические операции, блин.
что сейчас на фронте творится? в прошлом году поглядывал, везде один реакт былсейчас куда ни плюнь - вьючзх реакт уже немодно?
>>1164692За пределами хипстерских влажных фантазий реакт никуда не девался. Но если хочешь гоняться за бородатыми модниками в узких штанишках -- ради бога.
>>1164692Причём тут немодно?Vue гораздо менее opinionated.Проще toolchain.Меньше clutter.И т.д.И т.п.И ещё год назад про него уже все всё поняли, кроме русскоязычных slowpoke.
>>1164774надеюсь это irony, иначе you долбоеб
>>1164779Да это смузи-бородач решил рекламный буклет зачитать вслух, не обращай внимания.
>>1164779Нет, ты.Откуда вы, блядь, лезете?Сказать по делу тебе нечего.Припекло - охлаждай.Зачем засирать тред? Пиздец, сука, просто филиал /b уже тут устроили, программисты-пидоры-дебилы.jpg
>>1164692> сейчас куда ни плюнь - вьюПримеры? Вот BitBucket недавно зарелизил одностраничную версию - там реакт, куда ни плюнь - dropbox, slack, sentry, rollbar - везде реакт.
Котаны, вкатываюсь в react.Короче вопрос по организации this в реализации создания компонента class Timer extends React.Componentвот примерhttps://jsfiddle.net/zpc3hz1x/Класс в ES6 - это просто сахар, под капотом все тоже. В данном случае this это вообще что? Класс рендерит компонент - и этот компонент и есть this?
>>1164789P/S/Контекст в классах нативных мне понятен.А тут чет не пойму, что, куда и окуда.
>>1164792Очевидно же, что this - это именно this - этот экземпляр.С сахаром или без.Вообще, смысл сахара - совместить функцию-конструктор и привязку наследуемого прототипа.Вместо "this.increment = function(){ ... }.bind(this)" в конструкторе надо просто определить метод в классе, раз уж ты решил с сахаром.
>>1157660 (OP)Не жс, а С-- !!!
>>1164434Я думаю заранее разобраться было бы неплохо, тем более что JS это все-лишь ебаный язык.>>1164515Ну хз, объясняет нормально видимо если люди делают практику и не задают вопросов в комментах. Я вроде бы немного понял суть, но без примеров сложно разобраться.
>>1164842> заранееЭто называется "преждевременная оптимизация".И она ничем не лучше преждевременной эякуляции.>объясняет нормальноЗнаешь, я давно уже программирую.И все эти (детские) темы давно уже усвоил и даже успел забыть, лол.Так вот, мне пришлось буквально продираться через текст на твоей картинке. Не понятно вообще нихуя. Левая терминология, манера изложения и т.п.И у меня постоянно такое с русскоязычными текстами. Они просто ни о чём. Даже оригинальные, не говоря уже о переводах.По английски читаю и понимаю гораздо быстрее. При этом, с разговорным у меня не очень, например.
>>1164842Я таки дал себе труд прочесть вот это:https://ru.hexlet.io/courses/js-ddd/lessons/container/theory_unitХуета ни о чём, как я и говорил.Если бы я не имел дело с этой темой раньше, не понял бы вообще ничего.Отдельно стоит отметить бессмысленные примеры кода.Читни вот это вот, хотя-бы, если хочется на русском:https://habrahabr.ru/post/232851/
>>1164858Спс, просто у меня с английским языком пока проблемы (в процессе изучения), поэтому читать могу только какую-то документацию, и то понимаю лишь 40% написанного, остается читать лишь тексты на русском. У меня нет желания прямо влиться и понять - хотя бы иметь общее представление об этом. Спс за статью.
>>1164645>В Баше:>>| - AndОтписал Линусу.
>>1164861>>1164858>>1164847https://www.youtube.com/watch?v=AxZLJA84_74 Вот неплохое видео нашел по этой теме (ну как мне показалось), дай бог здоровья этому человеку.
>>1157660 (OP)Блядь, ну охуеть. Что делать?Предыстория: накатил как всегда ноду/нпм, все вроде заебись, но потом у меня отказался галп работать, причем по ряду причин видимо, я долго с ним пердолился, несколько ошибок пофиксил, в итоге нагуглил, что по дефолту нод и нпм в репозиториях древние. Ну я удалил ноду и нпм, накатал все по гайду, а потом такая залупа. При том команда npm изначально работала после ранее перечисленного, лол, пока я не удалил /usr/lib/node_modules.
>>1164656Ну так речь то не об операторах шла, лол.
>>1164949>речь то не об операторах шлаНо ты в посте привёл операторы. Нет никакого другого значения у этих сочетаний символов.>>1164847>не лучше преждевременной эякуляции.А это плохо, что ли? Отстрелялся за 30 сек и готово, можно обратно в дотку.
>>1164954https://unix.stackexchange.com/questions/24684/confusing-use-of-and-operators
>>1164891Точняк | значит OR.
>>1164428dependency injection - видимо когда пакет в себе и своем коде не содержит вредного и опасного кода, но содержит в себе зависимости, которые могут таковыми быть.Проблема слишком раздута имхо, просто юзай проверенные библиотеки и почаще пиши свои решения и будет тибе щастье
>>1164968>речь не об оператора шла>use of operatorЭто те же самые операторы. Впрочем, так-то почти всё можно назвать операторомhttps://www.gnu.org/software/bash/manual/bashref.html#ListsИ тут их тоже И и ИЛИ называют, пускай и с припиской "... lists". Самое главное: суть их та же, что и при проверке логических условий: в A&&B бесполезно проверять второй операнд на истинность (исполнять команду B), если A не истинно, в то же время, если A истинно, то B необходмо проверить (выполнить команду/выражение) на истинность для получения.Впрочем, вот тут http://pubs.opengroup.org/onlinepubs/009695399/utilities/xcu_chap02.html#tag_02_10 этому оператору дали навание AND_IF, так что частичка истины в твоих "if true" может и есть, я лишь хотел настоять на том, что нет какой-то глобальной разницы между этими и операторами и теми, что в условиях используются (как в JS, так и в баше), это одно и те же логические операции. Ну а ещё, тот >>1163831 вообще цикл умудрился привязать сюда, что уж вот точно бред.>>1164969https://www.gnu.org/software/bash/manual/bashref.html#Pipelines
>>1164847>И у меня постоянно такое с русскоязычными текстами. Они просто ни о чём. Даже оригинальные, не говоря уже о переводах.По английски читаю и понимаю гораздо быстрее. При этом, с разговорным у меня не очень, например.Неистово двачую. По мне всё русскоязычное чуть ли не спизжено, переводы с английского в основном делают коряво, порой ничего не понятно, что имел ввиду автор оригинала. Причем пиздят всё и делают это в разы хуже. >>1164985Спасибо что помог разобраться.
>>1164984Это все, что вам нужно знать о среднем уровне современного джаваскриптера.
>>1164984>dependency injection - видимо когда пакет в себе и своем коде не содержит вредного и опасного кода, но содержит в себе зависимости, которые могут таковыми быть.
Ну услышал человек когда-то о code injection (а то и вовсе одно лишь sql injection), вот и ассоциируется у него теперь это слово исключительно с вредоносностью, что вы накинулись. Что с дурака взять, не бейте его, только насмехайтесь и унижайте.
>>1164991>>1164997>>1164999зато я ебал твою мамашу
>>1164551Нормально все, не слушай дебила сверху, быстрее начнешь ковыряться, быстрей въедешь, удачи.
А объясните по-хардкору дураку, пожалуйста, почему люди так противопоставляют ноду и js (>>1162946, >>1164551 и куча других в каждом треде)? Да и вообще видят в ноде какую-то проблемность или сложность, что ли. Сам язык ведь не отличается, и уж если с чем-то её и противопоставлять, так это с бровзером с DOM'ами и прочим фронтендом, не? Или моя ошибка в том, что я просто не отождествляю javascript с этим самым фронтендом? Писал и то, и другое (личные говноподелия, не по работе), и по сути ведь одна хуйня что там, что тут, просто немного разные вещи делаются.
Ананасы, есть вопрос.Не знаю, правильно ли сделал что написал в тред про JS, так как частично я думаю это и серверную часть должно затрагивать (node.js).Есть множество сервисов, которые предоставляют клиентам возможность встраивания их виджетов к ним на сайт. Как правило процесс встраивания заключается в банальной вставке стороннего скрипта к себе на сайт. Есть два типа таких скриптов://core.sitename.com/api.jsили скажем//api.sitename.com/<uniqid>.jsПоговорим о втором варианте. Просмотрев его код (и код нескольких похожих сервисов), стало понятно, что содержимое там следующее:////// Вначале идёт конфигурация конкретного пользователя////// Далее идёт общий код для всехСоответственно: 1 пользователь = 1 файл js, где внутри пару строчек уникального конфига, и далее общий код для всех.Вопрос следующий.Понятно, что изначально сформировать такой файл просто. Понятно, что если изменилась конфигурация у одного пользователя, то легко заново сформировать такой файл для него.НО! А если у нас меняется что-то в коде, общем для всех (понятно что это изначально отдельный файл, а при создании файла <uniqid>.js идёт конкатенация). Нам что надо в таком случае? Пробегаться по всем таким файлам <uniqid>.js и их переделывать? Я не понимаю. Понятно что так не делается, но я не могу понять как это всё организовано.У меня были мысли что на самом деле множество файлов <uniqid>.js и вовсе нет. Просто когда идёт обращение //api.sitename.com/<uniqid>.js он генерируется скажем так на ходу. Но каким образом? Есть вариант c .htaccess:AddType application/x-httpd-php .jsAddHandler x-httpd-php5 .js<FilesMatch "\.(js|php)$">SetHandler application/x-httpd-php</FilesMatch>Но мне кажется что это костыли. Тем более возникает вопрос кэширования. Может кто-то сталкивался с подобным или объяснит как это всё устроено?
>>1164906nvm накати
>>1165030Я думаю, что такие файлы генерируются и кешируются на той стороне. Т.е. при изменении какой-либо части файл (или все файлы) автоматически генерируется заново.Кешированием на клиентах можно управлять, добавив параметр (номер версии или хеш файла) в URL, типа api.example.com/ololo123.js?v=123456
>>1165030>Тем более возникает вопрос кеширования.Могу вот к этому: >>1165059 добавить ещё, что HTTP заголовки, управляющие кешированием, никто не отменял. Но, параметр-хеш надёжнее.
Легко ли перейти на него зная основы Java? Проще ли он чем Java?
>>1165087Проще.И это вообще другой язык. А название - это был просто маркетинговый ход в своё время.
>>1165030>>1165059>>1165065Бля, только что дошло, какую хуйню я написал - насчёт параметров. Это же в чужие страницы вставляется, лол. Инерция мышления, хули.Ну, значит, только http заголовки.
>>1165030>он генерируется скажем так на ходу. >Но каким образом?Общая идея такова, чтобы сервер при запросе js файлов (всех или некоторых) вызывал какой-то серверный скрипт, который и будет генерировать этот файл или брать уже сгенерированный ранее, проверять, менялось ли что-то и т.д.Подробности зависят от того, чем ты пользуешься на сервере.
>>1165099>все файлы автоматически генерируется заново.То есть если у нас скажем 500 000 пользователей, у нас будет 500 000 файлов js? И при изменении в скажем так ядра, нужно будет все 500 000 файлов сгенерировать заново?Я как-то сомневаюсь что так делается.
>>1165104Ну вот это уже ближе к теме. Я тоже так думаю, но каким образом это делается?Ведь если мы запрашиваем /<uniqueid>.js мы сразу получаем js. Как его сформировать на ходу при запросе?Я как писал ранее нашёл единственный вариант с .htaccess:AddType application/x-httpd-php .jsAddHandler x-httpd-php5 .js<FilesMatch "\.(js|php)$">SetHandler application/x-httpd-php</FilesMatch>То есть js при запросе в определённой папке обрабатывается как php, и отдаёт сформированный новый js. Но я где-то читал что это костыль, и так делать не надо.Есть ли ещё какие-то варианты? На сервере PHP.
>>1165107Это можно по-разному делать.Зависит от того, что дороже - время выполнения запроса (и загрузка сервера) или место на диске.Генерировать заново можно всё сразу, а можно именно по запросу - для конкретного пользователя.Можно использовать что-то вроде include - общую часть читать с диска (брать из памяти, на самом деле), на лету добавлять (генерировать) специфику для пользователя и отдавать всё вместе.Не знаю, как это сделать на PHP, но на Java EE это можно сделать несколькими способами совершенно несложно.
>>1165111>читал что это костыльЭто не костыль (само по себе).Так это и делают - при запросе файла xxx.yyy вызывают скрипт, который генерирует нужное содержимое, выставляет заголовки и отдаёт.Так генерят картинки, например, и вообще что угодно.Как это сделать именно на пхп - спроси в треде по пхп.
>>1165112>>1165113Как на php с точки зрения кода я знаю как сделать. Меня скажем так интересовал больше вопрос архитектуры.Ладно, как я и думал тут два пути. Будем смотреть что лучше. Всем спасибо.
Привет, Анон. Буду благодарен тому кто ответит.Изучил JS и DOM, дальше смотрю в сторону реакта. Но написав пару простых скриптов на чистом JS'e понял что многие свистоперделки банально не реализовать (или можно но будет говнокод), тот же пример - плавный скролл, или различные анимации. Про заёбы с IE и постоянные несовместимости во всяких мелочах молчу. Так же нет многих плагинов, которые есть на JQuery.Так вот вопрос, сначала стоит освоить JQuery и потом перекатываться в реакт и уже писать JS исключительно с помощью JQuery? Нормальная ли это вообще практика JQuery + React?
>>1165217Если хочешь учиться тому, что актуально сейчас -- забудь про jquery. Если только ты не ставишь перед собой задачу поддерживать очень старые браузеры.
>>1165217>освоить JQueryЧего там осваивать, наркоман? Как $ использовать? Даже у самого аутиста максимум неделя уйдёт. Ебашь реакт и не еби нам мозг.
>>1165222Это понятно, я спрашиваю о том нормальная ли практика вообще использовать React и JQuery вместе?>>1165219Хрен с ними с браузерами, но как быть с тысячью написанных под JQuery плагинов? Неужели чтобы реализовать какой-нибудь банальный слайдер при разработке на React нужно его писать с нуля?
>>1165226Если хочешь совмещать MVVVC фреймворк и голый JS и/или JQuery, то Vue.js для этого больше подходит.
>>1165226>Хрен с ними с браузерами, но как быть с тысячью написанных под JQuery плагинов?Тебе сразу вся тысяча нужна? 99% вероятность того, что то, что тебе реально понадобится, реализовано уже сто раз под реакт.>Неужели чтобы реализовать какой-нибудь банальный слайдер при разработке на React нужно его писать с нуля?material-ui тебе в помочь. Ну и гугл научись уже использовать, классная штука, базарю.
>>1165217Мля, анон, зачем ты к у кого-то спрашиваешь разрешения? Бери JQuery да используй на всю катушку. Если увидишь, что он на каком-то этапе перестанет тебе подходить, то просто возьмешь другой инструмент.
>>1165255Вот да.С учётом нынешнего зоопарка в JS-разработке, "нормально" будет всё, что сам считаешь нормальным.Тем более, что требования у всех разные.Например, покажите мне аналог DataTables на React или Angular или на Vue - хуй там ночевал.И я не имею в виду "просто таблицу", а таблицу годную для промышленного применения и десятков тысяч строк данных + вся хуйня, что там наворочена.Также и кукарекания про то, что jQuery "не нужно" - это отличный маркер долбоёба ограниченного человека.
Стоит ли вкатываться во фронтэнд в компанию которая делает лэндинги на вордпресс? Там js и wp знания требуются, ну и немного php. Что скажете? Я только закончил изучение js.
>>1165260Что мешает интегрировать все это? Дохуя ж библ.Ну а так, похер конечно каким инструментом пользуешься. Обычно главное результат.Хотя для меня реакт по сути очень удобный.
>>1165277берут - вкатывайся, официальный опыт не лишним будет.
Sail.js/koa2/fastify?Вакансии, вроде, на первом есть, второй приятнее, а третий быстрее...inb4 экспресс уже знаю
>>1165448Koa раз Express знаешь.
Как вкатиться в TDD с использованием Mocha и Chai? Тестировать надо API.
>>1165277Однозначно нет, то что ты описал это даже хуже чем макакинг. Лучше пиши очердной spa бложик.
>>1165511 Jest
>>1157660 (OP)
>>1165521Я ведь не реакт пердолю :с
>>1164819Спасибо братюнь, но я тупой и не понял.У меня пара вопросов по моему примеру:https://jsfiddle.net/eh3hhq1g/Что то я буксую с пониманием передачи контекста в классах в реакте.
>>1165666С реактом я не работал (почти).Но,>так как внутрь функции <span> this не передан.с чего ты это взял? Смотрел исходники реакта?Как раз, логично было бы, чтобы он привязывал "правильный" this в таких случаях.Ты ведь понимаешь, что "<span>" обрабатывается транспилером и превращается в настоящую фунцию, а потом вызывается с теми аргуметами и this, с какими реакт захочет?А вот "onClick = {this.increment}" - это уже какая-то другая фигня, не могу сказать - читай мануал, смотри исходники.
>>1165666И да, там может быть не bind(this), а call() или apply().
>>1165666Сорян, за русский. Вот почитай, https://habrahabr.ru/post/149516
>>1165666Самофиксюсь -https://jsfiddle.net/3z0b1yv7/коечто кажется понял, но не все. Аноны, помогоите.
>>1165676//с чего ты это взял? Смотрел исходники реакта?Как раз, логично было бы, чтобы он привязывал "правильный" this в таких случаях.Бро, видимо по логике вещей и так и есть. Метод рендер как то передает this во все свои внутренние функции, и его можно подхватить. Поэтому и биндится метод из прототипа прямо внутри функции.//И да, там может быть не bind(this), а call() или apply().Представь, но нет, вот такая конструкция работает у меня.В баттон передается не вызов же метода, а сам метод.<button onClick = {this.increment.bind(this)} >Кнопка</button>
>>1165682>this.increment = this.increment.bind(this);Выглядит как лютый костыль.Так не должно быть (по идее).Но, как лучше - не знаю.Странно, что такая проблема вообще возникает.Ты бы погуглил ещё, возможно, как то вообще иначе всё делается (с учётом специфики реакта).Вообще, в подобных случаях в ES5 часто используют такой фокус, как объявление в функции-конструкторе переменной self:var self = this;И далее, внутри всех методов используют self вместо this.Но, странно, что подобный фокус, получается, нужен и в ES6 тоже.
>>1165690Да блядь, откройте уже для себя стрелочные функции наконец. class MyShiityComponent extends React.Component {....increment = () => {....}render() {return...<Button onClick={this.increment}>MyShittyLabel</Button>}}
>>1165699Ну, вариант со стрелочными функциями я не стал предлагать потому, что они не являются полноценной заменой обычных.А с другой стороны, для методов экземпляра - это то что нужно, да.Не надо сагать в тематике, это некультурно
>>1165699гляньте на идиота, нахуй читаемый код, лучше как на ассемблере, школьник ебучий.
>>1165816Но у него вполне читаемый код...
>>1165841> вполне читаемый кодпо меркам фронтенда
Здравствуйте! Я завершил изучение js и у меня возник вопрос. Какой протокол и метод используют в чатах на приличных сайтах? Я так понял там непрерывное соединение. Я знаю что только iframe имеет поддержку во всех браузерах, но не верю, что его используют например в вк и фейсбук. Мне кажется там используют вэбсокеты. И если так, то как у них это работает в ie версии ниже 10? Ведь на них не будет поддерживаться вебсокеты.
>>1165888> Я завершил изучение jsЭто как?
>>1165890Прочел учебник на learn.javascript.ru
>>1165888SockJS
>>1165900А там внутри получается полифилы?
Посоветуйте либу для построения интерфейса в терминале (а-ля midnight commander, ranger, yast...). Я так понимаю, самое популярное - это blessed, но он выглядит каким-то ебаным монстром, если честно (прозрачность и перетаскивание окошек мышью мне нахуй не сдались).У кого-нибудь есть опыт в этом деле?
>>1165900Его нет на php
>>1165888XHR спасет отца русской демократии
джейсоны , я ньюфажный и розовый , выручите пожалуйста.Вот у меня есть папка с однотиными изображениями , они должный быть в цикле загружены в однотипные же элементы DOM. Галерея , даИ это вызывает кучу идиотских вопросов типа:- Есть ли готовой решение вида "загрузить все файлы из папки в массив или объект или какое то еще хранилище"- Нужно ли мне для этого называть файлы изображений максимально просто типа " 1.jpeg" и тд.Пока всё до чего я додумался это сделать для каждого раздела объект и в нем поля'scr' : '../img/1.jpg','description' : 'какая нибудь подпись под картинку'Это вообще адекватно?Анончики , подскажите пожалуйста . обещаю как научусь сам тоже буду помогать новичкам.
>>1165978примерно так делают обычно:есть некий апи который возвращает айтемы примерно как ты описалGET /api/pictures[ { src: "/img/1.jpg", description: "foto kota"}, { src: "/img/2.jpg", description: "tvoya mamka"},]зачитываешь айтемы любым способому теб будет массив объектов с полями src, descriptionтеперь либо тупо ставишь их в ДОМ, но тогда они сразу начнут загружатся и будет немного хреново, либо ищи js-компонент который умеет подгружать картинки "правильно" - в бэкграунде, чтобы не было блинка при загрузке, по скроллу и тд
Где отдельный загон для бэкенда? Чому тут одни фронтомакаки?Запилил приложуху, на men'е, с регистрацией, RESTом и прочими ништяками, сам, с нуля. До этого запилил бложик-приложение, а также всякие мелкие приложухи с использованием сторонних API.Куда двигаться дальше?
>>1165979Спасибо анон . Буду искать
>>1165991На РАБоту
>>1165991Вот ты хуй. А кинь гит..А то я вот учусь и могу работать только с открытым апи. Делать запросы, посылать чет. А как свой бек на ноде или сервер запустить не могу - ваще не ебу че там и как. Ты где учил эт все, и сколько?
>>1165994А почему бы тебе не запилить базу данных на монге, а потом их возвращать при помощи mongoose?
>>1165999>На РАБотуУ меня 0 опыта, не думаю, что куда-то возьмут, тем более с моими скудными познаниями. Год назад получил диплом погромиста, но нас учили всякой древней хуйне. Вот решил научиться самому пилить веб-приложухи, во фронтенд могу на уровне вёрстки/жквери/ваниллы. >>1166003>кинь гит..Деанон же.>сервер запустить не могуА чего там уметь лел? node %приложениенейм%.js :D>Ты где учил эт все, и сколько?Если ты про men, то по книжкам и мануалам, последние пару месяцев. Но я ж только учусь. Не знаю, что мне сделать такое, чтобы потом возможный работодатель посмотрел в гитхаб и охуел от того, как я могу.
>>1166008Бля, деанон по гиту...ну на дваче уже слишком много шкварок.>А чего там уметь лел? node %приложениенейм%.js :DЯ имел ввиду на хостинг какой-то, со своей бд, чтобы работал как полноценный сайт, а не дерьмецо..Но видимо надо рили учится долго чтоб такое пилить.>последние пару месяцев ты учил бек последние пару месяцев, или вообще все? Хтмл, цсс, фронт и прочее.
>>1165906ищи биндинги к ncurses
>>1166012Спасибо, Капитан. Не ментейнятся они, автор отсылает к вышеозначенному blessed.Ладно, я смотрю тут тредж уровня пхп-треда в целом, так что наверное вопрос не по адресу энивей.
>>1166011Только бэк, а именно men.Но я плотно так задрачивал, часов по 8-10 в сутки т.к. нигде не работаю, почти всё время на это трачу>Хтмл, цсс, фронтЭто я ещё со школы знаю.Ну и в универе нас учили бэку на питоне, но безуспешно. Плюс всякой легаси хуйне типа пхп, жквери, cms-кам разным, типа друпала и джумлы.
Как присвоить значение переменной через функцию?
Подскажите, что почитать посмотреть по ооп для жса. Для фп я уже нашел книжек, а с ооп как быть?
Почему JSON.stringify пропускает некоторые поля при преобразовании?
>>1166039все понял
>>1166031Спроси в Гугле:"use strict" site:file.allitebooks.comИ он тебе найдёт книги по современному ES6.
>>1166027объявить переменную вне функции и присвоить в теле функции. Пили подробнее, я тебя не понял.>>1166008>У меня 0 опыта, не думаю, что куда-то возьмутдай на ХеХе резюме и откликнись на вакансии с небольшими требованиями - авось возьмут, рынок к весне вроде оттаивает.
Аноны, почему document.querySelectorAll( ":hover" ); выводит только nodeList? Как мне сделать так, чтобы он выводил куски разметки то?
А есть ли смысл читать что-то кроме доков и медиума по реакту? Где искать бест практис вообще?
>>1166083Потому что он возвращает объект.Ты вообще наугад тыкаешь что ли? Изучи хотя бы основы js лол.
Как такое говно писать? ладно таблицу я напишу, а как туда вставлять данные?
Я правильно понимаю что при первом запуске тернарный смотрит на переменную в функции, а при следующих уже на nextIndex созданного объекта?Вообще немного смущает эта nextIndex переменная.
>>1166145прост заумно написаный цикл.при каждом вызове счетчик цикла (nextIndex) увеличивается до тех пор пока не достигнет profiles.length, тогда выставляется done=true и все.
>>1166142https://pastebin.com/raw/iUvW4ZfT
>>1166157вот спасибо, спас меня Спасиб что за дауна считаешь, питон я немного знаю
>>1166145Переменная nextIndex не создается в объекте, она создаётся один раз при вызове ProfileIterator в области видимости этой функции, а потом вызовы анонимной функции обращаются к ней через замыкание.
>>1166180Я не могу понять каким образом объявленная переменная становится связанной с profiles[nextIndex]
>>1166039Хотя нет, нихера не понял.
>>1166211Если мне не изменяет память, стрингифай учитывает только own enumerable properties.
>>1166119Я знаю прекрасно основы js
>>1166214Вопрос нормально сформулируй тогда, долбоебушек.
>>1166217>выводит только nodeListположил хуй тебе между глаз, пиздоглазый сын собаки
>>1166221Кого куда выводит, чо ноделист? Что тебя не устраивает и что тебе надо, ты можешь русским языком сказать?
>>1166213И как это свойство сделать enumerable?
>>1166238три точки мб.Подскажите, как научиться норма верстать под реакт? То есть я вроде все умею, весь мдн пролистал, могу подключить сss модулес, стайлд компонентс, материал юи и проч, но как самому-то норм быстро верстать и дизайнить мелкие юишные компоненты? Где примеры найти?
>>1166238Object.defineProperty
>>1166257Пробовал уже.
Все, я все понял.
Подскажите best practices по организации структура проекта для Koa. Пилю REST API.
>>1166275Наконец ты понял, что это не твое!
>>1166250прав в хтмл теге style = ""пора учить основы.
Поясните мне что перспективнее всего учить react, angular или vue.js?
>>1166330jquery
>>1166335А если уже знаю?
>>1166344Тогда фреймворк Vanilla.js
Короче я изменил html, вставив пару новых элементов.Пытаюсь найти их через $("#id"), их нет.Помню раньше с этой хуйней сталкивался, надо как-то по-другому их искать.Как в jquery найти элементы из измененного DOM?Через find() тоже нихуя не находит
>>1166350Скинь код ёбтТут что, гадалки сидят?Поди жквери подключить забыл
>>1166330Вебасм, очевидно же.
>>1166353Смешно пошутил.function createTariffs () { var tariffsURL = "https://url.com"; $.getJSON (tariffsURL, function (data) { $.each (data, function (code_name, tariff) { $ ("#tariffs").append ("<option value='" + JSON.stringify (tariff) + "'>" + tariff.interface_name + " - " + tariff.monthly_payment_rubles + " рублей в месяц.</option>"); }); }); // Инициализируем форму. alert ($ ("html").find ("#tariffs option:last").val ()); $ ("#tariffs").val ($ ("#tariffs").find ("option:last").val ()); $ ("#tariffs").val ($ ("#tariffs").find ("option:last").val ()); }Добавил пару пунктов в селект, эта параша не находится.#tariffs - селект.
>>1166356прочитай шапку, тупой олень
>>1166358Тут вообще код нахуй не нужен блядь, все очевидно, даун тупой.Достаточно того, что я сказал в первом посте.
>>1166360Пошёл нахуй отсюда, дитё.Тебе никто помогать тут не будет.
>>1157660 (OP)поясните, чо перспективней учить Vue или React?
>>1166380>>1166335
>>1166380Vue или Angular 2
>>1166198>становится связанной с profiles[nextIndex] Она не становится связанной. nextIndex сам по себе, это индекс — число. profiles[nextIndex] — это просто обращение к элементу профайла под номером nextIndex.
>>1166214Твой NodeList пустой, ёба.
>>1166360Асинхронность. А теперь пошёл нахуй, агрессивный дурак, как тебе уже сказали.
Ребята, объясните, пожалуйста.Вот https://pastebin.com/1NNXvcm9 код полифилла для метода closest(css).Зачем в конце return null?
>>1166654Чтобы если ничего не нашлось, тебе выдался именно нулл, а не дефолтный undefined, очевидно.
Не могу никак понять зачем нужен и как пользовать тхис. Он указывает на текущий объект, это я понял. Примеры у кантора видел тоже, понимаю как работают, но я вообще не могу вкурить как я его могу применить на практике в своем быдлокоде, а явное указание - это для меня что-то из разряда сверхразума. Это нормально или я совсем даун? Где почитать, чтоб для совсем ебычей разжевали?
Вчера написал тест рандомной функции на рандом. Зачем? Потому что не нашел в гугле такого. Держу в курсе
>>1166226Да он ебнутый по всей видимости.Он выделил элемент в инспекторе, и пытается его выбрать по селектору :hover в консоли через querySelectorAll. Только вдумайтесь в его затею, и осознайте какой пиздец в голове у этого "прекрасно знающего основы js" человека.
>>1166260А они у тебя точно лежат в том объекте, на котором ты пробовал, а не в его прототипе?
>>1166770Да все уже, я разобрался. Там проблема вообще с этим не связана. Просто значение присваивается через асинхронный запрос и объект формируется раньше, чем оно присваивается. Я просто заменил запросы синхронными, это сильно bad practice, или норм?
>>1165816У нас на галере так и принято делать.
>>1166769Такие как он насмотрятся васянских уроков на ютубе, научаться копипастить, и уже считают себя гуру фронтенда. А на деле не могут селектор в доме выбрать.Как же хорошо, что нам в ВУЗе разжевали ванильку, хоть это и было сто лет назад.
>>1165816А this.methodName = this.methodName.bind(this) дохуя читаемый код, довен?
>>1166777>Я просто заменил запросы синхронными, это сильно bad practice, или норм?Это оче плохо, лучше переделай нормально.
>>1166777Дали человеку промисы, дали async/await — нет, хочу говно жрать!
>>1166798И в чем принципиальная разница?
>>1157660 (OP)Существуют ли функции для деления и отнимания больших чисел в виде строк,как например вот эта: https://jsfiddle.net/mtsL1k2x/5/Можно ли написать так же кратко, используя какой-то быстрый алгоритм рассчёта?У меня есть ещё функция для перемножения чисел, если хотите - дам.
>>1166728если инглиш знаешь, скачай курс с рутрекера understanding weird parts, там лучше чем в Канторе пояснено (кантора я не понял в свое время, а их легко). Оттуда тупо 2 главы можешь посмотреть, одна про контекст запуска функций, скоуп и евент луп, вторая про объекты и функции.
>>1166809Ну теперь сходи узнай, что существуют не только целые числа. Потом узнай про IEEE 754и что такое действительно большие числа, а не твоя детская поделка.
Джачаны, стоит ли мешать flexbox с grid? Или на всякий случай сделать по старинке страницы с display:block и т.д? С Grid'ом и flex'ом все удобно и легко, поэтому боюсь.
>>1166858А еще поясните, фреймворки были созданы чтобы быстрее работу делать?
Почему у меня при каждом ajax-запросе заново грузится favicon.ico?
>>1167046потому что может себе позволить
>>1166083а на что у тебя мышь наведена, когда сей запрос выполняется?>>1166858вай нот, зачем тогда их прикрутили - на любоваться же.>>1166876если код вбивать - то да
>>1166819>Ну теперь сходи узнай, что существуют не только целые числа.Любое дробное число, если это не бесконечная дробь (периодическая или непериодическая),можно представить в виде N/(1⋅10^R), где N - целое, R - число знаков после точки.Поэтому, меня интересуют целые числа.>Потом узнай про IEEE 754и что такое действительно большие числа.наименьшее отличное от нуля положительное число, которое может быть представленокак 1 × 10^-101, а самым большим 9999999 × 10^90 (9,999999 × 10^96)Тот код может оперировать намного большими числами, в виде строк.Максимальное число для безопасной работы в JS - это MAX_SAFE_INTEGER2^53-1 = 9007199254740991.>твоя детская поделкаСходи лучше узнай что такое - длинная арифметика.Интересуют алгоритмы быстрого вычитания длинного большего от длинного меньшего,с целочисленным положительным результатом,а также алгоритм быстрого деления с остатком - с целыми числами в результатеили же нулём, если остатка нет.Я знаю, что есть BigInteger, но инклюдить его не очень хочется,а перелопатить код, чтоб найти функции долгое и нудное занятие. Они могут зависеть от других.А в ссылке, что я закинул сюда - там лишь две простые функции.
Думаю над выбором между TypeScript и Flow.Предпочитаю чтобы nullable типов было явным, в TS такая опция есть, но не по-умолчанию.Поясните, использование strictNullChecks в TS может сломать декларации типов библиотек, которые писались без strictNullChecks?
Подскажите, здесь аррай получается передается по ссылке? и fs ссылается на тот же массив из кложюра? или создается новый арр после ретерна и ссылка идет только на изменившийся i?
>>1167192Посмотрел презентацию, все говорят мол хватит поддерживать старые браузеры, нужно двигаться вперед. Но ведь без поддержки никак, да и производительности, но технологии от W3 намного лучше по оптимизации и производительности, и они вернули старый вид разметки, который был удобен, да и работает лучше.Просто делаю магазин, с гридами и флексами прям удобно делать все, не нужно кучу коробок создавать, чтобы их флотить, никаких больше паддингов, никаких width: 30%. Уже встроенный фрейворк.Как ты думаешь, всунут ли Grid или Flexbox в другие фреймворки? Если уже не всунули? Я нуб просто.
>>1167233в юишные фреймворки всунули. Есть же компоненты в материал-юи типа грида, они стопроц на флексах с медиа кваери под любую ширину. Да и бутстап вроде тоже на флексах уже
>>1167229Буду ли я прав, если скажу, что кложюры - это частный случай работы скоуп чейнаа, когда функция, которая вызвала экзикьюшнл контекст проебуется со стэка, но ее переменные, на которые остались ссылки, остаютяс в памяти?
>>1167238При этом кложюр работает только если переменные физически находятся снаружи в коде? А зис наоборот присваивается там, где функцию инвокят?
>>1167233мне кажется что говном мамонта в современном интернете пользоваться просто не получится, даже какой-нибудь оперой-12, не говоря про ие. так что можешь сильно не переживать или влепить плашку.в бутстрапе юзается, и в других скорее всего тоже
Насколько реально фрилансить на жаваскрипте?Мне много не надо, я студент и деньги нужны только на игоры и подобные небольшие траты, это не вопрос выживания, просто какие-нибудь даже 10-20$ за неделю(по полчаса-час) по вечерам мне пригодятся, но главное что хоть какой-то реальный опыт в чем-то будет, пока в вузе я задрочу математику. Вообще опыт у меня в программировании довольно большой для первого курса(кресты, опенгл, жаву и юнити юзал), но максимум что я делал - небольшие игры.Я посмотрел на фрилансер.ком что требуется от жсбояр - в основном "ай нид а сайт" за 100$, реакт, расширения для хрома, "пофикси вот это". Сейчас у жаваскрипта я немного знаю синтаксис и написал какую-то хуйню с jquery ui с минимальной версткой страницы(просто кнопки всчкие расставил и пару виджетов от жквери). Я правильно понимаю что надо позадротить хорошо реакт(который пойдет ка кдля запиливани и попробовать сделать расширения для хрома и можно приступать к фрилансу?
>>1167301на 100% реально, на cms еще реальнее, просто гугли биржи и смотри на тамошних индусов.
>>1166788ну вы долбоебы что я могу сказать. Код должен читаться без комментариев и должен быть без сложных структур которые заставляют задумываться. Т.е ты читаешь код, видишь конструкцию зависаешь вспоминаешь и читаешь дальше и так по 200 раз в место прямого пути ветвистый. А когда дочитал до конца функции уже устаешь.Я когда стал писать так свой код, комменты даже редко стал оставлять потому-что и так понятно что он делает из названий методов + разделение ответственности, слабо связанный код и явных конструкций типа function() {} в место закорючек которые отвлекают от себя внимание. Код в результате легко читается. А если там вложенные данные, массив состоящий из объектов у которых свойства - методы создаваемые в циклах или еще что-нибудь, запарьшься читать подобное[{{}=>[{}[][][][][]{}]}].И еще пример, вот ты читаешь книгу, она бывает насыщена всякими терминами и сложными выражениями которые несут закодированный смысл (zip архив ирл). А бывают легкие книги, где раскрыты все мысли, но текста больше, прикол в том что они и читаются быстрее и понятнее и не утомляют
>>1164991>Это все, что вам нужно знать о среднем уровне современного джаваскриптера.>Вообще-то я синьор
>>1167336хуй я клал на то что ты, неуч, видишь ли некоторые конструкции не понимаешь. Учи паттерны и потом приходи.
Ну что посоны, как копируете инстансы классов, если у них есть функции, а? А? Попробуйте с помощью Object.assign, охуеете, что оно не умеет копировать МЕТОДЫ КЛАССА БЛЯДЬ.
>>1167408Spread operator? let copy = {...source}
>>1167432Спред оператор - сахар для Object.assign. Вся та же хуйня, оно не копирует методы у инстанса класса. Я просто хуею с этого.
>>1167442Только так — https://repl.it/repls/WildPitifulEvaluationПочему — в интернете почитаешь. Методы в прототипе лежат, если вкратце, которые не enumerable.
>>1167459>который
>>1167459Нахуя мне читать оправдания жалких жабаскриптовских макак, которые только и умеют, что решать IMMEDIATE проблемы и не могут на шаг вперёд предусмотреть последствия своих действий?
Добро анон подскажи, как можно проэмулировать реализацию методов функций - call, apply, bind? Вообще не понимаю как это сделать...
>>1167408Откуда вы лезете такие.
>>1167476Не читай. Тогда зачем ты тут? Алсо, в ЖС так-то нет классов.
>>1167517bind && (apply || call) можно проэмулировать при наличии нативной call || apply.
>>1167517колл можно проэмулировать оператором () и постановкой функции в нужный объект и запуск оттуда, кроме (), кола и эплая других способов запуска функции нет, все они ссылаются на внутренний метод prototype.[[call]] вроде как. Еще их можно друг через друга переписать.
>>1167539зис при запуске присваивается либо сам глобальный, либо через дот нотэйшн, иначе никак если не ошибаюсь
>>1167543Как это можно проэмулировать через apply на таком примере?https://jsfiddle.net/tL8pu2kt/2/
>>1167476Как же заебали шизики, которые обсирают фичу_нейм в язык_нейм, хотя не знают других языков и как эта фича в них устроена.Внезапно, в большинстве ОПП-языков обычно ты сам должен для класса определить метод copy(), который обычно включает в себя вызов, блять, конструктора класса.
>>1157660 (OP)меня унижают на хабре за использование жиквери, шпасите
>>1167608И что с этого? В других языках даже методы из третьих либ не делают такую хуйню, какую творит копировалка из родной либы жабаскрипта. Не копировать сука методы, что это за пиздец вообще? Почему они до сих пор не пофиксили или не заинтродюсили нормальный вызов, который делал бы нормальную копию инстансов класса, если уж классы в жабаскрипте есть?
>>1167578https://jsfiddle.net/tL8pu2kt/7/Но тоже самое можно и без apply.см пикрелетейд. но это не будет работать, если thisArg запечатан. тогда нужен только нативный экземпляр apply\call.А при наличии call или apply - bind эмулируется совершенно тривиально.
>>1167633Жри что дают, мразь, и не выёбывайся. Не нравится — пошёл нахуй. Ебал твою мать.
>>1167633Все просто. ты ебануй даун зажатый в концепциях одной единственно концепции. Неспособный понять ничего кроме.
>>1167638Да я уже понял, что походу объявлять функции в жабаскрипте - это себе в ногу стрелять, нужно юзать только инстанс функции. Создателям надо вообще нахуй выпилить их, раз они нормально вообще нигде не работают: то блядь this теряют, то сука не копируются. Вообще охуеть.
>>1167633Таким уебкам как ты даже помогать нет желания.В js классы в отличии от твоих зашоренных мировоззрений - это такие же полноценные объекты, как и все остальное. Методы твоего "инстанса" не лежат в твоем инстансе, они лежат в другом объекте. И более того, они не перечисляемы. Ты используешь метод, для КОПИРОВАНИЯ СОБСТВЕННЫХ СВОЙСТВ ОБЪЕКТА, и ожидаешь, что скопируются НЕ СОБСТВЕННЫЕ. Ты умственно-неполноценный?
>>1167641Они работают как раз нормально, как и должны.Это ты работаешь не нормально, пытаясь натянуть сову на глобус.Схуяли ты вообще решил, что везде должно быть так, как ты привык где-то в другом месте? Ты не видишь дальше собтсвенного носа.
>>1167642И как, часто тебя выручал такой Object.assign, который не копирует методы класса в новый объект? Дохуя логично же!Вот, в общем, костыль против такой хуйни:const copiedInstance = Object.assign( Object.create( Object.getPrototypeOf(correspondingInstance)), correspondingInstance);где correspondingInstance - инстанс класса.
>>1167653Тебе весь тред говорят, что Object.assign не предназначен для того, для чего ты его используешь. Ты нихуя не понимаешь и продолжаешь тянуть свою лямку.То, что ты изобразил - это не копирование. Твой новый объект точно так же зависим от цепочки прототипов, и от изменений в ней.Короче, хуй с тобой.
>>1167653А Классовые объекты вообще нельзя копировать, так,к ак это делаешь ты. Ни водном языке. Потмоу что они блядь должны конструироваться. И если копироваться, то специальными, внутренними конструкторами. Это тебе не структуры данных, дебил ебанный. Иди попробуй поклониируй DOM Ноды или Файловые дескрипторы, представленные объектами.
>>1167653>И как, часто тебя выручал такой Object.assign, который не копирует методы класса в новый объект? Дохуя логично же!Дохуй. У Object.assing совершенно иной юзкейс. Он предназначен для ассигнирования хэш-мапов, а не объектов. Например когда не было дефолтных значений аргументов функций, он использовался повсеместно.
Чё там по новой cпеке на есму слышно? Будут веселые изменения?
>>1167694Она же разрабатывается всеми подряд на гитхабе, блядь. Сходи да посмотри.
На случай важных переговоров.
>>1167735И в чём прикол отображать число большим количеством цифр, чем обеспечиваемая точность?мимо
>>1167735Типа кривой механизм обработки плавающих чисел? Я уже забыл чет про экспоненты в си.>>1167736Да ими особо никто и не пользуется если вести речь про обычные программы, но в большинстве случаев они очень полезны для некоторых вещей. Математики широко используют для вычислений, всякие ученые там.
>>1167749А вспомнил, в Си точность теряется с неопределенным типом после превышения значения экспоненты E7 или как то там.
>>1167634У тебя пример логике противоречит. Если ты передашь зис сам, то он всегда будет верным и нет смысла его проверять и вообще зисом называть. Просто ссылка на объект. Методы другого объекта ты все равно не сможешь использовать на этом объекте, как бы ты не исхитрялся передавать. Мб я не прав. Я просто даже не вижу у тебя строчки зис = зисарг или чего-то такого.
>>1167634Хотя смотри че нашел, это из жквери, немного похоже на то, что ты хочешь
ПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.htmlПЕРЕКАТ https://2ch.hk/pr/res/1167958.html
>>1167760>то он всегда будет верным и нет смысла его проверятьЭто ты не понмаешь как оно работает. Переданный this может быть null, undefined и тогда он должен указыать на global, или может быть примитивом числом\строкой\булом, и тогда его надо завернуть во временный объект иначе ничего не заработает.
>>1167760>>1167968Это про thisArg, а у самой функции ccall настоящий this должен быть функцией. И его тоже надо проверять.
Где найти код дефолтных событий браузера? Хочу посмотреть дефолтную реализацию onSubmit для разных форм и не могу найти - гугл выдаёт всякие учебники и обработчики событий от васянов.
>>1166858Флекскоробки – определенно юзать, только с автопрефиксером!Гриды же слишком прогрессивно, для прода рано.мимо ванилла-верстала
>>1170763ок