Ссылка на прошлый тред: >>843519 (OP)Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.Часто задаваемые вопросы:https://github.com/xxxwww/js-thread/blob/master/Wiki/faq.mdСписок материалов для изучения:https://github.com/xxxwww/js-thread/blob/master/Wiki/learn.mdСписок инструментов и направления JS-разработки:https://github.com/xxxwww/js-thread/blob/master/Wiki/tools.mdКонфа /pr/ в Slack:https://invite-me-to-2chpr.herokuapp.com/JS-конфа в телеграме:https://telegram.me/jsthreadНЕ КОПИРУЙ КОД ПРЯМО В ТРЕД! Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
В прошлом не ответили, перекачу сюдаВечер в хату. Тред не читал. Сам пишу бэк на пиздоне и решил выучить жабаскрипт что бы для разнообразия хуярить на ноде. Все вроде для начала понятно, но мучает вопрос библиотек. Можете дать список самых модных и стильных либ для написания бэка под ноду. Интересует также либы для работы с БД(mongo,postgre,redis). Заранее спасибо
>>849875> либ для написания бэка под нодуExpress и Koa сейчас мейнстрим> либы для работы с БД> mongomongoose> postgresequelize> redishttp://redis.io/clients#nodejs
>>849875Бери express и гугли то, что тебе нужно, например "expressjs authentication" — найдешь все необходимые либы.Для БД возьми Sequelize.
>>849899Не пизди, Horizon мейнстрим, Koa и тем более Express устарели.
>>849911Один раз засветился на HN и с тех пор о нем ни одной новости — для мейнстрима слабовато. Прото-хипстерская поделка.
>>849917Хотя нет, 5+к звезд на жидхабе о чем-то говорят. Надо бы взглянуть.
Предлагают прямо в коде писать типа "если есть авторизация, то рендерить, а иначе null" https://github.com/joshgeller/react-redux-jwt-auth-exampleНо при таком подходе остается возможность, путем анализа кода, понять структуру защищаемых данных (например что в админке виден список ФИО + телефон), структуру закрытых api и т.д - это тоже уязвимость же!Какие есть варианты ограничивать доступ к исходному коду компонентов, пользоваться которыми у текущего пользователя нет прав?
>>849973Обычно делают отдельно админку, отдельно пользовательский интерфейс
>>849976Ок, а если у нас "админка" (просто некое приложение), а там пользователи с разными привилегиями?
>>849980На бэке в зависимости от уровня юзера отдавать тольке те данные которые ему нужны
>>849980Если прям так уж критично скрыть представление, то порежь нужные части панели на куски и проверяй роль перед отдачей жс кода требуемой части на стороне сервераА вообще в таком случае спа теряет всякий смысл
Может кто посоветовать годные видеоуроки по JS/jquery/ajax вот это все?
1. Посмотрел IDE/редактор в вашем гайде - не нашёл там саблайма.Для жс его не используют? 2. Вообще есть где-нибудь гайд для sublime text 3, чтобы его настроить под js? Проверку синтаксиса, дебаг, консоль какую-нибудь и всё в этом роде.3. В чём вы пишите на js?Как организована ваша рабочая среда?
>>850058Возьми VS Code, там много что из коробки — статический анализатор, умное автодополнение, emmet, git, дебаг под ноду. Уже год использую его с плагином eslint (встроенный анализ отключит) и горя не знаю. А в саблайм еще миллион плагинов поставить надо прежде чем он нормально забегает.
>>850059умеет его eslint сразу линтить и фиксить при сохранении как скажем в том же atom?
>>850059Уже думал об этом, потому что перекатываюсь из C# и привык к студии.но что-то крякнутой не нашёл.
>>850062По-моему да, но я не пользуюсь, он в реалтайме же все подсвечивает и я сразу правлю.>>850064Он бесплатный и кроссплатформенный. VS Code это не VS.
>>850066блять, неужели м$ впервые сделали что-то бесплатное
Аноны, как-нибудь на сервере можно разрешить запросы с HTTPS на твоё HTTP?Думал, Access-Control-Allow-Origin тут поможет, но Mixed content всё-равно во все поля.Запросы посылаются через XHR, да и этот тред первый открыт был.
>>850086>запросы с HTTPS на твоё HTTPСпрашиваю потому, что, как я понял, браузер в случае AJAX-запроса с HTTPS на HTTP даже этот запрос не делает - просто валит XHR с ошибкой в консоль.Алсо, нашёл что-то похожее, Content-Security-Policy, но, как я, опять таки, понял, это вообще не из той оперы.
>>850086>>850088HTTP-сервер твой или сторонний? А тебя с CORS проблема, похоже, а не с протоколами
>>850096HTTP - мой, HTTPS - сторонний.С CORS как раз таки всё в порядке, ибо куки не нужны, как и сложные запросы - помогает> Access-Control-Allow-Origin: *. Но этот заголовок не помогает с протоколом.
>>849899да пашол ты нахой, експресс устаревает и новых проектов на нем все меньшеКоа пиарит один жидоторгаш своими курсами за $, но это тоже такое.>>849911Вот этого двачагу, а вообще го набирает обороты если хочется модненький фреймворк
>>850167> експресс устареваетЛол блятьhttp://expressjs.com/en/guide/migrating-5.html> новых проектов на нем все меньшеИменно поэтому он второй в топе npm. С чего ты вообще взял эту хуйню, пруфануть чем-то можешь?> Коа пиарит один жидоторгаш своими курсами за $, но это тоже такое.Чего блять? Какие ещё курсы? У коа и экспресса один автор - tj> Вот этого двачагуТы sails не видел, что ли? Хоризон абсолютно тоже самое, только ещё облако своё впихнуть хотят
>>850186руби и пхп тоже постоянно обновляются, но это ни о чем не говоритя сужу по it рынку, который постоянно мониторю в силу профессии
>>850068Ты не поверишь, он еще и попенсорсный.Как по мне, VS Code лучше чем Atom.Не забудь добавить в настройки:```"telemetry.enableCrashReporter": false,"telemetry.enableTelemetry": false```
>>8500582.Ставишь вот это по инструкции, https://packagecontrol.io/, потом сам выберешь пакеты которые тебе нужны.3. Сумблайм, иногда Атом.
>>850220Ссори анонче, я это дерьмо уже снёс, он иногда даже пустой без проекты запускается по 10 секунд.В итоге накатил саблайм, темы под него просто охуенные, накатил несколько визуальных плагинов к нему, автокомплит, проверку синтаксиса, фтп, думаю на первых порах хватит, потом перекачусь на пхпшторм.Вообще, судя по разным гайдам, урокам, отзывам так и работает большинство сб3 + пхпшторм. Даже с плагинами сб3 номрально открывается и не тормозит, выделение памяти вообще маленькое.
Есть подобная залупень для винды?https://www.decosoftware.com/
Почему Брекетс не видит внешнего скрипта?
Анон, помоги, плес. В общем, есть сайт: http://home-hotel.su/оттуда надо спиздить весь каталог и поиск по нему, дабы вставить в свой сайт. Как это сделать? В /web/ не отвечает никто, лол
> https://jsfiddle.net/8rp248yp/А как ты развлекаешься, /pr/? Потом ещё Switch напишу, ибо намного сложнее.
>>850295>Потом ещё Switch напишуСукаблять, только сейчас закончил:> https://jsfiddle.net/779gvts5/.
>>850287пропитонить надо
Есть объект, у него есть поле. Как на изменение значения этого поля повесить событие?
>>850364http://jsbin.com/wopaparipu/edit?js,console
>>850382Спасиб.
Киньте пикчу с кучей коллбеки в где на фоне хипстер с длинными волосами потирает щеки.
>>850397>куча коллбеков>хипстерКак там с ES5 живется?
>>850398Пикчу скинь пидор.
>>850397
>>850428Спасибо няш :3
>>850428>эти неухоженные волосы>эта футболка>эти лысые щекиТак это ж не хипстер, а гомопатлач!
Подскажите пожалуйста, как в чистой джаве прочитать текстовый файл и как создать новый? Но "открытие" файла должно быть не через <input>, где руками выбирать, а чтоб скрипт сам подхватывал рядом лежащий файл.Грубо говоря, у меня в одной папке лежат файлы index.html, script.js, text.txt. Нужно чтоб при открытии index.html скрипт автоматом подтягивал текст на страницу. И чтоб можно было его изменить и сохранить в text1.txt.
>>850449>в чистой джавев смысле, в чистом джаваскрипте
>>850449Только через клиент - никак, для этого нужен сервер
>>850451Не совсем понял. Я имею ввиду, если файлы локально все находятся. То есть работать без интернета, а чисто на компе.
>>850453Через браузер нельзя, такая политика безопасности. Смотри в сторону всяких штук, вроде Electron
>>850428Йоу, а это не Маракеш часом на фотке то?https://youtu.be/OVvmVbBBwtA
>>850285Перед </body> укажи на скрипт.
>>850287Request + Cheerio
>>850502async defer можно приписать
Как лучше на ноде сделать некое подобие системы плагинов, как для компилируемых языков?Т.е. запускается приложение, сканирует все файлы в папке /plugins, и, если есть в них точка входа, загружает в память, при этом методы из плагина становятся доступными для приложения. Чтобы достаточно было закинуть новый скрипт в папку, реализующий, например, поддержку нового формата для экспорта данных, и не править нигде более исходники и секции импорта.
>>850530>запускается приложение, сканирует все файлы в папке /plugins, и, если есть в них точка входа, загружает в память, при этом методы из плагина становятся доступными для приложенияТы только-что сам всё написал.
>>850532А в рантайме такое провернуть можно?Чтобы был "хотлоад" модулей?У меня сорт оф архитектурная проблема, лол.Я не пойму, куда загружать импортированный плагин/модуль.В глобальный массив, например? А оттуда дергать методы, обходя forEach'ем?Или в объект засовывать, создавая ключи по имени загруженного файла.Есть ли какие проекты с примерами подобного, где импорт модулей не зашит в исходник жестко.?
>>850535>А в рантайме такое провернуть можно?Ты какой-то странный. Нода и так загружают все в рантайме.
>>850535>>850530Какой-то ты пиздец поехавший. Есть npm, он грузит всё в папку node_modules. Для динамического подключения модулей-плагинов к твоему модулю ты можешь обходить папку и искать названия модулей с определенной приставкойmodulename-plugin-*, и подключать эти плагины. Но это пидорство, и так делают только конченные уёбки, потому что это нихуя не очевидно, и установка плагина обязует тебя его использовать.
>>850535>где импорт модулей не зашит в исходник жестко.?Ты больной ублюдок. ты знаешь об этом?Ты понимаешь, что зашитый импорт модулей о котором ты говоришь, это блять просто функция. Ты можешь сам ее написать, как тебе угодно.Ты вообще головой сука умеешь думать? Неужели не способен предстваить в своей голове порядок загрузки и выполнения кода из файла? Нахуй ты вообще пришел писать на этом языке, мудак?Читаем файл. Тебе сука рассказать как читают файлы с диска?Евалим считанную строку. Ты мудак понимаешь, что такое евал? Но если ты настолько дибил, что не умеешь додуматься до таких блядь очевидностейЮ то рассказывать тебе о то что эвал в лоб это хуево, и надо сначала скомпилировать прочитанную строку с помощью созданной vm, и потом выполнить когда нужно и в каком нужно констексте.Иди нахуй, блядь. Просто иди нахуйТочка входа у него, сука. Методы по форич. Поприходят со своим недоразвитым сознанием из хуй пойми каких языков, а потом бегают кричат, что тут все неправильно и непонятно. Магл ебаный.
>>850569Речь не о модулях, подтягиваемых из npm реестра шла, хоть это и не особо принципиально.Суть в том, что есть главскрипт app.js, висящий в памяти (демонизированный, лол) и выполняющий обработку данных, и есть папка plugins, в которую я кидаю скрипт, дополняющий функционал главскрипта, например, export-pds.js. Я понял, что можно подписаться к ивентам из fs.watch(), поэтому, как только я заброшу в папку plugins новый скрипт, app.js будет в курсе и зареквайрит его.>>850575Что ты так разбушевался, няша? :3>Ты понимаешь, что зашитый импорт модулей о котором ты говоришь, это блять просто функция. Ты можешь сам ее написать, как тебе угодно.Да.>Читаем файл. Тебе сука рассказать как читают файлы с диска?>Евалим считанную строку. Ты мудак понимаешь, что такое евал?Зачем все это, если за меня это сделает require?"Точка входа" - не более, чем аналогия с dll'ками.В моем случае это может быть некое экспортируемое значение из js-плагина, просто для того, чтобы левый js файл в папке plugins не импортировался.В принципе, все что я искал, уместилось в один сниппет:https://coderwall.com/p/cmz24w/node-js-code-snippet-dynamically-load-all-javascript-in-a-folderПросто хотелось посмотреть более развернутый вариант такого подхода. "Бест практиклз", если изволите.
>>850658> Я понял, что можно подписаться к ивентам из fs.watch(), поэтому, как только я заброшу в папку plugins новый скрипт, app.js будет в курсе и зареквайрит его.Но зачем так делать? Чем тебе так принципиально подтягивание плагинов без рестарта?
>>850662Ладно, без абстракщины.Я написал плугинизированный парсер нескольких сайтов. Причем, плагины - и есть экстракторы данных, которые триггерят ивенты опосля завершения своей работы и экспортируют данные в унифицированном виде, а главный скрипт подписывается на эти ивенты и уже выполняет окончательные мероприятия с извлеченными данными.Все работает, но мне не нравится ситуация, при которой приходится все время править app.js чтобы зареквайрить новый плагин-парсер.>Чем тебе так принципиально подтягивание плагинов без рестарта?Да ничем, в общем-то. Это уже просто изъебство, но знания о том, как это сделать лучше, не помешают.
Анон, вот почему Promise не полностью продуманные?Они ведь писались с try-catch, так почему нет метода .finally, блять?!Анон, ты понимаешь, насколько нужно быть долбоёбом, чтобы проебать такую годную фичу?Из-за этого только и не перевожу все AJAX'ы на fetch - некуда пилить функцию .onDone, сука!
>>850716На кой хуй тебе .finally и чем он лучше .then?
>>850722>чем он лучше .then?Ну хуй знает.. например тем, что он будет срабатывать в любом, блять, случае?! Вне зависимости от состояния.
>>850722И кстати, .finally мог-бы полностью останавливать Promise - если вызван метод, значит, дальше ничего вешаться не должно.
На документе стоит событие $(document).ready();В ready(); происходят чики-брики с использованием jQuery.Только вот ready(); вызывается раньше, чем успеет загрузиться сам jQuery. В хроме и опере такого нет. Тем не менее, $(window).on('load',) я использовать не могу, потому что на странице тонна говна, которая никогда не прогрузится. Есть какие-нибудь опции?
>>850731В <script> стоит атрибут async?
>>850733Неа
>>850735Запили куда-нибудь.Может, у тебя там что случайно вызывается?
>>850726>>850727И зачем это нужно? Твой код может либо выполниться, либо не выполниться
Посоны, помогите, пожалуйста.Есть пример:http://dnzl.ru/view_post.php?id=271Он выводит элементарные два значения из БД.Как эти значения можно вывести в виде таблицы?Например две колонки, шапка и снизу два этих значения.Когда вставляю HTML код, он не выводит вообще никаких значений.
Привет. Если ты мастер или профессионал web - разработки, и у тебя есть свободное время и терпение слушать тупые вопросы тогда ты можешь мне помочь! Напиши сюда
>>850748Иди в одну из конф
>>850750какую ????
>>850751В шапку загляни. Про слак не знаю, но в телеге тебе точно отвечать будут
>>850748Ну давай, я весь внимание.
>>850737Заметил, что если написать$(window).on('load', alert('loaded'));, то все работает.Но если написать$(window).on('load',function () { alert('loaded'); });То сразу перестает.Чоза хуйня?
>>850752Спасибо добрый человек
>>850756Это пиздец, господа. Абсолютный, сука, пиздец.Пошёл нахуй, говна кусок.
>>850758Два чаю.У меня уже не хватает эмоций в этих интернетах.
>>850755Сможешь обьяснить что такое Аксессоры и атрибуты свойств и побыть моим сенсеем на некоторое время ???
>>850761>Аксессоры Ну ахуеть теперь. Им теперь надо объяснять get-оператор.
>>8507561. Ты вешаешь обработчик на событие onLoad. Оно выстреливает, когда страница совсем-совсем загрузилась, загрузились все скрипты, все стили, все картинки по 10Мб. Если тебе нужно событие готовности DOM, то в jQuery это $(document).ready2. На самом деле твой $(window).on('load', alert('loaded'));нихуа не работает. Следи за руками:alert - функция.alert('loaded') - результат вызова функции с аргументом 'loaded' (вызов происходит в момент "первичного" исполнения скрипта, непосредственно после его загрузки).Читани, что такое callback
Господа, как лучше реализовать кучу тоггл-ивентов в редаксе?Например есть страница, там 5-10-20 статей с содержанием (изначально скрытым), тайтлом и кнопочкой, по нажатию на которую раскрывается содержание.Подробно разжевывать не прошу, просто намекните, я тупой.
>>8507763 строки на jQuery и в продакшн (обработчик вешается на контейнер офкорз)Нахуй redux не нужен тут.
>>850764я знаю что такое get
>>850779Действительно, пойду наебашу говна на жиквери в проекте на реакте с редаксом.
>>850782>наебашу говна>в проекте на реакте А что, говно испортится от добавления говна?
>>850774Да я понимаю. Я засунул весь свой код в on('load',), он работает, но опять же, не в фаерфоксе. Затем я засунул функцию в рекурсивный setTimeout, который проверяет, загрузился ли jQuery.Все заработало, но затем я убрал alert('Не работает') из случая, где jQuery не загрузился, перед запуском нового таймера и alert('Заработало') из случая, где он загрузился и попер мой код и код снова перестал работать., функция просто рекурсивно ждет и потом выполняется, jQuery не подключается при этом. Затем я вставил алерт в удачный случай, ничего не происходит. Но стоило поставить алерт в неудачный случай, как после вывода алерта из неудачного слуая все заработало как магия! Убрал - перестало работать. Вставил обратно - работает.Чозахуиня
Тупой кун ИТТ. Не бейте, пожалуйста.Сидел я долго, сычевал, не знал, чем же мне заниматься в будущем. Вот, решил научится быдлокодить. Пробовал учить руби, но не пошло. Да и чувствовал, что не то учу.Вот, подумал, что жаваскрипт — то, что надо.Итак, я полный нуб, ньюфаг и лох.Вот, взял я пару книг из фака. Начинаю читать и сразу же не понимаю, где мне пробовать писать код и смотреть на его результаты.В руби когда пытался въехать, писал в текстовом редакторе с подсветкой кода, выполнялись "проги" в командной строке.Реквестирую мини-гайд для совсем лохов и слоупоков: как начинать учить яваскрипт, что для этого требуется (в смысле книги, инструменты). Спасибо.
>>850788https://github.com/xxxwww/js-thread/blob/master/Wiki/faq.md
>>850784Я тебя понял, спасибо за дельный совет.
>>850803Совет в том, что если уж начал купаться в говне - не бойся мыть голову поносом.Удачи.
>>850787Выложи код куда-нибудь, на https://jsfiddle.net/, например
>>850502>>850528Спасибо). Перешел на вебсторм.
>>850747скинь код свой, в котором не работает
Привет аноны, я к вам с вопросом.Например есть объект, мы хотим вывести в консоли все его содержимое. var betman = { firstname: 'Brus', lastname: 'Wayne', getAll: function(){ return this.firstname + ' ' this.lastname}Делаем for:for (var prop in betman) { console.log(prop + ":" + betman[prop]})}Вот так выводит что надо. Вопрос почему пишет undefined: undefined если поставить betman.prop? Ведь по сути это объект и мы можем достать его через точку? А с квадратными скобками кажется только массивы перечисляются. Или я запутался где то?
>>850906плюс пропустил напечатать>getAll: function(){ return this.firstname + ' ' + this.lastname
>>850906Во-первых, забудь блядь про for inВо-вторых, у тебя в переменной prop название свойтсва в виде строки. Т.е. мы обращаемся не к самоу batman.prop а например к batman.firstname . prop == 'firstname'. И вот чтобы можно было обратиться мы и должны использовать типа вычисляемое свойство
>>850908Что вместо for in использовать? Чем он плох?
>>850910при for in нужно делать проверку hasOwnProperty, пушо оператор in тянет поля и из прототипа тоже.юзай for of. вот этот итерирует нормально, базарю
>>850917из какого прототипа, он тут пустой ведь
>>850788> как начинать учить яваскрипт, что для этого требуетсяВъебать мочи, сожрать говна.
$(document).ready(function(){ $("#comment_list").on("click", ".reply", function(event){ event.preventDefault(); var form = $("#comment_form").clone(true); if ($(this).children().find(form).size()) return $(form).slideToggle('slow'); form.find('.parent').val($(this).parent().parent().attr('id')); $(this).parent().append(form); }); });Как клонировать объект только 1 раз? а то куча форм вылезает на каждый клик
Поясните, пожалуйста, ньюфагу о пользе Jquery, если она жрёт больше ресурсов чем обычный JS. Понятно, что некоторые вещи проще реализовать с помощью данной библиотеки, но есть ли явные преимущества?
>>850972Нахуя тебе её клонировать? Перемещай под коммент при клике "ответить".
>>850988>о пользе JqueryЕсли ты из 2003 - годный способ найти что-то на странице.Если ты из 2014 - годный способ сделать всё кроссбраузерно.Если ты хуй клал на старые браузеры, то jQuery тебе нужна только чтобы брать некоторые функции из исходников.
>>850788Может быть тебе для начинала стоит начать с изучения html и css? А так, почитай learn javascript ru - тут хорошо разобраны основные моменты.
>>850788>как начинать учить яваскриптКак говорится в FAQ, начинать нужно строго с learn.javascript.ru - лучше учебника "с нуля" ты не найдёшь от слова совсем.>что для этого требуется>книгиКниги нужны будут когда выучишь основы. Тащемта, лично мне немного понравилась "JavaScript: Шаблоны".>>что для этого требуется>инструментыСмотря под что будешь изучать.Если это будет клиентский JS - тебе хватит годного браузера типа Огнелиса или на крайний случай Хрома. Хотя браузер сойдёт и на время изучения основ самого языка, до распределения на серверный и клиентский.Если это серверный или прикладной JS - установи себе NodeJS и пользуйся консолью.
>>851002>хватит годного браузера Хрома.фикс
>>851007Огнелис же лучше хрома в плане новых стандартов. По крайней мере, ES-стандартов.
>>851009https://kangax.github.io/compat-table/es6/
>>851010Хммм, и правда.Когда я впервые услышал про const, фича уже была в FF, но отсутствовала в Хроме.Когда тестировал деструктуризацию - тоже самое.И стрелочные функции.Ну и ладно, это хорошо.
>>851002клитор сцука, ты заипал уже пиарицца.Учебников годных много, если человек не может в англ, то тут уже ни какие твои учебники не помогут.
>>851036А нахуя ему читать учебники на английском, если есть нормальные альтернативы?Это как вместо MDN и е.п. полностью читать документацию к фиче ради порядка параметров.
>>850919Во первых не пустой. У объекта созданного литералом {} аж целых два протопипа по умолчанию, как минимум! это null и Object.prototypeВо втоорых, уверен ли ты, что в рантайме в котором ты будешь запускать скрипт, цепочка прототипов не изменена и объекту Object.prototype не подсунуты ПЕРЕЧИСЛЯЕМЫЕ свойства? или что между Object.prototype и null в цепочку не вставленна еще сотня другая объектов?Во-вторых, тот анон забыл сказать, что из цепочки прототипов вернуться только перечисляемые свойства. Свойства с аттрибутом enumerable:false не вернуться. Собственно, они и из твоего объектане вернуться, если они не перечисляемы. Еще, для получения имен свойств объекта (как всех, так только перечисляемых), есть специальные методы Object.keys и Object.getOwnPropertyNames.
>>850917>оператор in тянет поля и из прототипа тожеБудто что-то плохое. Не нравится - делай numerable: false в дескрипторе, блять!
>>850992Она же тогда исчезнет снизу, не? Мне нужно, чтобы она и с низу оставалась, и под комментом.
>>851063Тогда клонируй сразу в .ready(), если она точно понадобиться.
>>851063Создай ее клон заранее, и помести в нужное место с display:none, а в обработчике просто показывай ее, когда надо.
>>850988Обертки для всего и вся. Удобный ajax, теперь и в промисах. Короткий в записи и быстрый поиск через разные селекторы.
Вот, запаковал в класс функционал загрузки js плагинов, с возможностью подгрузки при добавлении нового файла в папку.// инстанцируем классconst pluginLoader = new PluginLoader('plugins');// загружаем плагиныpluginLoader.preLoad(console.dir);// включаем хотлоадpluginLoader.hotLoad(console.dir);ХЗ, правда, зачем я это сделал, но работает как надо.
>>851099А ты неплох. Запили на GitHub потом.
Есть таблица. В цикле for надо пройтись по строкам и найти в каждой вторую ячейку, чтобы в дальнейшем добавить туда hrml-код методом append().Ищу так $('tbody tr') строку на каждой итерации, как дальше, средставами jQuery (без getElementsByTagName) найти вторую ячейку в этой строке?
>>851111Я вас презираю.
>>851116Давай, по делу говори. Each не подходит, если что.
>>851099А Object.values не поможет сократить код в методе callPluginMethods?
>>851129Одно дело, когда приходят за помощью в неочивидных вещах, или для понимания каких-то принципов. Другое, когда, блядь, спрашивают о том, что гуглится быстрее, чем ожидание ответа итт.
>>851131Смотри манямирок не сломай, искатель.
>>851132> 2016> Гуглить на русскомПроиграл.> Найти третий элемент таблицыДа ты и на русском гуглить не умеешь.
>>851132Да ты конченый просто. Иди учи css селекторы, мудак.
>>851137Еще что посоветуешь?
>>851130>Object.valuesЯ только после твоих слов вспомнил, что пора обновить ноду.Но даже последняя стабильная поддерживает O.values() только с флагом harmony.
>>851138Посоветую убиться головой о стену, если ты до сих пор не умеешь составить css селектор, который сразу тебе выберет все вторые ячейки каждой строки таблицы.
>>851138Может стоит задуматься что что-то не так?http://jsbin.com/lutawaliji/edit?js,outputмимо
>>851138ОЧКО РАЗРАБОТАНО
>>849864 (OP)Дратути! Абсолютно не шарю в вебе, но очень нужно маленькую задачку решить, какзалось бы, такую простую, но такую сложную для незнакомого с вебом.Допустим, имею ссылку в 1С на судебное дело на сайте arbitr.ru, например, http://kad.arbitr.ru/Card/f751e0b7-5cf8-4c10-9843-4f02c640120c . Нужно нажать на странице этой ссылки на кнопку "Электронное дело" , и скачать (по сути получить ссылки на) все pdf'ы из появившегося списка. То есть, имея ссылку на судебное дело, нужно получить ссылки на все pdf'ы из негоАдрес страницы, зараза, при этом не меняется, иначе проблемы бы не было, я бы просто в html-коде нашёл алгоритмом ссылки на pdf'ы.Помогите пожалуйста, чем могёте.
>>851148CasperJS
>>851151Мне уже дали совет типа автоматизировать действие - кликнуть на кнопку. Но это, выяснилось, означает, что прямо перед глазами пользователя запустится бровзер, там что-то будет происходить, а мне бы очень хотелось без запускания бровзера, как бы запросом к базе на сервере чтоли, где эти pdfы хранятся, или к сайту, что-то типа как тут:https://toster.ru/q/284736http://infostart.ru/public/527228/Возможно ли прямо из 1С post-запросом или типа чем-нибудь таким? CasperJS ведь запустит бровзер перед глазами юзера?
>>851142И как я добавлю туда РАЗНОЕ? Нельзя же запихнуть в аппенд массив, прокручивающийся однорвеменно с селектором.
>>851155>прямо перед глазами пользователя запустится бровзерPhantomJS, тащемта, headless.
>>851158Пиздец товарищи.
>>851148Анон, помогите тестануть функцию для определения JSON:> https://jsfiddle.net/qqxocwyp/. По мере допиливания буду кидать сюда новые ссылки.Сейчас интересует вызов типа> '123'.isJSON();, ибо только-что попробовал написать регулярку для определения цифр в JSON-формате. Кажется, получилось, ибо мои тесты она прошла.Анон, протестируй функцию, желательно пока-что с ударением на цифры. Если что не так - пиши :з
>>851155Раз тебе уже известно API, то в чем проблема сгенерировать ссылки на пдфки?
>>851158КУРСЫ сука. Он проходил КУРСЫ.КУУУУРСЫ.Наглядный пример квалицифкации специалистов от КУРСОВ
>>851163Каких специалистов? Я вообще первый раз в jquery столкнулся, потому что в ебучем tampermonkey то, что мне надо сделать, средствами жаваскрипта не будет работать.
>>851163Двачую этого.
>>851165>в tampermonkey>не будет работать>средствами жаваскрипта
>>851161Случайно ответил.
>>851162Нет, единственнное что мне вебщик с зп 145К сказал - на питоне автоматизируйТочная фраза: "питон, селениум, пип - и вот тебе счастье для написания парсера"API я не знаю, и Питон не знаю:(
упсАнон, помогите тестануть функцию для определения JSON:> https://jsfiddle.net/qqxocwyp/. По мере допиливания буду кидать сюда новые ссылки.Сейчас интересует вызов типа> '123'.isJSON();, ибо только-что попробовал написать регулярку для определения цифр в JSON-формате. Кажется, получилось, ибо мои тесты она прошла.Анон, протестируй функцию, желательно пока-что с ударением на цифры. Если что не так - пиши :з
>>851165Ты ведь настолько тупой, что даже не можешь понять, что ты тупой.То есть вот в твоем стартовом сообщении, ты СУМЕЛ как-то пройтись по коллекции выбранных тобою строк, и спрашивал,к ак в кажой выбрать вторую ячейку.За тебя, блядь, написали тебе селектор, которыцй сразу тебе дает все вторые ячейки. Но ты настолько ТВЕРДОЛОБЫЙ ИДИОТ, что не можешь пройтись по ним так же, как проходился по строкам, которые выбирал сам в начале. Ты даже название метода блядь знаешь и сам его писал выше.Скажи, как ты живешь таким?
>>851168Ну вот, например, создают две одинаковые кнопки:$('#form').append('<button type="button" class="select" id="myButton">Выделить</button>');document.getElementById('form').innerHTML+='<button type="button" class="select" id="myButton">Выделить</button>';$("#myButton").click(checkAll);Одна будет работать, вторая - нет.
>>851176АХАХХАХАХХАХАХХАХАХАХАХАХАХАХАХ
>>851176>tampermonkey>не уметь в @requireТы такой дебил, что просто пиздец. Иди нахуй отсюда, блять, средний IQ по треду падает.
>>851176Сука, дай мне ссылку на свои курсы. Дай мне молю.
>>851176>innerHTML+=У меня глаз от тебя дёргается.
>>851179Какой require когда он по id пытается выбрать два элемента.
>>851175Селектор выбирает все ячейки, таким образом, решение, предложенное аноном с моим циклом будет на каждом шаге к каждой втрой ячейке прибавлять что-либо.>>851180По ксс-селекторам? html academy.>>851184$("#myButton") будет только на один элемент действовать?
>>851186http://jsbin.com/cikogekolo/edit?js,console,output
>>851188но у jq есть each
>>851189Ну блядь не знаю я что там у jq есть. Я на ванилле всегда писал
>>851188Ага, селектор тоже как массив можно, спасибо.>>851137>>851141>>851160>>851163>>851175>>851177А ты свою мамашу об стену уеби, только срать в тред и можешь, клоун. Надеюсь, у тебя просто был тяжелый день в школе, и да, научись читать, ебаный даун, я просил без each.
>>851191Пожалуйста. Я ответил, чтобы ты только ушел наконец
>>851191>>851192А, ну и да забыл добавить. Для tampermonkey я писал тоже пару вещей на ванилле. Не знаю нахуй там jq
>>851190Нахуя тебе тогда $ и append если на ваниле. То и пиши на ваниле.
>>851191Ты такое ничтожество, что мне тебя даже жаль.
>>851194потому что этому телу надо было именно на jq блядь. Написал бы я ему нормально - он бы сказал: "Но я же просил на jq, сука"
анон, тут недавно постили ссылку на вебтолкс в дискорде,поделитесь плз, найти не могу
Поясните за замыкания, позязя, только доступно, если можно, на пальцах, для даунов, или ссылку, где можно просветиться на сей счёт
>>851225замыкание - функция, которая видит только аргументы той функции, в которой она живет.
>>851225Зачем тебе вообще программирование, если ты даун? На learn.javascript.ru всё разжевали, уёбывай.
>>851246клитор, пшел вон пес!Лучше бы по существу отвечал, чем пиарил свою помойку
>>851249Ты со своим клитором уже заебалмимо
Кто-нибудь что-нибудь знает об этом?http://boot2webkit.org/
>>851261http://meta.nuanti.com/В гугле что ль забанили?> Nuanti announces Boot2WebKit Operating System initiative
>>851249Ты тут конкретно всех уже доебал, что он тебе сделал. на деньги кинул?
>>851235>>851246Спасибо.В общих чертах конечно понятно, что замыкания — функция, которая получает ссылку на функцию, в контексте которой была создана, вместе со всеми её аргументами, но когда доходит до конкретных примеров реализации — понимаешь, что нихуя не понимаешь.Ну да ладно, и на том спасибо
>>851235Любая функция будет видеть аргументы функции, в которой она объявлена. Тут дело не в специфичности в области видимости переменных в жс, а в сохранении контекста функции после ее вызова и возможности доступа к нему.>>851225Если ты и вправду даун, то изучение у тебя займет довольно много времени. Замыкания это средство для инкапсуляции, причем не сильно удобное и понятное. В ES6 есть средства которые делают это лучше. Пока ты будешь разбираться со всякой хуетой она уже морально устареет.
>>851279> которая получает ссылку на функциюНе совсем. Поиск переменной идет вверх по уровням областей видимости. Если ты обращаешься к переменной, которая обявлена во внешней функции, то эта переменая остается доступна даже тогда, когда ее функция уже отработала.
>>851289А еще есть скомпилированные блоки кода с возможностью выполнить их в кастомном контексте.
>>851288> Пока ты будешь разбираться со всякой хуетой она уже морально устареет.Ты предлагаешь ему писать на JS, не понимая замыканий и контекста вызовов? Может ты ещё скажешь, что прототипы изучать не нужно, ведь есть ES6? По-моему, если у человека туго с мозгами, то пусть не лезет в программирование. Другим программистам меньше говна разгребать.
>>851333Классы в шестом проще чем прототипы для новичка, кстати.
>>851288>>851289Ещё раз спасибо. Статью на хабре ещё нашёл — в башке начинает проясняться, вроде. Ещё где-нибудь почитаю про замыкания
Аноны, почему не работает замена строки?
>>851388Ебать дибил, просто пиздец.Скажи мне, что ты троллишь, прошу..строки - примитив, .replace возвращает новую строку
>>851388Куда ты в buffer'ы лезешь, сука, без основных знаний?!
>>851404У него жеж буфер - это просто именование функции, а не истинно арийский Buffer.Misleading название, согласен, что-нибудь типа clipboard лучше бы подошло.
>>851360Нифига, полностью как работают если новичек - хер проссышь, пока с прототипами не уяснишь
Считается ли зашкваром использовать ассерты в продакшн коде для верификации данных (например, респонсы по запросу к АПИ)? Или ассерты используют строго в коде для тестирования?
>>851441Да, это зашквар. В продакшене нужно юзать нормальный хендлер ошибок
анон, что скажешь по backbone.js? Насколько прост в освоении?Какая инфа по нему более толковая?
Поясните, какие альтернативы помимо js'a есть для React Native? Интересуюсь этой технологией, но на джсе писать не хочется.
>>851446Но он же уже устарел.
>>851183Что не так? Все же работает норм.
>>851452Иди пиши на джаве приложеньки
Аноны, помогите разобраться. Я совсем нуб в этом.https://ideone.com/0XIC91
>>851458>для React Native
>>851456иди читай заново Кантора или Клитора как говорил заебавший всех анонНо поскольку тебе будет скорее всего лень лови ссылку. Только читай внимательноhttp://learn.javascript.ru/basic-dom-node-properties#innerhtml-содержимое-элементамимо
>>851460>React Native> не JavaScript
>>851459> помогити, я даже не пытаюсь что-то понятьИщи программиста и плати ему, в чём проблема?
Хочу вкатиться в android dev, с чего начать? Могу в ванильный JS(back:node+sails/front: jquery, в сторону фремворков некогда смотреть было, не думаю что сложно), так же могу в php.
>>851482Посмотри Ionic, неплохая штука.
>>851482Ну ясен пень от javascript не избавиться,но если использовать языки компилирующиеся в него?
>>851446Хороший фреймворк особенно для тех кто еще не работал с фреймворками. Не слушай мамкиных диванов в этом треде, на нем все то пишут проекты, он все то обновляется (20 дней назад судя по гитхабу). Самое забавное, что все вкатывальщики бросились сейчас за реакт, хотя толком ни жс, ни другие фреймворки не знают и даже понятия не имеют как там все работает и почему.
>>851490Смотря какой Ionic, Ionic Native очевидно лучше, из-за производительности. Правда не знаю, на какой стадии он сейчас находится. Еще React Native, самый мейнстрим.
>>851492Так открой список языков, компилирующихся в жс, отфильтруй те, которые тебе не нравятся, а для оставшихся поищи $langName + react-native.
>>851495Вангую, через пару лет всех заебут горы фреймворков и библиотек и все перейдут на Elm, Purescript и подобное.
>>851495Не надо говорить за всех, окей? Самого раздражает когда люди толком не научились писать на ванилле, но лезут во фреймворки. Но вот чтобы садиться за реакт вообще не обязательно разбираться в том же бэкбоне.
>>851501Языки и библиотеки/фрейморки — понятия ортогональные. В любом языке найдется хотя бы два стула. В PureScript есть Pux, React и Halogen — на какой сам сядешь, на какой вкатывальщика посадишь?
>>851501Пиздец ты хипстор.Сам-то на Эльме пишешь или просто выебнуться решил, мол, "смотрите какой я нихуево прогрессивный, на блидинг эдже технологий нахожусь, а вы все быдло"?
>>851501"за" -- во многих зарубежных вузах computer scienceты изучают little shemer и sicp, а также трогают хацкель.Но функциональнщина это дело такое, не всем по душе. Скорее уж webassembly придет и порядок наведет.
>>851556>Скорее уж webassembly придет и порядок наведетЛет через 10
>>851556Только как он наведет порядок? Браузерное API принципиально не поменяется, ассемблер даст лишь некоторый прирост в скорости, который не повлияет на то, как ведется разработка.Для использования иных языков в вебе уже все есть.
Пацаны, объясните для тупого почему в первом случае контекст вызова привязывается, а во втором - нет, ведь порядок выполнения: 1) логическое выражение, по которому возвращается выражение для true, 2) вызов метода объекта user через оператор точка, при котором по идее и происходит привязывание контекста.Или же почему первый вариант тогда срабатывает?http://plnkr.co/edit/Ja7DvpRqcZACSE7Nsisw?p=info
>>851594Ой всё, лол. Надо было дорешать все задачи до конца. Короче, если внутри скобок находится вызов метода объекта, то скобки как бы ничего не решают, если под скобками иное выражение, вроде тернарного оператор, то контекст вызова не сохраняется. Часть спецификации, нужно просто принять. Хуево зделоли на мой взгляд, не знаю где это может пригодиться, больше похоже на ляп проектирования.
>>851594Интересный вопрос, пришлось лезть в стандарт.Краткая суть: синтаксисически "выражение" и "(выражение)" являются равноценными.Если интересно, можешь найти описание PrimaryExpression в ECMA-262.
>>851604В пятой версии есть пояснение:>The principal motivation for this is so that operators such as delete and typeof may be applied to parenthesised expressions.Почему это нужно для delete понятно. Почему без этого не должен работать typeof мне не ясно.
>>851604И в чем тут ляп? Есть референс, пока он не ресолвится - контекст не теряется. Вроде все норм.
Один хуй здесь дохуя верстальщиков а в /web/ все мертвоПоясните, флексбоксы все еще зашквар юзать или уже можно?IE8 без поддержки, 11 с багами.
>>851628У верстальщиков свой загон в воркаче.
>>851628>уже можнонужноВерстало-фронты в wrk сидят кстати
Сап. Допустим есть файл, который в данный момент не доступен по указанному url, но скоро там появится. Нужно редиректнуть страницу на него как только это произойдёт.Пробовал делать через XMLHttpRequest:var check = new XMLHttpRequest();check.open('GET', url, true);check.onreadystatechange = function() { if (check.readyState == 4) { if((check.status == 200) || (check.status == 0)) { document.location.href=url; check.send(null) } }};check.send(null);Но вот только эта асинхронность ёбаная не работает нихуя. А синхронный вариант работает, но он deprecated. Как можно запилить периодические проверки до момента когда документ по url станет доступен?
Привет о великий мастер. Такой вопрос я вроде бы изучил основы js но писать программы так и не научился вроде бы нашел какие то левые упражнения, но вот не пойму как начать их решать. Если ты адыкват то ответь что мне делать. Заранее спс !
>>851655Иди на codewars и решай задачи. Если придумал решение, оно проходит тесты, значит решил задачу.
>>851655Что в твоем понимании "изучил основы js"?
>>851501Ну тут ты загнул. Хаскель и лисп никуда не денутся и проекты на них будут, но жс скорей всего пойдет в сторону ооп, т.е type script.
>>851502Ты епанутый сцуко((Для того чтобы писать хуйню на реакте/первом ангуляре вообще можно жс не знать. Просмотреть мельком клитора как местные долбоебы делают и идти устраиваться разработчиком реакта, лол. Хули, есть стаковерфлоу и оттуда копипасть ума не надо.
>>851675а, так это ты то чмо с клитором. ну-ну
>>851659бля он же на англ....
>>851675Какой смысл первого ангуляра сейчас?Хочу сделать себе админку для джангопроекта через rest на реакте.
>>851664на подобе что такое функции и т д
>>851682И что же такое функции?
>>851682>функции>и т.д.и т.д.
>>851684Под "т.д." он, вероятно, подразумевал ооп.>>851682С таким багожом можешь сразу работать идти, в процессе доучишься.>>851675Товарищ, как бы, намекает
>>851684пшшш ясно блять..
>>851682Бери учебник и занимайся по нему нормально. того же Клитора, тьфу, Кантора или еще какой-нибудь с упражнениями. Можешь задачки порешать как тебе уже советовали. Ты судя по всему еще ниче и не знаешь толком.
>>851680Ты охуел? А ну быра англ учить, маленький ты говна кусочек! в google translate переводи
>>851688ну расскажи что я должен знать чтобы уже норм писать код ????
>>851689ы
>>851691ъ
>>851688так то я у него и учусь вот там я и основы прошел js. Недавно открыл data чтобы посмотреть что да как, после этого как ты знаешь есть задания которые я низуя не решил ну только легкие....
>>851678мамко твоя чмо с клитором..>>851681все то поддерживается, куча проектов на нем, которые не торопятся переписывать на вторую версию, все вопросы по нему уже отвечены
>>851645Бамп
>>851645Я новичок, и ещё не дошёл до всяких промисов(хз подходит он тебе или нет), но из того, что уже прочитал может попробуешь через setInterval проверять? Ну или рекурсивный setTimeout?
посовету годного чтива по nodejs, а то надоели поверхностные видео курсы
>>851729>посоветуй
>>851728Я мартышка, я только на jQuery умею. Попахивает ебаными костылями, но по идее таким образом можно пингануть че угодно.https://jsfiddle.net/7zex9b3f/А что пишет по поводу асинхронного XMLHttpRequest ? Оно же не просто так не работает?
>>851755>>851703
>>851645простой способ - это заюзать таймер. Если у тебя есть доступ к серверу, то наверное можно лонг пулинг на клиенте сделать.
>>851755>>851728>>851774Всем спасибо. Иногда бывает полезно почитать доки. Асинхронно у XMLHttpRequest на один запрос приходит только один ответ, т.е. onreadystatechange срабатывает только при смене readyState на 4, что происходит один раз за запрос. Когда разобрался сделал функцию, которая через setInterval() раз в 30 сек делает .open() и .send().Если кому интересно - вот код http://pastebin.com/H9s9dF1P
>>851787onreadystatechange срабатывает не только на 4, а на стейты 0-4 (т.е. эвент сработает 4 раза, просто ты в скрипте ловишь только стейт 4, которая сигналит за конец запроса)
>>851553Я его только учить начал, прикольная штука, рекомендую, очень простой и понятный язык. Еще собираюсь освоить Progressive Web App, буду на блиндинг эдж технологиях, а вы все быдло.
>>851803Ну я просто сначала думал что оно срабатывает не на .readyState, а на .status и при этом мониторит его непрерывно, а не один раз после подключения.
Привет, анон.Как из числа получить массив чисел? Например, есть 123, а получаем [1,2,3]. Пробовал split но почему то не работает на числах. Array.from выдает [] пустой массив.
>>851818Прямо буквально на числах не работает?зато вот так работает:(12345).toString().split('')
>>851824Я хочу сложить сумму чисел числа, для этого и хотел массив. Если с toString складывать то вместо 6 (1 + 2 + 3) получится "123"
>>851836https://learn.javascript.ru/types-conversion
>>851844на тебе еще заумной магии:(12345).toString().split('').map((x) => +x);
тут кто-то делился ссылкой на web -talks в discord, можете инвайт кинуть ?
>>851850ага сяпки, докастую дальше сам)
Всю "литературу" до ES6 можно смело игнорировать?
>>851856Не-не-не. Докастовывать не надо.Прочитай про приведение типов и делай сумму цифр чисел тем методом, которым собирался изначально.Выебываться и решать в одну строчку потом будешь.
Ничего не пропустил?UI ->mapDispathToProps(dispatch) ->Action ->{ middleware enhancers } ->{ type: CONST, payload: {} } ->Reducer ->{ rootReducer } ->Store ->{ state } ->mapStateToProps(state) ->this.props ->const { reducer } = this.props ->UI
>>851866Обычно литература по ES6 базируется на прошлых версиях ES и поясняет за изменения. Если найдешь литературу с нуля поясняющую за ES на основе ES6, то да, в принципе можно игнорить, но стандарты я советую всё же прочесть, чтобы понимать что/как и почему именно так
>>851731>>851729https://nodejs.org/docs/latest/api/
>>851850Так ведь reduce вместо map b ltkj c rjywjv/Только вот обострется оп, когда заебашит таким образом число с переполнением.
>>851947Да, reduce, нужен. Но не было вопроса как посчитать сумму с помощью метода массива, был вопрос как получить массив цифр числа trollfaceИ вряд ли работа с экстра большими числами в JS такая частая ситуация. Ну... по крайней мере на фронте.
>>849864 (OP)ребзя, такой вопрос.они тут всё усложняют и в любом языке можно найти столько, эээ, тонкостей, или на самом деле всё так?https://hackernoon.com/how-it-feels-to-learn-javascript-in-2016-d3a717dd577f#.qs3x3of86
>>851957Не читай подобных хуесосов. Они зачем-то перечисляют кучу технологий, чтобы создать видимость беспорядочности и сложности. Им, видите ли, не нравится, что есть выбор среди нескольких инструментов для одной задачи.
>>851957В любом языке есть простое ядро, которое можно выучить за час. Этого ядра достаточно, чтобы писать рабочий код.В то же время, в любом языке есть куча инструментов, которые позволяют не просто писать код, а делать это продуктивно.И никто не говорит, что для всякого проекта требуется обмазываться всеми технологиями сразу. Для пары кнопок хватит jQuery. Проект становится сложнее — усложняется и стек. Это происходит в любом языке.И зачем я злоупотребляю квантором всеобщности?
>>851954Я же не про экстра большие числа как таковые, а про его ебанутое жедание, получать массив чисел именно из числа, а не из строки например.С определенного момента число с большим количеством знаков у него не приведтся к строке, как он этого будет ожидать, там будет экспонента
>>851985Ну кстати если стоит задача посчитать цифры числа, то форма записи не сильно принципиальна, так как E23 - это всего лишь 1 с 23 нулями. То есть нужны цифры до "е" единичка после.Но таки да - одним приведением к строке уже не обойдешься.
>>851992*посчитать сумму цифр.
Блять, пытаюсь осилить дом на лернджаваскрипт. Как же туго заходит, это пиздец. Есть ли годные материалы по этому разделу? Можно в виде видео.
>>852024>Блять, пытаюсь осилить дом на лернджаваскриптНо зачем, лол.Пусть манипуляциями с домом займется Реакт лучше сразу приучать себя мыслить в компонентном ключе, а ты сконцетрируйся на логике работы своего приложения.
>>852024Вот этот >>852027 дело говорит. Я тебе вообще советую записываться на курсы по жс (наверху нажми на курсы). Начни с базового, потом возьми по реакту или ангуляру. Сейчас запустили курс по второму ангуляру. Если пройдешь первую часть и курс по тайпскрипту, то получишь скидку 3 тысячи.
>>852027>Пусть манипуляциями с домом займется Реакт А рефакторингом всего кода после тебя для серверного рендеринга - Вася. Или СЕО нинужна.
>>852049>Или СЕО нинужнаExactly. Етаму миру не хватает человеко-ориентированного контента. SE-optimised говна уже наелись, спасибо.
>>852045
>>852049Для серверного рендеринга манипуляции с домом тем более не нужны.Для нормального компонента просто делаешь renderToString, добавляет дегидрацию/регидрацию — и никакой рефакторинг не требуется.
>>852228Поясните что за серверный рендеринг? Это типа бекенд не нужОн?
>>849864 (OP)подскажите годные библиотеки наподоби typescript, чтобы и на жс писать и опп использовать нормальный
>>852273>typescript>опп Блять, иди нахуй!
>>852273Кроме Mootools нет ничего, что ООП реализует. А, ну redux еще в плане отправки сообщений.
Привет, ананасы.Вы - моя последняя надежда.Такая проблема, есть выпадающее меню, реализованное с помощью hover display:block. Проблема в том, что на мобильных девайсах меню появляется если тапнуть по нему (указателя мыши то нет). И не исчезает если не тапнуть по любой другой области страницы. Хотелось бы, чтобы по тапу на любом из пунктов меню - оно таки исчезало (ссылки на якоря, страница не перезагружается). Но для настольных платформ с мышью, оно продолжало реагировать на наведение курсора.Как это это можно реализовать?
>>852300> чтобы по тапу на любом из пунктов меню - оно таки исчезалоТак и делать.
>>851981Посмотрел бы я на тебя, как ты ядро плюсов за час выучил.Да что там ядро, хотя бы синтаксис и семантику.
>>852302Ты имеешь ввиду обработчик onclick? Но тогда оно не будет появляться при наведении на нее курсора, после первого клика.
>>852306Это еще почему
>>852310css:.nav:hover {display: block}js:document.getElementById('nav').onclick = function() { var elems = document.querySelectorAll('.nav li'); for (var i = 0; i < elems.length; i++) { elem =elems; elem.style.display='none'; }; } Как решить данную проблему?
>>852315быстрофикс .nav li:hover {display: block}
>>852315Ну-ка запили вместе с куском разметки своего меню на какой-нибудь нормальный сервис
>>849864 (OP)Господа, как сделать так чтобы после нажатия кнопки страница обновлялась?Ну например я ввожу что-нибудь в строку, жму далее, на том же экране следующее поле и тоже кнопка далее, одностраничное приложение типа. Подскажите, если не сложно. Гугление пока ни к чему не привело.
>>852324Господа, как сделать так чтобы моя копейка могла ездить от электричества?Ну например я еду такой по трассе, у меня заканчивается бензин, а по близости только электрозаправки и я могу запитаться от них и ехать дальше, электромобиль типа. Подскажите, если не сложно. Гугление пока ни к чему не привело.
>>852319https://jsfiddle.net/pwjgqyqa/1/
>>852326Ты очень плохой человек.
>>852326лол
>>852303Ядро плюсов — это функции, указатели и классы. Если ты совсем нюфаг, ни за час, ни за 21 день ты их конечно не изучишь, но если ты уже умеешь создавать работающие программы — написать первый факториал сможешь за 20 минут.STL — это уже jQuery. Boost — это уже lodash, Qt — это уже Angular; темплейты и прочие плюшки языка — это уже магия. Ядро цэпэпэ не включает в себя весь стандарт.
>>852324Ну блять, ты хоть javascript-то знаешь?
>>852353А ты сам-то знаешь?
>>852324location.reload()Не понял только зачем тебе обновлять страницу если нужно только обновить отображаемые данные после нажатия кнопки?
>>852331https://jsfiddle.net/9z53w2nn/Если я правильно понял то, что тебе нужно.
>>852361Почти, нужно чтобы меню продолжало реагировать на наведение курсора. Как совместить onclick и mouseover/mouseout(:hover)? Может быть определять девайс юзера, и для мобильных использовать обработчик onclick, а для настольных (с мышью) mouseover/mouseout(:hover)?
>>852355Не меняй тему разговора! Сейчас мы говорим не о моём незнании.
>>852375И не о моём. Я вообще мимо проходил, решил поинтересоваться
>>852326Лучше бы ты в самомнении был такой ограниченный.>>852324Тебе вот такое нужно?https://codepen.io/anon/pen/vXdAra/Вот статья про эту идею:https://www.smashingmagazine.com/2015/12/reimagining-single-page-applications-progressive-enhancement/
>>852377Загугли события js и как менять стили с помощью js. Как это применить, чтобы решить твой вопрос я надеюсь у тебя хватит воображения.Не вздумай делать кучу маленьких страничек с одним полем и кнопкой, иначе один южноафриканский котик умрет.
>>852391Круто, про такое: #id:targetне знал.
>>852391Спасибо, но я написал только оригинальный вопрос и вот этот >>852334 пост, остальное - шуточки мимокрокодилов.Если что - делаю тестовое задание на червя-пидора-стажера-php, в числе прочих задач просят и одностраничное приложение сделать хоть просто на js хоть с фреймворком. А я js даже не касался в своем самообучанстве, поэтому гуглю.
>>852406Пиздец блять халява, завидую.
>>852417Что именно? Что мне готовую программу написал антоша или php?
>>852421Что можно рандомное js говно впарить в качестве тестового.Меня просили шаблонизатор пилить хотя тут эскобар.жпгАнгуляр почитай. Я думаю они оценят, если сделаешь что-нибудь на ангуляре. Прочитать доки по англяру тебе будет проще, чем пробираться через дебри багов и костылей твоего велосипедного одностраничника (тем более если ты раньше такого не делал)
>>852428Я еще не знаю что можно и что нельзя впарить, мб я отправлю им задание, а они еще и собеседование проведут чтоб прям при них фейсбук написал.Вообще, если честно, я слегка прихуел от того сколько всего нужно знать и уметь чтоб вкатиться. Опасаюсь что даже если и возьмут на стажировку, то с позором выгонят через неделю, и потом детям и внукам еще через 50 лет будут байки травить как к ним пришел нулевый вася.
>>852440Не парься, не будут над тобой угорать. Ты же на червя-пидора-стажера идешь устраиваться, а не на мидла или сеньора-помидора.Будет сложно, но ты главное не аутируй где-то в уголке, а заебывай вопросами более опытных коллег, делай что говорят и всё будет заебись.Тебя специально берут нулевого чтобы обучить и ты мог работать как джун-мидл за копеечную цену (или почти не копеечную, если ты у мамы биллгейц, но я что-то сомневаюсь).Короче, без навыков на реальный проект тебя не пошлют, так что всё норм. Научат, станешь суровым погромиздом.
>>852450Спасибо за поддержку. :)
>>851957https://medium.com/@kitze/how-it-actually-feels-to-write-javascript-in-2016-46b5dda17bb5#.jzjs83tim
Вечер добрый, пару дней назад советовали ionic чтобы вкатиться в андроид дев. Но как оказалось, нифига не ясно с чего вообще начать. Установил кордову, андроид sdk и android developer от jetbrains. И все, дальше не ясно куда смотреть. К примеру на пхп я знаю что мне нужен сервер для запуска-апач либо нгинкс. Нода сама по себе и сервер и апликуха. Что такое приложение на Андроиде и где егоотлаживать и из чего состоит процесс разработки мне в корне не ясно. Если есть опытные люди - посоветуйте материал для изучения. Кстати пробовал ставить visual studio community - судя по комментариям онустанавливается 9 часов или около того, и это в 2016 году, ппц. Так что посоветуйте и годную среду разработки..
>>851681Скажите мне, зачем используют реакт?Пару дней назад с ним столкнулся, пока только рвотные позывы. Может, надо упороться чем-то?Умею в ангуляр, бэкбон и нокаут.Я не троллю, но вообще, совсем, абсолютно не понимаю, как можно сравнивать реакт хотя бы с нокаутом, не говоря уж про реакт vs божественный ангуляр...
>>852597Ну что ж ты за пидор неумеющий в гугл.1.Ставишь webstorm (блокнотопетухи включают sublime text)2.Открываешь доки по ионику и ангуляру3.Пишешь свой отстой пидорский3.1.Ставишь плагины если нужен доступ к каким-нибудь штукам типа камеры4.Билдишь всю эту хуйню5.Смотришь какого хуя все тормозит...7.Уебываешь в пхп
>>852601Реакт и правда парашный. Концепция у него хорошая, а вот реализация полнейшее говнище. Дропнул его после месяца мучений в сторону angular2
Пользовательским скриптом на произвольную страницу добавляю внешний скрипт с локалхост. Сам скрипт добавляет iframe (тоже локалхост) и лезет к его элементам (через contents() в jquery), когда он загрузится. > Uncaught SecurityError: Failed to read the 'contentDocument' property from 'HTMLIFrameElement': Blocked a frame with origin "http://stackoverflow.com" from accessing a frame with origin "http://localhost:3000". Protocols, domains, and ports must match.Раньше я думал, что политика безопасности для внешнего скрипта определяется его доменом, но походу все выполняется в рамках первоначального домена. Так ли это?И как в моей ситуации лучше поступить?
>>852601Да реакт просто пиариться сейчас активно, вот и весь кипиш на него среди диванных вкатывальщиков. А по сути технология сырая еще, многое зависит от "моды" лол и возлагать серьезные долгосрочные планы на него я бы не стал.Помимо него еще 2 вполне себе ок стула - первый и второй ангуляр.
if (num_2 == /[a-z]/ ) {}Анон, как проверить num_2 на наличие в нем латинских символов? Так как я написал, не работает
>>852714if ( /[a-z]/.test(num_2) ) {}
Использует тут кто-нибудь кложурскрипт? Сложно ли будет с жса переписать ради опыта какую-нибудь мелкую либу на него?
>>852744Раз ты задаешь такой тупой вопрос, то тебе будет сложно
>>852674> И как в моей ситуации лучше поступить?Смотря что ты хочешь сделать
>>852818Юзерскрипт похоже не влияет. У меня есть Домен1, там скрипт и всякий контент для фреймов. Нужно встроить скрипт на страницу в Домен2.Как я говорил, скрипт добавляет фрейм, вешает обработчики на элементы фрейма и т.п.Хотелось бы весь жс код для удобства, замыкания, пере использование, все дела. Хотя это, наверное, нереально. Если разбить код и распихать по фреймам, то должно быть норм, сделаю так.
>>852843> Хотелось бы весь жс код для удобства хранить в этом файлефикс
Анонимайзеры, работающие под Виндой, а не под *nix-подобными осями, а у вас все модули из npm работают под Виндой?
>>852720>if ( /[a-z]/.test(num_2) ) {}Чет нихуя не работает
>>852913руки из жопы?http://jsbin.com/kevomavuxo/edit?js,consoleмимо
>>852907Пока еще не было такого, чтобы чет не работало. P.S. Консолька стоит cmder+git bash если это принципиально.
>>852940только /i флаг добавь, чтобы не городить [A-Z] лишний
Для того, чтобы писать простую херню на jquery, обязательно знать ванильный JS?
Поясните за angular и two-way biding. Шатал туториал (https://thinkster.io/angular-rails) с беком на руби-на-рельсах. В итоге серверная часть только отдает json список содержимого модели, шлет put запросы в базу, внося изменения. И если открыть один и тот же ресурс в 2 вкладках, в одной внести изменения, то во второй они отобразятся только если страницу обновить. Ну и зачем нужен ангулар если тот же самый эффект есть и без него. Что я делаю не так, кроме вкатывания в js?
>>853024желательно
>>853064> Ну и зачем нужен ангулар если тот же самый эффект есть и без него.Чтобы переход на другую страницу (в той же вкладке) не обновлял страницу.Коммуникацию между табами в браузере тоже можно замутить, но это не встроено в ангулар.
Ангуляр или Реакт?
>>853078Vue
>>853082Реакт или Ангуляр?
>>853064Тебе вебсокеты нужны, а не фреймворки
>>853093Это если он хочет писать изменения на сервер, для передачи данных между окнами / табами не нужны никакие вебсокеты.
>>853073т.е. чтобы на одной открытой странице открывать разные страницы?А чем плохо через гет запросы страницы открывать, а не подгружать их на одной странице?
>>853106Как? Постоянно делать перепроверку, что данные не изменились?btw, как вкшчка подтягивает новые сообщения в чат?
>>853109Во-первых, снижается нагрузка не сервер, клиент-сайд генерирует страницу из данных.Во-вторых, не нужно дублировать данные в каждом запросе, можно выдавать только то, что клиенту необходимо для вывода новой информации.В-третьих, отрендерить на клиент-сайде только нужный кусок, допустим записи в таблице, быстрее, чем перезагружать всю страницу и рендерить ее с нуля. Да, это можно зафигачить в ручную или с помощью всяких jquery, но всякие ангулар и реакты могут упростить процесс.
>>853112> как вкшчка подтягивает новые сообщения в чат? Постоянно общается с сервером, где-то раз в 2-3 секунды, если запрос не уходит в таймаут.
https://habrahabr.ru/post/312022/покушать
>>853134Тоже сгорел с этого. Я от такой хуйни обратно в дуднет ушел.
>>851288>Замыкания это средство для инкапсуляции, причем не сильно удобное и понятноеСпасибо. Как раз сейчас с ними, вроде и понял, и канторо-задачки решаю, но долго получается. Там просто на главе с замыканиями так написано, что кажется, будто из замыканий состоит вообще всё, и я боялся, что недостаточно хорошо освоил такую повсеместную штуку.мимо-еще-один-вкатывальщик судя по фленегану, прошел пятую часть пути
>>853134Проиграл с этой хуйни. Именно поэтому у нас используется ангулар 4 года для внутренних админок и прочей хуерги без оглядки на всякие бабелы-хуябелы. Сейчас понемногу перекатываем на второй и тайпскрипт.
>>853129Он использует лонгполинг сервер.Коннект к серверу висит до получения сообщения (или уведомления), после получения коннект пересоздается. Таймаут для таких запросов задает не сервер а клиент (клиентский код). Посему таймаута может не быть вообще.
>>852991[a-Z] не годится что ли, лол
>>852406ты не из омска случаем?
Друзья, куда лучше свой код оформлять, дабы здесь не мусорить, а давать ссылку: в JSBin, JSFiddle, codepen.io или ideone?
>>853187а сам как думаешь лолa (ASCII 97)Z (ASCII 90)оно по дефолту так работать не может, а если делать A-z, то там всякой хуйни будет типа \[]^ и т.д.
>>853134Поэтому я и начал учить Elm, даже если не взлетит, все равно приятно писать в нормальном языке, плюс еще и функциональщине научусь, хоть и в чутка обрезанном виде.
>>853089Библиотеки > Фреймворки
React + Redux + React Router это не фреймворк по сути?
>>853283Нет, это набор библиотек. Если надоест Redux — можешь обмазаться MobX или еще чем.
>>853288Ну сменишь ты Редукс на Мобх, суть от этого не изменится. Куча библиотек ~= фреймворк
>>853290> Куча библиотек ~= фреймворк Проиграл
>>853179Я тоже туда же. Это шизофрения просто, на современных сайтах js по 30 штук. он ивесят больше, чем все картинки хайрезные, это же ебать сколько кода. и что он делает, нахуй он блять нужен вообще.
>>853360Мне тут всучили проект с реактом. Я как-то пробовал его, без сборщика.Но тут же впродакшн! Надо все красиво.Беру gulp, начинаю писать скрипт сборки...Таак...require? Ну ясно же что делать, надо установить... Browserify. Не работает. Читаем Гугл.Ага, ясно - эта хуйня deprecated, в другой хуйне через жопу, надо оборачивать в vinil-source-stream... хуемое... duplex stream... Source-map? БЛЯ!Идет второй день, проект не собирается, babel сыплет ошибки... Ухожу в гугл."Намного проще в webpack!" Оу, ну ладно, все равно хотел познакомиться с ним. Таак, а как тут css-то в отдельный файл? require('extract-text-webpack-plugin')... 'css?sourceMap!sass?sourceMap'package.json распухает от модулей, каждый из которых тянет еще модули, сборка идет по 10 минут, зауглифаеный результат весит под 600KbНа страничке список, форма и три кнопки.Немного утрирую, но я хочу программировать, а не бороться с инструментами.
>>853418ну а что ты хотел? JopaScreep жеПо хорошему нужно полностью отказаться от ЖС, всем бывшим ЖС-разработчикам запретить прикасаться к клавиатуре и сделать все заново с нуля.Такого анального цирка еще не было за всю историю IT.Это целый пузырь, поддерживаемый за счет постоянного reinventing the wheel, который однажды да лопнет.
>>853425>Это целый пузырь, поддерживаемый за счет постоянного reinventing the wheel, который однажды да лопнет.NYET. Не лопнет, ибо законодателями этой хуйни являются мастодонты IT - Google, Facebook etc.
Ребят, поясните плиз. Правильно ли я понимаю:Допустим, есть у нас 1000 элементов <li>. (путь в тысячу ли, лол).1) document.querySelectorAll('li');Создается коллекция [ li[0], li[1], .. li[999] ];2) document.GetElementByTagName('li');Создается пустая живая коллекция (так было написанно в учебнике, но вот если посмотреть в консоли, то там как будто создается коллекция из всех элементов сразу).
>>853418Слава Марку теперь есть create-react-app, поэтому можно меньше трахаться и больше создавать.Но да, когда-нибудь нужно избавиться от всей этой хуйни и сделать единый стек, в котором все будет собираться одной командой, а стили/разметка/код будут на унифицированном языке. И все к этому идет.
Делаю микроприложение для контроля данных, передаваемых по в реальном времени (стенд для испытаний оборудования в АСУТП).Использую следующий стек:бэкенд - Node+Express+SocketIO+NeDBфронт - React+MobXВопросов по перечисленным технологиям, в принципе, нет, работаю и получаю удовольствие.Но вот с чем реально вышла запара, так это с выбором либы для построения графиков.Выбор пал на Plotly, как на либу, позиционирующую себя невъебенно крутой и серьезной.И вроде все работает как надо, но столкнулся с откровенно детскими болезнями либы:- нет HTML5 Fullscreen API. Сделал, но по нажатию любой из кнопок на modebar, фуллскрин сбрасывается. Похуй, сделал ресайз на весь экран. Сломался RangeSlider (ибо он не ресайзится!). Пиздец.- сделал плавную, приятную глазу анимацию разворачивания графика на полный экран при помощи Animate.css. Отлично! С анимацией при сворачивании обратно, с возвратом к исходному разрешению графика, выпадают (буквально, блядь!) кнопки с modebar графика. Ну что за хуйня?Посему реквестирую годных либ для построения графиков, которые поддерживали бы ресайз, динамическое обновление данных (стриминг), имел бы rangeslider, ну и экспорт в графический файл (хотя если это canvas, то экспорт закостылить не трудно). Смотрел в сторону dygraphs - насколько он хорош?
>>853444https://d3js.org/
>>853480d3 слишком низкоуровневый для графиков.
>>853425>По хорошему нужно полностью отказаться от ЖСНе нужно отказываться, просто не нужно писать непонятный говнокод. Вот реально, требования от жс на 99% сайтов одни и те же, что делал жс в 2010 году, то он делает и в 2016, однако скрипты теперь весят за мегабайт. Куда нахуй, что в них напихано, ЧТО БЛЯТЬ. На сайте 1 слайдер и проверка формы, что можно было накодить на 1 мегабайт.
>>849864 (OP)джиэсобогов конфа http://link.limo/programach
Добрый вечер в хату. В общем разбираясь с жс наткнулся что иногда для свойств объектов пишут obj[prop]. Собственно в этом и вопрос, в чем разница между obj.prop и obj[prop]? Например, в консоли я создал простой объект jsmakaka с 2 свойствами name: 'Alex' и lastname: 'Anonov'. Так вот, console.log(jsmakaka.name) работает и выводит Alex, но jsmakaka[name] кроме ошибки ничего не выводит. Прошу местных js господ разъяснить эту ситуацию. Вот такую форму записи obj[prop] точно видел и там был точно объект, а не какой-нибудь array.
>>853609Во втором случае JS вычисляет значение переменной name. У Квантора в первых же главах всё это разобрано.
>>853610Как это называется obj[prop] или как искать в гугле чтобы прочитать поподробнее? Просто "в первых главах" звучит очень расплывчато для того кто не читал его учебника и учился по другим источникам.
>>853616Сам нагуглил уже, спасибо за ответ(нет) заебал пиарить свою порашу в этом треде.
>>853616object.attribute монопенисуально object['attribute']Но. Допускается object['ma-kaka'], но object.ma-kaka выплюнет ошибку (object.ma - kaka)
>>853620Эта параша всяко лучше твоих "других источников", из которых ты даже не знал как обращаться к свойствам объекта через квадратные скобки. Да и неумение забить в гугл "js object brackets" выдаёт в тебе дебила.
>>850453nw.js, electron либо локальный сервак node.js
>>853442Че несешь? В первом случае тебе массив ссылок дают по css селектору, во втором по тэгу элемента.Какие коллекции? Совсем там со своими абстракциями ебанулись блядь в хлам.
>>853484> слишком низкоуровневыйПроиграл.Но если продавать свою хуиту не будешь - highcharts. Это лучшее что мне встречалось.
>>853620> заебал пиарить свою порашу в этом треде. Сомневаюсь что Кантор здесь тусовал. Он наверняка поёбывает няшных хипстеров на очередном стартапе.
>>853626Спасибо, анон! Всё четко и по делу написал.>>853627Сам деб, раз агришься не из-за чего. Мне норм, просто ВСЁ удержать в голове не возможно, особенно когда только вкатываешься в эту помойку.>>853658Хз, его форум в каждом втором посте пиарится ага, других источников нет конечно.
>>853655В первом случае тебе массив>массив
>>853425при чем тут жс, если это еба вкатывальщики не уеющие программировать наплодили кучу овно тулз и теперь купаются в этой параше
>>853442Чего?В первом случае тебе вернется просто коллекция по селектору, во втором живая коллекция по селектору. Схуяли она по твоему должна быть пустой, если у тебя на странице в момент ее создания есть элементы соотвествующие селектору?
Ребятишки, подскажите:Сделал небольшой сайт на React + Redux (и через create-react-app), который берет json с вордпрессовской WP REST-API (т.к. в бекэнд я пока не умею). На локалхосте все заебись работает, а вот как это все к вордпрессу присобачить - хуй пойми.Сделал npm run build и залил это говно вместо темы, захожу на свойсайт.ком, в консоль пишет что не может найти /static/js/main.e0dbbf8e.js ну и прочие собраные файлы.Как мне задеплоить эту парашу вместе с вордпрессом ?Гуглил, вообще нихуя нет на эту тему, все туториалы дальше хеллоуворлдов на локалхосте не заходят.
>>853682this
>>853656>highchartsПо демкам нихуево выглядит.Но как у HC с быстродействием?Мне требуется отрисовывать примерно 5-7 графиков, сделал обновление данных раз в секунду (не принципиально, можно период изменить) но координаты приходят пачкой, т.е. за секунду набирается, например, до 10 координатных точек на 1 график.Plotly даже с .extendTrace() подлагивает временами, хотя его форсят как более производительную, в плане рендеринга, альтернативу HC.
>>853765
>>853683Попробуй через handlebars, я в своё время так попал к жене на свадьбу за O(n!).Ещё можно transducers: https://hackage.haskell.org/package/machines
Копаюсь в вашем говнереакте. Так и не понял какими средствами реализовать загрузку начального состояния в зависимости от url.
>>853777componentWillMount() ?
>>853778Не то наверно. Короче, загрузка начального состояния всего приложения происходит при запросе /index, далее мы можем перейти в /users. Как сделать чтобы мы могли вбить в строке адреса сразу /users и отобразилась бы страница с пользователями?
>>853782React Router.
Аноны, решил написать JS обертку (node.js модуль) для C библиотеки http://wordnet.princeton.edu/wordnet/documentation/.Проблема в том, что я незнаю с чего начать, составьте для меня небольшой todo-лист, кто понимает.Вот даже уже готовый пример есть https://github.com/dariuszdziuk/wordnet, но я хочу разобраться как это делается впринципе.
Друзья, куда лучше свой код оформлять для вопросов здесь: в JSBin, JSFiddle, codepen.io или ideone?
>>853777А мог бы накатить ангулар 2 или бэкбон и не ебать себе мозг.
>>853802>бэкбон Backbone - не вьюха, ёбан.
задача от Илюхипочему (1,5-1) * 2 === 8 ?
>>8538161,5-1 это 5-1 === 4 (оператор запятая)4 * 2 === 8Че не понятно?
>>853816> почему (1,5-1) * 2 === 8А почему не должно быть?
>>853799Шапку чем читал?> Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
>>853848Спасибо.
>>853848>Воспользуйтесь https://jsfiddle.net/Ссанина. JSBin гораздо юзабельнее.
>>853851Ну пользуйся чем тебе удобнее, какой толк от твоего вскукарека без объяснений?
Вы вчера мне говорили, >>853442 что:>В первом случае тебе вернется просто коллекция по селектору, во втором живая коллекция по селектору.>Схуяли она по твоему должна быть пустой, если у тебя на странице в момент ее создания есть элементы соотвествующие селектору? Но тест говорит совсем другое: http://plnkr.co/edit/QGiNtL4VFSDXMAMyBUAN?p=previewКак видно, первый alert и второй alert дают одинаковые результаты. Первый alert - пустой массив.Второй alert - document.getElementsByTagName('p') //якобы коллекция элементовТретий alert - document.querySelectorAll('p'); //тут всё очевидно, коллекция всех элементов <p>Я бы поверил учебнику >>853684и не задавал таких вопросов, если бы в консоли getElementsByTagName('li') не возвращал мне коллекцию элементов <li> >>853442Вот такое противоречие.
>>853794Вопрос не правильно поставил.Сейчас более менее вник. Суть API этого - обращение к дб. Т.е если я хочу использовать JavaScript, мне нужно просто переписать все функции на нем.Другой вопрос, не лучше ли будет написать скрип в JS, который будет запускать С программу (child process) и output из этого С скрипа передавать обратно (через pipe)?Т.е использовать С библиотеку все-таки.Это будет экономнее по времени, чем переписывать функции в JavaScript?По производительности?
>>853794>>853892Проще написать классический dll и дергать из него модули через NodeFFI.
>>853893>дергать из него модули*методы, селффикс
>>853896Расскажи в двух словах что такое dlll?
>>853899https://blog.scottfrees.com/calling-native-c-dlls-from-a-node-js-web-appИсчерпывающе?
>>853900То что нужно, спасибо.
>>849864 (OP)Анончики, а вам нравится react?
Sup. Пытался написать простой жиквери плагин, но столкнулся с проблемой использования window.removeEventListener.Есть у меня два дива на которые влияет плагин. Плагин я завожу вот так var xyi = new Hyi(this, params); проверку на метод или параметр и $.fn.Hyi опустим.В одной из функций этого плагина создается функция Hyi.prototype.eventListener = function (ev) {}; и потом вешается window.addEventListener('mousemove', Hyi.prototype.eventListener);Суть в том, что при выполнении window.removeEventListener('mousemove', Hyi.prototype.eventListener, false); снимается только последний EventListener.Вообщем как мне привязать EventListener к диву, чтобы потом снять один, не ломая другой?
>>8539871. Если ты пишешь JQ плагин, то почему не .on() .off()?2. Нахуя ты делаешь Hyi.prototype.eventListener = function (ev) {}? Почему ты в конструкторе не можешь объявить this.eventListener = function(ev){} например?Короче, рефакторь накуй.
>>853803Там есть и вьюхи тащемто. Движок для рендеринга ты волен сам выбрать.>>853969Нет, оверхайпнутая параша для любителей оверинжиниринга.Лицокниге оно один хуй не помогло. Интерфейс как был тяжелым говном с кучей лишнего говна, так и остался.>>853987> 2016 год> Писать плагины для jQueryНу бля.Но ладно, я 2 раза прочел тобою написанное и нихуя не понял. Пример кода запили и покажи где косяк.
>>853998>> Писать плагины для jQuery>Ну бля.Ну может не нужен ему (one|two)-way binding и дёртичекинг? Может он не педохипстер и просто хочет с ДОМом поработать?
>>854000Да не в этом дело. Либо у него недостаток опыта либо что-то простое.Тут скорее первое. Поэтому> рефакторь накуйединственно верный совет, а он написал хуйню.
>>853969да <3
Ребзя, а давайте определимся, что же пизже — Angular 2 или React + Redux?Избавился ли Angular с выходом второй версии от своих прежних болячек?Есть ли тут ребята, которые и Angular 2 юзали, и React + Redux?Что из них лучше себя показывает в связке с Node.js + Express? Или без разницы?Правда ли, что Angular 2 по мере роста проекта начинает глюкаво тормозить, в отличие от React + Redux? Или пиздёж?
>>854044>ang2Производительность стала больше, поверх покрыли все типизацией.Теперь это дело легко тестировать, допилили модули напильником. Годная штука. Порог вхождения увеличился да и хуй с ним.Когда мне понадобится, я выберу его.Да, ад в виде html внутри js внутри html внутри js можно делать, но у нас например за такое при коммите по рукам бъют.
>>854044реакт для дебиков))0мимо из серьезной конторы с ангуляром, постепенно готовящим переход на анг2
>>854044https://medium.com/javascript-scene/angular-2-vs-react-the-ultimate-dance-off-60e7dfbc379c#.dw7ygglw3
>>854064Уже читал это вчера, так и не понял, что значит Angular 2 requires a lot more tech buy in.
Заметил за node и/или express одну неприятную особенность: без вмешательства пользователя дублируется последний реквест. Например, написал я форму и решил протестировать корректно ли данные, посланные с ее помощью, записываться в базу. Проверил, получил результат, отошел на 5 минут. Прихожу и вижу два идентичных поля в базе, хотя при уходе было одно.Кто-нибудь сталкивался с подобным? Есть ли способ такое поведение исправить
>>854064Также я не понял, что значит фраза о том, что Angular 2 требует больше boilerplates, что такое additional boilerplate overhead, и что это вообще такое: boilerplate. Пояснишь?
>>854073Если коротко - шаблонный код.
>>854070Покажи код, вероятно ты где-то обосрался, у меня никогда такого не было
>>854075Возможно, но я 3 проект подряд сталкиваюсь с этим из-за своей криворукости.Еще, возможно, модуль brackets`а это вытворяет.http://jsbin.com/nerayonibi/1/edit?js,console
>>854044Cycle.js
>>854086А из этих двух?
>>854044хорошо что в ng2 порог вхождения выше, будет куда меньше долбаёбов, коих наплодилось уже благодаря реакту, бгг
>>854130>хорошо что в ng2 порог вхождения выше, будет куда меньше долбаёбов, коих наплодилось уже благодаря ng1, бггфикс)
>>854131Фикс от адепта React + Redux?
>>854134От Inferno с MobX.
ДжиЭсеру, посоветовавшему Highcharts вместо Plotly - спасибо.Все работает (почти) как надо.Либа респонсивна искаропки, поддерживает несколько форматов экспорта, присутствует менее глючный рейнжслайдер. Скорость рендеринга вполне на уровне.
>>854078Ты ответ то нормальный отправляй своему аякс скрипту, а то он бедолага ждет код 200 от ноды, а получает хрен пойми что, и по таймауту дублирует свой реквест.
Шалом, братья. Помогите разобраться.Есть код (рис. 1)Есть обработчик (рис. 2)Он осуществляет поиск по БД и выводит в результат переменные rno = 1 и result = dom 31Результат поиска в рис. 3 Как мне вывести эти переменные в таблице, чтобы туда можно было добавить другие строки из базы данных, либо ссылки на другой обработчик?Или просто поясните логику, как в jquery выводить переменные в таблицу.
>>854165Какое IDE?
>>854166Это с сайта пример http://dnzl.ru/view_post.php?id=271Я в нотпаде все делаю.
>>854130А почему порог вхождения выше? Что нужно понимать, чтобы лезть в Angular 2?
>>854165Берёшь и без задней мысли вставляешь новую строку со столбцами в конец таблицы, не?
>>854147Спасибо, даже не подумал об этом.
Хуярю на реакте уже месяц. Чувствую что меня наебали. Нет стройности, внятности. Для SPA это не годится, это по сути View библиотека. А надстройки Redux Flux и т.п. слишком размыты. Какие то хипсторы делают непонятно как относящиеся к самому проекту доп. методологии. Возникает вопрос а где гарантия что через месяц не придёт очередной патлач и не придумает новую охуительную архитектуру папок? Какието невьебенные конструкции где переменные повторяются по 20 раз для одного действия. Мифическая расширяемость и производительность кажется слабым аргументом, ведь в энтерпрайзе всегда побеждала хуяк-хуяк простота. Короче не советую это говно, буду пробовать анг2.
>>853997Спасибо за ответ.> 1. Если ты пишешь JQ плагин, то почему не .on() .off()?Теперь сделал вот так:вешаю $(window).on("mousemove." + this.name, this._handleMousemoveEvent);снимаю $(window).off("mousemove." + this.name, this._handleMousemoveEvent);> 2. Нахуя ты делаешь Hyi.prototype.eventListener = function (ev) {}? Почему ты в конструкторе не можешь объявить this.eventListener = function(ev){} например?Это тоже переписал.> Короче, рефакторь накуй.Сделал, посмотри пожалуйста, может что-то не так еще.Код плагина: https://gist.github.com/anonymous/3cefd0ff484b3a6c950345af188dd6f3Код html страницы: https://gist.github.com/anonymous/93b90e8c82746fc462e12dbbce6a8822
Я знаю что вы сейчас будете яро называть меня долбоебом и т.д. И кстати будете правы. Но помогите с пониманием этих ебучих замыканий.Так то понятно что функция внутри функции создает некий объект с перменными, и ссылкой на вышестоящий по иерархии такой же объект в котором записаны переменные из его области видимости и ссылкой на вышестоящий если он есть. Но из примера на learnjs я нихуя не понял куда записывается итерированное значение переменной?По моей логике каждый раз вызывается функция внутри функции которая просто увеличивает переменную из вышестоящей функции. 1++ 1++ 1++
>>854340Ты же первой частью своего поста ответил на свой вопросПри присваивании counter = makeCounter() создается скоуп с переменной currentCount, которая хранит своё значение
>>854315Глядите-ка, еще один ёбан, ожидавший от Реакта магии в стиле "enter here xyipizda to make this shit work" сломался и не преминул об этом доложиться в программаче.>это по сути View библиотека.Охуеть открытие! А мужики-то и не знают!>Many people choose to think of React as the V in MVC.https://facebook.github.io/react/docs/why-react.html>А надстройки Redux Flux и т.п. слишком размыты.Это вообще пушка. Если ниасилил иммутабельное хранилище или тошнит от функционального подхода в целом, есть MobX, который в non-strict режиме позволяет напрямую присваивать новое значение отслеживаемым переменным. Конечно, так делать не комильфо, но тебе ли не похуй? Энивей, если тебе не нужно поддерживать концепцию "single source of truth", можно обойтись старым добрым setState.>Возникает вопрос а где гарантия что через месяц не придёт очередной патлач и не придумает новую охуительную архитектуру папок?Кто ж тебя, дубина, форсирует использовать какую-то определенную структуру для проекта? Если ты из тех мудаков, что не могут себя дисциплинировать в отношении структуры проекта, то и для таких существуют готовые решения - генераторы и бойлерплейты. От проекта к проекту структура будет постоянной.>Какието невьебенные конструкции где переменные повторяются по 20 раз для одного действия.Ты про что, упорыш?>Мифическая расширяемость и производительность кажется слабым аргументом, ведь в энтерпрайзе всегда побеждала хуяк-хуяк простотаТак все это была тонкая ирония, ведь правда?>Короче не советую это говно, буду пробовать анг2.Через неделю ждем свежую порцию откровений о том, что ангуляр 2 пиздец параша и что неплохо было бы откатиться во времена jQuery UI.Во тогда делали заебись!
>>854340Вышка есть?
>>854364Потому что я долбоеб и смутился над словами сказанными выше. Но не прочитал что написано после точки
>>854370- А кто её спрашивает?)филолог в треде
>>854405Сколько кусков в месяц делаешь, филолог?
>>854408Вкатываюся в жэ-эс) Хочу 300к в секунду освоить реакт и хотя бы 1к долларов в месяц.
>>854411Ебать ты хуесосина.За 1к можно вообще не кодить, а клацать час в день сайты и говорить менеджеру работает или нет.Раздирать свою жопу реактом имеет смысл не меньше чем за 4к.
>>854411Получишь абстрактной фабрикой по губам. На вакансии фронтендщиков уже 22 предложения в среднем на вакансию и значение растет.Все, лавочка закрывается, скоро WEB-пузырь лопнет как в 2001 и нас ждут толпы безработных 'веб-программистов.'
>>854444Все в машинлёрнинг.
>>854412>>854444Похуй, я настойчивый) Почти все знакомые куны с филфака вкатываются в программирование.)Кто-то Квантора читает, другие хотят версталами, но в любом случае не пропадем.
>>854458Нынче каждый второй вкатывается в программирование, даже знакомая бухгалтерша, которой под полтинник. Хорошо, что у 90% дальше хтмла дело не идет.
>>854461Боишься, что какая-нибудь бухгалтерша займёт твоё тёплое место жс макаки?)
котаны, поясните нахуя виртуальный DOM в реакте?допустим у нас есть модель данных и вьюха для неё. когда меняются данные в модели, я так понял, в виртуальный DOM рендерится всё, а он ищет разницу по которой уже меняют настоящий DOM.но нахуя это всё если мы за время компиляции JSX можем уже знать какие элементы будут меняться в зависимости от полей модели. например псевдокод:<div class="{ classList.join(' ') }"></div>можно ведь без виртуальных домов прописать чтоmodel.on('classList:change', (ev, data) => view.setAttr({ class: this.classList.join(' ')}))
>>854461Не знаю, я только радуюсь за тех вкатывальщиков, которых прёт от Реактов, Ангуляров, Нод и Питонов с Джангами, а вы тут бедняги трясётесь за то, что кто-то ваш хлеб отбирует. Ссыкуны.
>которых прёт от Реактов, Ангуляров, Нод и Питонов с ДжангамиЯзык бы вначале нормально выучили, а потом бы уже вкатывались во фреймворки
>>854467> которых прёт от Реактов, Ангуляров, Нод и Питонов с ДжангамиБольные ублюдки
>>854471двачую
>>854471будет точно также как это было с пыхой и повторилось с первым ангуляром. орды макак которые не понимают что делают, но тем не менее делают и за низкий прайс. они могут конкурировать только с нынешними "динамический сайдбар до завтра"
>>854465Здесь неплохо разжевали.http://reactkungfu.com/2015/10/the-difference-between-virtual-dom-and-dom/
>>854473А от чего прёт здоровых неублюдков?
>>854444> толпы безработных 'веб-программистовЭто которые вах заебашу красивый визитка неделя 1000 рублей?
>>854483>>854465В двух словах: патчить дом по синтетическим расчетам быстрее, чем ре-рендерить его полностью.Для того, чтобы вычислить "патч", требуется хранить несколько "слепков" дома.
>>854490От статических страниц.
>>854492>Для того, чтобы вычислить "патч", требуется хранить несколько "слепков" дома.реквестирую пример в котором виртуальный ДОМ делает то что нельзя предсказать за время компиляции JSX>>854483везде где юзают виртуальный ДОМ говорят одно и то же, мол стильно модно молодёжно патчить ДОМ, а не делать полный ререндер, так как узкое место - это скорость рендера ДОМ. с этим то я согласен, мне непонятно зачем городить такой оверхед в рантайме, если все патчи ДОМ можно предсказать на этапе кмпиляции темплейта
>>854510неужели ответ это "просто так, всё равно узкое место DOM и то что делается дурная работа всем пох"
>>854330Бамп
>>854458 О, так ты не просто вкатываешься в реакт, а вкатываешься в кодинг начиная с реакта. Удачи, братан.Вангую, сольёшься даже не на каком-нибудь там редуксе, а ещё на этапе настройки вебпака.
>>854511Блядь, нет конечно, VirtualDOM - это не панацея, это - компромисс. Как, врпрочем, и твой вариант:>model.on('classList:change', (ev, data) => view.setAttr({ class: this.classList.join(' ')}))В самом последнем ответе еще до кучи перечислены варианты, которые имеют свои как сильные, так и слабые стороны.http://stackoverflow.com/questions/21109361/why-is-reacts-concept-of-virtual-dom-said-to-be-more-performant-than-dirty-mode
>>854543А ты чсвшный))Что такого трудного в вебпаке?)
>>854661Не обращай внимания на людей, пытающихся дистанционно выявить уровень твоего интеллекта.
Аноны, нужна помощь с ангуларом.Есть сервис, который берет данные через $http.Есть директива, которая эти данные должна отображать.Как правильно эти данные передать?
Только учусь. Не работает Geolocation. Вот ссыль. https://jsfiddle.net/0moh53w7/Я не понимаю, почему оно не находит месторасположениеПомогите пожалуйста, иначе я никогда не пойму эту тему.
>>854698М - Модульность
>>854698> var self = this> 2016)))
>>854723При чём тут модульность то?
>>854732> Пишет на ангуларе> Нихуя не знает про модулиБлядь, ты пример копипастил из документации просто?
>>854736Как отдельные модули помогут мне получить данные из сервиса в директиве?
>>854737Окай, наведу на мысль.1. Создаёшь модуль, делающий запросы к серверу.2. Никогда не используешь его в самопальных директивах2. Используешь этот рукожопно написанный модуль во всех контроллерах и других модулях2. ПроффитКороче ты наговнокодил, переделывай.
Аноны, есть два три стула: Traceur Compiler, Babel и Rollup. Посоветуй какой выбрать.
>>854747> BabelНаиболее изучен и используем
>>854749Спасибо.
>>854747Ответ очевиден: http://kangax.github.io/compat-table/es2016plus/
может кто-то на ходу кукарекнуть регулярку, которая бы запрещала пробелы, а все остальное можно былобы?
Ну че, колитесь, кто уже yarn накатил, а?
>>854775/[^\s]/ты бы вежливее кукарекал тут
>>854730А чем этот способ хуже bind?
>>854859он имел ввиду arrow походумимо
Как мне ебаный create-react-app в один статический бандл засовать ? Так чтобы не в память грузило, а просто закинул хтмл в браузер и заработало ? Если просто npm run build делаю и кидаю в браузер, то потом он не может сбандленые им файлы найти (я сначала думал дело в том что нужно homepage в package.json указать, но хуй пойми что туда писать, по всякому пробовал - не пашет)Попытался сделать run eject, снес всю эту парашу, потом сделал свой webpack.production.config.js с бабелями хуябелями и тд. В итоге запускаю вебпак, работает 18ms и говорит что все заебись, а сам даже папку build не создает. Причем для теста с этим же конфигом простой хеллоуворлд создавал и его нормально сбилдил.Помогите плз, уже который день ебусь над этим.
>>854867Спасибо, просто еще не дошел до es6.мимо ньюфаг, который учит ванилу.
>>854871Лол. Покажи свой писюн вебпак-скриптус.
>>854871Пути то смотри добоёбушка.
>>854885https://jsbin.com/qiwojubiye/edit?js,outputwebpack ./webpack.production.config.jsвыводит:Hash: 76753ae5377e4285b2ec Version: webpack 1.13.2Time: 18msи нихуя
>>854898Конкретнее ?
>>854899Папка есть? Права проставлены?
>>854910Понял свою ошибку, оказывается нужно было --config добавить. Но теперь дохуя других ошибок вылазит (в конфиге что-ли проблема ?) но хоть бандлить начал. Еще теперь на {..state} почему-то выебывается, а конкретнее на многоточие. Это же из es2015 фича вроде-как ? Импорты то нормальное делает.
Здравствуйте, отцы.Пишет вам 24 лвл программист.Пишу всю свою рабочую жизнь на шарпе. Сейчас встает вопрос о переезде в дс. И я считаю, что нужно перекатываться на другой ЯП.Пилить 3 года формочки на винформс и впф меня уже, мягко говоря, заебало.Поэтому нужно вкатываться в вэб.Что сейчас стильно, модно, молодежно?Выбор упал методом рандома спросил у друга на ноду.жс.В вэбе я знаю почти нихуя. Подскажите, пожалуйста, что последовательно стоит учить, учитывая мои "знания".Паттерны проектирования знаю, но не думаю, что это особо тут полезно. То как ехал граф через граф тоже.Еще в юнити умею 2д игрушки делать.Если здесь найдется наставник, буду очень благодарен.
>>854849вот только что узнал о нём
>>854919>Это же из es2015 фича вроде-какнет, spread на объекты в 2015 не ввели, только iterable>>854921Запоздал ты, оно уже протухло, лол (на самом деле нет). На самом деле если будет как обещают, то будет круто, пока же куча ишью.Но тем не мнее скорость + оффлайн режим + лок файлов подкупают
Пишешь такой свой пет-прождект на react/redux на компилируемом строготипизорованном языке, тут хуяк - подработка, а там - питон, цмс, жс внутри html, html внутри js, jquery плагины. Пиздец нахуй, велком ту зе риал ворлд.
>>854928а ещё обратная совместимость с npm, вин же!
Кто работал с FB API? Как зареквестить фото юзера по URL/ID? Почему мне код возвращает пустой массив?
>>854974З.ы имеются в виду фото с альбомов.
>>854975Код:FB.api( "/[вставляю id пользователя]/photos", function (response) { if (response && !response.error) { console.dir(response) // пустой массив } });
>>854920> Подскажите, пожалуйста, что последовательно стоит учитьПользоваться гуглом.
Сука, оказывается пидорас жид цукер запретил скрапинг чужих страниц. Вот ведь пидор гнилой. Тварь, хуесос не человек.
Ну пацаны, ну гляньте. Ну норм? Ну все же мы люди https://gist.github.com/anonymous/3cefd0ff484b3a6c950345af188dd6f3
>>855011Вернул мой 2007
П Е Р Е К О ТЕ https://2ch.hk/pr/res/855093.htmlР https://2ch.hk/pr/res/855093.htmlЕ https://2ch.hk/pr/res/855093.htmlК https://2ch.hk/pr/res/855093.htmlО https://2ch.hk/pr/res/855093.htmlТ https://2ch.hk/pr/res/855093.html
>>854490HTML4 Strictframeset
>>855092Что не так то?
Какой же обоссаный тред, пиздец