Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.
Говорит, что симметрик дифф будет АдельтаБдельтаС=1,4,5,7
Я не понял, так СД считается последовательно. т.к. сказать. а не параллельно? Те. последний сет соответствует антипересечению двух предыдущих, а не каждому из них одновременно и самостоятельно?
>>843561 > Телеграмошизик не удержался и поставил свою конфу повыше в списке. Я её теперь ротировать буду, чтобы никому не было обидно. В следующем треде слак будет первым.
Спрашиваю в джс треде про разметку потому что он ближе и воркач молчит. Помогите как сделать это. При прокрутке один слой должен перемещаться относительно другого, нужно сделать верхний слой с треугольниками как на пике.
Как же я сейчас обосрался. Аж стыдно стало. Проходил по учебнику Кантора - Типы данных: [[Class]], instanceof и утки. И на пол часа завис, пытаясь понять, почему все-таки если аргумент массив, то он проходит инструкцию alert( 'Привет, ' + who ); Через пол часа до меня доперло, что who.forEach(sayHi) в функцию отправляет по одному элементу массива, а значит условие на массив будет ложное и элемент попадет в инструкцию else... Это нормально так тупить на таких вот вещах?
Итак, есть div с атрибутом contenteditable="true" и id="message" Другими словами это блок содержимое которого можно редактировать из окна браузера. Служит, как альтернатива input type="text"
Необходимо создать кнопки бб-кодов для вводимого в этот див текста. Создаем например такую кнопку
теперь Функцию JS пикрелейт ибо какое-то там слово из спамлисте
Таким образом выделяя часть текста в диве и нажимая на кнопку передается 'b' в функцию bbcode, внутри которой создается новые html объект - <b></b>, в нутрь него вставляется выделенная часть текста. Хорошо, но нужно не так.
Необходимо, чтобы я передавал открывающийся и закрывающийся тег, вот так: onclick="bbcode('<b>','</b>'), а внутри функции bbcode выделенный текст оборачивался этими тегами. Как такое сделать?
>>843643 Если достаточно долго читаешь - да, это нормально. Сделай перерыв до завтра, нельзя дохуя информации за один раз пихать. А так.. может, с циклом было-бы нагляднее, но учитывать новые API тоже надо. Так что привыкай.
>>843595 >чтобы получить работу джуном надо хотя бы чистый жс знать от и до со всеми подводными Не надо. Я знаю нативный JS от и до (исключая, наверное, общение через postMessage и графику), но везде в требованиях стоит: Angular/jQuery/React и и.п. говнобиблиотеки. Поэтому, наверное, веб-разработка дальше хобби и лаборантства не зайдёт - презираю всё это говно и не собираюсь его учить.
>>843647 Ты прав, до этого всегда цикл использовал, про forEach знаю теоретически. Сегодня только эту часть прочитал, а она не большая. Но очень долго сегодня я структурировал в своей голове предыдущую главу про методы обьектов и контекст вызова. Досихпор трясет от декораторов.
>>843650 так и сделано. Я выделяю часть текста, нажимаю на кнопку - она становится жирной, хочу дополнительно сделать еще например курсивом - хуй. Как-то мне это объяснили - уже не помню, но если выделить этот момент и захватить по концам еще по одному символу, то он оприменяется. Вообще хочу реализовать так как написал.
>>843651 нажимаю на кнопку B, получается так: не выделенный текст<b>выделеный текст</b>не выделенный текст нажимаю кнопку i, получается тоже самое но с <i> Вообщем я описал все понятно
>>843653 >трясет от декораторов Меня от них тоже трясло, пока не понял какая это охуенная фича. Можно сделать надстройку над чем угодно, при этом не меняя имени и пр.
>>843658 В этом моя проблема, что усвоить - усвоил, а вот когда их применять я не знаю, ибо в заданиях меня просили использовать конкретные приемы, я их использовал. А если надо будет написать свой код, то я обосрусь. Хорошо что еще впереди еще целая книга по интерфейсам и тд...
>>843662 Нахуя ты тогда JS учишь? Я, например, начал учить из-за того, что это понадобилось в моём проекте. По той-же причине потом доучивал много аспектов XHR, HTTP и пр. По той-же причине уже неплохо знаю PHP. У тебя должна быть причина учить язык и проект для реальной практики. Если будешь только теорию учить - это всё быстро забывается.
Нам в команду нужен совершеннолетний разработчик на JS со средним (и выше) знанием Angular первой версии и умением в REST, Gulp и Git. Работа удаленная, полный день, 5/7. Пишем CRM-ку для норвежской компании, платят в районе 1000-1200 долларов.
>>843664 Ну тут палка о двух концах, если сразу прыгать в практику, руководствуясь google-driven-development, не разобравшись предварительно в основах, то на выходе получим дичайшие костыли из-за незнания простых вещей из мануала. А тот анон, раз не знает основ, идёт по правильному пути.
>>843667 Вот какие проекты нужно уметь делать, чтобы меня брали на такие вакансии? JS + знание одного фреймворка на уровне выше среднего и штука баксов, охуеть. мимо-школьник-верстала-за-еду
>>843715 >>843717 Учебник так себе, но для даунов не могущих в англ конечно же лучшее что можно найти. Лол, не в одном треде еще такого пиара не было как тут.
>>843717 А я надеялся что ты пропустишь мимо. Ибо как только я отправил сообщение и пересмотрел пикчу, то и вправду увидел что forEach вызывает эту самую функцию. Хорошо хоть ссаными тряпками я выше как петух не начал закидывать, вот бы был обосрамс
>>843669 Вот поэтому нужно идти по цепочке: выучил -> написал -> выучил -> отредактировал, написал -> выучил… И так совершенствовать свой код.
>>843668 >нужен JS для моих проектов верстки Если тебе нужен JS для вёрстки - тебе не нужен JS. CSS3 даёт большую часть тех костылей, что ты там напишешь, остальное можно сделать и не углубляясь. Ну, если ты, конечно, не собираешься IE10- поддерживать.
>>843699 Я подумал, что ты перекатился из того треда.
>>843710 >библиотеки от лучших инженеров планеты HAHAHA.. oh WOW! Говнобиблиотека, которая на 100% состоит из оверинжиниригна, костылей, велосипедов и нахуй не нужных функция - лучше моих поделок для нужных мне целей? Я ведь не говорю, что всё пишу сам. Годные решения в библиотеках есть (например, jQuery'вское extend или parseXML), но использовать библиотеки полностью - долбоебизм XXIка века.
>>843735 > 100% состоит из оверинжиниригна, костылей, велосипедов и нахуй не нужных функция Иди ка ты нахуй с такими познаниями, быдлокодер. Последние версии фреймворков/либ, что ты перечислял - максимально модульные
>>843734 Ну как для верстки... Я просто не знаю, как далеко смогу зайти в изучении JS. Конечно же не хочется быть макакой, штампующей лендинги. Но пока еще рано мне говорить о веб приложениях. Так что первоочередная цель - использование ванилы на практике в верстке для закрепления полученных знаний. Ну там слайдеры, календари, работа с формами и тд...
>>843673 Что-нибудь посолиднее todo и чата, что ты можешь написать протыкав Coursera + опыт использования большинства возможностей целевого фреймворка и понимание, что, зачем и почему.
>>843737 >Последние версии фреймворков/либ, что ты перечислял - максимально модульные Какие нахуй модули в jQuery, ты ебанулся? А Angular - ебатень, что с модулями, что без. Ещё и исходники нормально не посмотришь, блять.
>>843748 Ты молодец, вот на таких людях мир и держится.
А теперь иди на хуй из треда, аутист пафосный. JS-разработчик обслуживает интересы бизнеса, которому нужно сделать быстро и "стабильно", и с озвученными фреймворками это получается лучше, чем без них.
Приветствую, о боги [изъято по просьбе правообладателя]. Как редактировать код в JS в IDE?
Я только начал вкатываться, решаю задачи с learn.javascript. Пользуюсь Komodo IDE 8.5. Еще есть PhpStorm, но он слишком медленный и тормозящий для моих скромных 8г оперативки и 4х ядер. Ноут обжигает ноги, когда запущен шторм. Поэтому пользуюсь Komodo, это не реклама, просто дело вкуса короч.
Для того чтобы пользоваться отладчиком в браузере, я создаю файлы с расширение .html, а подсветку кода ставлю JS. Но тогда подсвечиваются только JS теги. В добавок афтоформатер (js beautify) кромсает html-теги. Также не понятно как быть с отступами, в html вместо 4х пробелов стандарт - 2 пробела. Как я понял, в JS - 4 пробела. Как дальше жить?
Как вы совмещаете js/html? Как вы организовываете работу в IDE?
>>843802 О неофит, скоро ты узнаешь что не пишут жс в хтмл файлах, про модульность и фреймворки и отпадут > Как вы совмещаете js/html? такие вопросы.
А вообще для решения задачек выбрал бы себе что-нибудь менее громоздкое и неуклюжее с кучей свистоперделок, такое как vim, nano или нотпад, если под виндой, тебе же ничего сейчас кроме подсветки не надо.
Через много лет после использования AS3 решил таки попробовал написать что-то на JS, потому что узнал, что уже подъехал стандарт ES6 и теперь он мне по душе и можно пробовать угорать по ООП и модулям. Завел webpack и babel. Имею такую структуру: index.html /js --/src ---main.js ---module_class1.js --/lib ---svg_libary_for_draw.js (ES5) https://jsfiddle.net/s38w7z9r/ В module_class1.js - описание класса. Импортирую его в main.js. Подключаю стороннюю библиотеку (кажется, некорректно). Создаю объект сторонней библиотеки с обращением к DOM-элементу в index.html Пытаюсь создать объект и в конструктор module_class1 передаю объект с якобы подключенной библиотекой. При сборке то собирается, вываливает предупреждение, мол, сторонняя библиотека тоже линкуется. Конструкция не работает. В webpack.config.js добавил в исключение библиотеки, но не помогает, получается, что тогда она не подключается. В общем, посоветуйте, как правильнее всё это сгородить.
>>843830 Если делаешь export default, то название не пишешь -- это дефолтный экспорт же. Т.е. замени export default class Class1 на просто export default class.
>>843824 Т.е. получается настроить совмещение html / js в одном файле не получится? Поэтому js beautify будет безжалостно кромсать html-теги и ide подсвечивать только JS?
Есть проверка: window.getSelection().focusNode.parentElement === document.getElementById('xxx')
проверяет является ли элемент с фокусом внутри которого произошло выделение элементом с id = 'xxx'
Суть проблемы в том, что внутри элемента с id = 'xxx' могут быть созданы новые элементы и если уже выделять внутри этих новых элементов, то проверка не проходит. Как сделать чтобы проверка проходила если выделение происходит внутри любых элементов расположенных внутри элемента с id = 'xxx'? Как правильно написать проверку?
>>843967 Странно, я уже переустанавливал все пакеты и ничего не менялось Если не трудно, попробуй установить gulp-sass, так как node-sass это его зависимость
>>843840 Ну это то ладно, исправил. Уже установил эту библиотеку через npm. Попытался грузить еще одним загрузчиком. Не взлетает. Боже, какие костыли. А так синтаксического сахарка хотелось.
>>843982 Пробовал, то же самое. node v6.3.1 (npm v3.10.3) [email protected] [email protected] Может еще и от платформы зависит. Поищи какие именно файлы в node-sass занимают место.
>>843991 Еще при первой установке эта параша просто так не устанавливалась, а требовала питон второй версии и сишный компилятор Ладно, хуй с ним, перейду на ликус, от винды уже горит жопа
Анон, нормально если я в приложении на react&redux в некоторых местах буду использовать реактовский стейт? Например, если мне в каком - то компоненте надо показать/скрыть маленькую деталь по клику
>>843991 У меня вообще нет директории build, при установке нужные бинарники качаются с гитхаба. Если зафигачить export SASS_FORCE_BUILD=1, то build появляется и node-sass разрастается до 93M. После удаления этой директории gulp sass продолжает работать.
Стороннюю библиотеку я подключил, вижу её в bindle.js файле. https://jsfiddle.net/s38w7z9r/1/ main.js - точка входа. Там я импортирую этот модуль и модуля класса. Но при создании экземпляра класса Rect, в самом модуле rect.js ошибка, метод .rect сторонней библиотеки Snap там неизвестен, хотя я отправляю объект как аргумент. Почему не взлетает? Так нельзя что ли?
>>843501 Анон, второй день пытаюсь понять твой код. Каждый элемент по отдельности мне ясен. Но что происходит, когда ты чейнишь функции одна за другой .редьюс.фильтр.фльтр.фльтр - как вся схема взаимосвязей внутренняя выглядит, где почитать про чейнинг функций такой? Или вообще что почитать? Как ты пришел к такому решению?
Сап, задам вопрос не по программированию, но думаю анон знает как это сделать (тем более, это связано с js, а сам я не программист). Введя в гугле Solitaire можно поиграть в их реализацию косынки. Так вот, она мне очень понравилась. Как можно скачать только игру, чтобы можно было играть без интернета, на смартфоне? Заранее спасибо.
>>844207 >Solitaire Это фрэйм, так что можно. С другой стороны, это может сильно зависить от окружения и кода Гугла вообще.
>>844211 Если хочешь - попробуй скачать веб-страницу полностью (в браузере есть такая функция, получится архив). Если всё будет норм - будешь играть без сети.
>>844212 при простом скачивании в итоге загружается только фон, вместо карт белые макеты, и drag and drop не работает(как, впрочем, и всё остальное). Янд.браузер
>>844278 Цепочки вида b = a.f().g().h() это по сути просто: b = a.f(); b = b.g(); b = b.h();
Где f, g, h каким-то образом преобразуют изначальный объект или список объектов. Пример: Array.prototype.f = function filter(predicate) { . . let result = []; . . for (const x of this) { . . . . if (predicate(x)) result.push(x); . . } . . return result; }
То есть после array.filter(odd) мы получаем новый массив, в котором только нечетные значения изначального. Можно снова применить filter к этому новому массиву и получить еще один массив и так далее.
Но допустим метод возвращает не список, а число, к примеру array.average(), тогда уже не получится применить фильтр к числу: array.average().filter(odd) // ошибка, у чисел нет метода filter
> Как ты пришел к такому решению? Сначала реализовал симметрическую разность для двух значений.
Некоторые тесты провалились, "что-то там слишком много значений в результате", аха, нужно только уникальные возвращать. Добавил фильтр, чтобы убрать повторы. Как вариант можно было преобразовать в Set и потом обратно в Array, но мне не нравится, как это выглядит. Кстати, я загуглил как это делать, я бы мог и сам реализовать, но я надеялся, что есть какой-нибудь встроенный метод Array.unique.
Теперь проваливаются другие тесты, в них больше двух аргументов, ох, нужно симметрическую разность для произвольного числа значений, окей, reduce как раз для таких случаев существует: [a, b, c, d].reduce(^) -> ((a ^ b) ^ c) ^ d = a ^ b ^ c ^ d
>>844528 Ребят, теперь нужна помощь по расположению квадратика относительно верха. Когда пишу marginTop, отбрасывает и черный квадрат, paddingTop распидорасивает красный квадрат, а top тупо не пашет. Как быть? Спасибо.
>>844669 Эмбер точно нет. Ангулар2, если хочешь быть в тырпрайз тренде, но готов к трудностям, связанными с новизной технологии. Реакт/Vue, если хочешь быть в тренде и не хочешь особо ничего учить.
>>843673 Нормальный разработчик со знанием энгулар за такие копейки не пойдёт работать, вакансия в аккурат для совершеннолетних школьников, так что дерзай, работающий за еду.
Аноны, посоветуйте что-нибудь почитать, блоги там какие-нибудь, про модульность в js. Amd, requirejs, browserify, вот это вот все. Или примеры проектов какие-нибудь. По старинке надоело код хуячить.
Как вникнуть в эти ваши числа ебаначи и прочую хуйню. Это сразу должно произойти или постепенно?) Неужели все все схватывали сразу, я совсем потерян для общества? И неужели для фронта нужно знать всю высшую математику? Вы меня заставляете плакать.
Я хуею, история реально движется по спирали. Только вместо автотулс хуйни в вебе всякие грунты, боверы, нпмы, тревисы и прочая хуерга. Пиздос, нахуй так жить блядь.
>>844908 зачем тебе вышка ? Полистаешь ее немного когда и если будешь плотно с webGL работать и скайрим в браузер переносить, разве что для программирования дискретка не помешает ну так ее третьеклассники в школе для особенных детей могут осилить
>>844913 Ясненько. Просто я как бы сразу сыканул. Принцип понятен, но так сказать что я прям ебать в 2 счета могу эти задачи решать, нет, но ладно.. не все сразу. Спасибо что успокоил. А то я уже обосрамс
>>844908 Бля, че сложного в фислах Фибоначи? Следующее число - сумма двух предыдущих. Ты сумму чтоли запрогать не можешь? Какая высшая математика. Тебя никто матаном и дифурами не грузит. Сиди, кодь спокойно.
>>844915 История всегда движется по спирали, а необучаемые макаки слишком необучаемые. Сейчас много проектов переходят на cmake. Какую хуйню в очередной раз придумают в "современном" вебе для сборки и решении зависимостей библиотек - хуй его знает.
Поясните за этот раздел https://learn.javascript.ru/es-modern. Предыдущие разделы усвоил, вопросов нет. Но блять эти промисы с генераторами просто взрывают мозг. Не обосрусь ли я если его скипну(потом вернусь) и приступлю ко второй части учебника?
>>845013 Точка в ссылке, не надо так делать. Понятия не умею что в твоем учебнике, но ES5 и ES6 это настоящее жаваскрипта, а то что учил ты некий фундамент, а некоторые части уже рудименты. Уясни вот что -- язык и среда в которой он живет это не нечто статичное, тебе постоянно надо будет за этим следить.
>>844981 > Meteor Куча реализованных для тебя модных фишек и которая будет тебе мешать сделать что-то нетипичное для этого метеора.
>>844925 Выбор - это всегда хорошо. То, что твой скудный мозг не понимает, что бывают для одной задачи альтернативные инструменты, с разными достоинствами и недостатками - это твои проблемы, а не "макак"
Сам пишу на C++\Python, но для своего проекта нужно было сделать небольшой интерфейс. Взял js+bootstrap. Писал в процедурном формате, куча функций (широких по своим задачам) в одном файле.
Вопрос: как можно рефакторить всю эту кашу, привнося минимум изменений (ни на какие реакты и ангуляры перекатываться не хотелось бы). Если что, ничего про классы в js не знаю, какие-то там прототипы и прочая муть.
>>845276 Ну вот какое-то время назад придумали bower. Окай, был вау эффект, какая гибкая штука без рекурсивных зависимостей. Что сейчас я вижу? Рекомендуют от него избавляться в сторону дефолтного npm из-за того, что он не резольвит вложенные зависимости. Альтернативы - хорошо. Но блядь, альтернативы в вебе это жгучая невыносимая боль. >>845356 require(amd) + билдер навроде webpack. Это сейчас единственная модульная система, от которой не тянет блевать в js. Ну и еше советую никогда не писать на чистом js. Используй сразу typescript/coffee.
>>845364 > Ну вот какое-то время назад придумали bower. Окай, был вау эффект, какая гибкая штука без рекурсивных зависимостей. > Что сейчас я вижу? Рекомендуют от него избавляться в сторону дефолтного npm из-за того, что он не резольвит вложенные зависимости. Ну так, и что не так? Нпм сейчас заимел преимущества бовера, вот и предлагают от бовера избавляться. Бовер стал неконкурентоспособной альтернативой > Альтернативы - хорошо. Но блядь, альтернативы в вебе это жгучая невыносимая боль. В чем боль? Не хочешь мигрировать - не мигрируй, никто же не заставляет. Или тебе от скорости развития этого всего пичот?
Кофе уже давно загибается, только разве что рубисты все еще когда-то реализованные проекты на рельсах с ним поддерживают. Плюс ты еще сотню раз его проклянешь используя с ним какие-нибудь фреймворки и глядя на Евполне валидный, но не рабочий код -- привет неявным ретурнам и специфики транспиляции кофе в жс.
Тайпскрипт так себе, лучше все же придерживаться жс в его новых спецификациях. Ну с каким-нибудь вторым ангуляром может и зайдет, ведь для жс так доков и не завезли.
>>845411 >Или тебе от скорости развития этого всего пичот? Горит от того, что идиоты тянут всякую хуйню, игнорируя здравые идеи, и спустя годы с покерфейсом добавляют фичи в репозиторий. За разработкой всей этой парашикухни я перестал следить, когда проекты разделились. Пока вот снова не пришлось этим пользоваться. >>845431 >для жс так доков и не завезли Завезли jsdoc с тайпдефами в комментариях и прочими радостями. Только толку не особо много увы, пользуется сейчас этим полтора java миддла. Кофе живет и таки ближайшее время все будет цвести, потому что пахнет только js. Для ruby/python подобия, где функция всегда возвращает значение либо undefined/nil проблем никаких не бывает, это все привычно.
Я действительно понимаю jQuery. Когда-то она была необходима для нормального поиска по DOM. Сейчас это - неплохой швейцарский нож с годной расширяемостью. Я действительно понимаю AngularJS. Для огромных проектов, когда нужен инструмент "из коробки", который делать буквально всё что тебе может понадобиться - он очень годный. Я понимаю Bable и es5-shirm - хочется и нахуй сесть фичи новые, и охуенную кроссбраузерность. Я понимаю PrototypeJS. Я понимаю Lodash. Я понимаю UnderscoreJS.
Но у меня дикий баттхёрт с React. Это полный пиздец, господа. Я открыт для всего нового, но смешивать логику отображение - это кромешный пиздец. Ведь так сложно сделать отдельную функцию для шаблонизации? Нет, нужно вставлять куски HTML прямиком в например код парсинга ответа сервера! Это, пожалуй, самая ебанутая библиотека для JS: она тяжёлая (и даже не в плане фич как все остальные, а именно в размере), она ебанутая просто в край, у неё просто пиздец какая хуёвая документация. В ней всё ебанутое: от задумки до исходного кода.
>>845454 >самая ебанутая библиотека для JS Не самая. На самом деле, jsx на фоне большого количества говна, как шаблонизатор html, хорош. Ты просто строишь представления из компонентов, расширяя dom своми компонентами когда необходимо. Вот тут отличный пример есть https://github.com/ReactTraining/react-router/tree/master/examples/huge-apps
Самый пиздец на самом деле творится в ангуларе с его js внутри html. Причем уровень вложенности в чудной нагруженной логике может быть невероятным.
>>845464 >как шаблонизатор html Как шаблонизатор хорош LoDash - даёшь ему шаблон, потом даёшь готовые данные - вот тебе и результат. А jsx хорош разве что "на фоне большого количества говна" для тех, кто не умеет в нормальные шаблоны, как по мне. А вообще, шаблонизация только на JS - извращение ещё то
>js внутри html Кстати, из-за этого раньше ненавидел KnockoutJS. Пожалуй, только она ебанутей.
>>845454 Ты не улавливаешь философии. Суть в том, что все компоненты изолированы. Нет связи между ними в виде шаблонов, стилей и прочего говна. Удалив компонент - ты удаляешь все, что было с ним связано в проекте. И это действительно охуенно удобно. Только реализация реакта мне пиздец как не нравится, вот в vuejs эту идею лучше всего передали.
>>845513 В том плане, что нахуя ему str_replace, если можно это сделать вызовом метода `.replace`? К тому-же, выше я кидал решение с прототипом и чередой replace'ов.
>>845511 >vuejs Тут чуток лучше - что в сравнении с React, что в сравнении с Knockout. Но всё-равно мне кажется, что проще сделать коллекцию-объект и вызвать его .init с нужными элементами. Конфигурировать JS в HTML - это пиздец.
>>845531 Тот, который нужен работодателям твоего города, если собрался туда идти. Если метишь во фриланс 300ккк/планковское время, то ЛЮБОЙ. Всё равно все учить придётся.
Тащемта, я их использую, но применять такой мощный инструмент как Proxy для такой хуиты - вот неадекватность. Короче, ES6 люблю и расширяю браузеры полифиллами, просто не использую по чём зря. Вспомнил ебаната из прошлого треда, который не знает основ синтаксиса, а уже использует стрелочные функции, блять!
>>845755 Хуесос, я понял на счет статических переменных которые БЛЯДЬ АХАХАХХА КОНСТАНТЫ НА САМОМ ДЕЛЕ ХАХАХАХХАХАХАХ ОБЪЯСНИ ПОЧЕМУ В МОЁМ ПРИМЕРЕ https://jsfiddle.net/czLcf2d3/ foo.consoleLogConst is not a function, когда я 5 000000 00000000 0000 раз написал Foo.consoleLogConst = function() {...}
>>845766 КАКОЙ БЛЯДЬ РЕГИСТОР СИМВОЛОВ СУКА? Я БЛЯДЬ НАПИСАЛ var fooОБРАТИ ВНИМАНИЕ ЧТО ЭТО ОТДЕЛЬНАЯ ПЕРМЕННАЯ С МАЛЕНЬКОЙ БУКВЫ = new Foo(); ТО ЕСТЬ НОВЫЙ ОБЪЕКТ FOO ДОЛЖЕН БЫТЬ ПЕРЕМЕННОЙ foo С МАЛЕНЬКОЙ БУКВЫ
>>845775 >ибо Foo С БОЛЬШОЙ БУКВЫ не вернул нихуя и прототип у него пустой Ууууууууу Ладно, похуй, поясни мне тогда как определить константы чтобы можно было передавать в собственный конструктор, а то у меня уже мозг горит, на людей буду кидаться если продолжу писать на этой хуете
>>845782 Собственно, вот: http://jsfiddle.net/czLcf2d3/4/ Твой "класс" - это функция. Функция - это объект, так что CONST - это всего-лишь статическое свойство Foo.
Бля, давно так не угорал. Как вы блядь пишите не осилив даже какую-нибудь вшивую книгу для ньюфань. Реально правильно люди говорят, что у нас проблема не в языке, а в комьюнити
Выделяю текст, нажимаю кнопку и рядом с выделенным текстом появляется "что-то". Как сделать так чтобы каретка оказалась после вставки, а не перед ней. Такой код:
var newNode = 'что-то'; var range = document.getSelection().getRangeAt(0); range.insertNode(range.createContextualFragment(newNode));
>>845789 >Бля, давно так не угорал. Как вы блядь пишите не осилив даже какую-нибудь вшивую книгу для ньюфань. Реально правильно люди говорят, что у нас проблема не в языке, а в комьюнити Может быть. Признаюсь, что я действительно не осилил даже свой первый учебник по js, потому что не посчитал что он полноценный язык со своими особенностями, а что-то на уровне html\css.
- функции, которые объекты, которые не возвращаются как объекты, для меня это было целое открытие. Я никогда не думал что такое даже возможно.
Впрочем, языки учатся для конкретных задач. Я поставил себе задачу выучить js за две недели. Думаю, я уже достиг успехов, учитывая что я две недели еле еле недочитал учебник, и вот уже пытаюсь писать на ООП.
>>845810 http://pastebin.com/DsA7fU10 И это она ещё не закончена. В будущем запилю options/head/get/post/put/path/ методы через цикл (видимо, придётся ёбаную инициализацию добавлять в будущем), потом разделю настройки на каллбэки и запрос, а сам запрос буду передавать в каллбэки как 2й аргумент, добавлю поддержку response.xml и пр.
>>845812 Так-то где-то год уже знаю на нормальном уровне. Мои проблемы - перфекционизм и ненависть к библиотекам, поэтому вряд-ли буду работать по JS.
>>845800 Бля, ну вся эта недофункциональщина-прототипщина немного замедляет наворачивание говна языка, но за пару недель все-таки вполне можно, если до этого какой-то опыт в кодинге был.
Пытаюсь вкатиться, проблема в ИДЕ. Пытаюсь пользоваться webstorm и отлаживать в хроме, но это выглядит как костыли и виснет при КАЖДОМ перезапуске дебагера. Так жить нельзя поэтому пришел за советом. Почему не могли сделать как в пичарме, к чему эта дрочь? Ковырять в нотепаде тоже желания нет. Как быть?
альзо учу по книжке 2000 года, где вовсю поясняют за ЖС 2.0 и как лихо использовать классы. После часа ебли я выясняю что все это так и осталось манямечтами. Блять, 16 лет прошло, что за цирк?
>>845864 >придумали за 10 дней Его синтаксис придумали за 10 дней. Когда сможешь написать хотя-бы полифилл к промисам - вот тогда будешь где-то на среднем уровне.
>>845871 Создание классов - основа любого ООП-языка. За 2е недели ты разве-что синтаксис нормально запомнишь сможешь. Если есть опыт программирования - тогда, может, и всякие типизации и проверку типа за это время осилишь. Но не более, мне кажется.
>>845872 visual studio code скачал бесплатную версию. вроде все норм можно скачать базы для ноды и прочее прямо туда сразу и еще наверно есть фичи какие то которые я еще не знаю. пайчарм оче хорош да. эта штука тоже норм.
Анон, как принято писать контроллеры в Ангуляре, в частности методы, привязанные к скопу? Их все можно делать процедурами, ничего не передавать в параметр и просто менять значения нужных скоп-переменных, потому что они находяться в замыкании и похуй, как с ними взаимодействовать? К примеру, ф-ия, которая переключает порядок сортировки списка:
<button ng-click="toggleSort()">Пук</button>
$scope.toggleSort = function() { switch($scope.sort) { case 0: $scope.sort = 1; break; case 1: $scope.sort = -1; break; case -1: $scope.sort = 0; break; default: break; } }
>>843748 > А Angular - ебатень, что с модулями, что без. Ещё и исходники нормально не посмотришь, блять. Тут ты ошибаешься. Ангулар вообще максимально модульным старались делать и получилось очень неплохо. >>845888 Я про форт, а не фортран. >>845888 >костыли к велосипеду Старые браузеры не нужны.
>>845888 >понимание классов - основа любого ООП-языка Проиграл. Но вообще радует, что сейчас в веб-программировании идеи Алана Кея и Вирта получили вторую жизнь, пусть немного это и извратили.
Ананасы-шеб разработчики, сильно ли вас дрочили по алгоритмам на интервью и\или по работе? Я достаточно хуевенько (никак) знаю алгоритмы, поэтому решил взять "Алгоритмы и структуры данных" и за недели 2 вкатиться в удивительный мир связных деревьев и быстрых сортировок бинарным пузырьком Шелла. И вообще, посоветуйте книгу по алгоритмам для JS-разработчика (Data Structures and Algorithms with Javascript не предлагать, ибо хуево отредактированное говнецо)
Основа любого ооп языка это предоставление эффективных паттернов для написания интерфейсов и выстраивания отношений между объектами. А как ты это будешь делать всем насрать, хоть через жопу, лишь бы удобно было писать и поддерживать это говно.
Вы оба, вы ебанутые? Нахуй вы берёте цифры с потолка, даже не попытавшись адекватно взвесить то, что планируете изучать?
> посоветуйте книгу по алгоритмам для JS-разработчика Почему JS? Самые качественные труды по алгоритмам не зависят от языка, так и должно быть. Зачем ты пытаешься себя рамками языка ограничивать?
>>846062 Бля, что вы за дауны что учити годами и выучить не можете. Я клитора прочитал за неделю, почти весь учебник. Потом еще недели 2 вкатывался в ангуляр первый. Сейчас уже работаю ангуляр девелопером и успеваю смотреть на второй ангуляр и тайпскрипт.
>>846068 > $ Prefix Naming Convention You can create your own services, and in fact we will do exactly that in step 11. As a naming convention, Angular's built-in services, Scope methods and a few other Angular APIs have a $ prefix in front of the name. Догадайся откуда.
>>846068 > В пхп переменные с $ начинаются В перле тоже, почему ты такой ограниченный и однобокий?
>>846018 Так-то не спорю, что старались. Может, кому-то даже нравится. Но меня такая поехавшая модульность бесит. Я уже писал выше: проще подключить файл с нужными самописными или найденными велосипедами полифиллами, а нужный код - группировать в объекты.
>форт Ты про дикий язык программирования..?
>Старые браузеры не нужны Ещё как нужны. Видел > 10ти вакансий с упоминанием "поддержка IE6". Одна даже была с, блять, IE5/5.5! Да и для своих проектов хочется настоящей кроссбраузерности.
>>846020 В ES6 мне не нравится то, что нельзя ставить свойства в прототип. Без этого это действительно извращённые классы.
>>846062 >качественные труды по алгоритмам не зависят от языка, так и должно быть Двачую этого.
>>846097 Да нисколько. Это действительно понятно из синтаксиса, как по мне. Алсо, >>846108 - таки да, забыл что на learn есть статья про стрелочные функции. Хорошо сгруппировано, кстати, ибо я выискивал нормальную информацию по забугроязычному MDN.
>>846127 >дикий Сам такой. В стековых языках нет ничего дикого. С любовью к велосипедостроению тебе только на форте колеса и стоит писать. >>846127 >хочется настоящей кроссбраузерности Лол, когда там последний анализ рынка браузеров проводили в пидорахии? У 98% пользователей уже современные девайсы. От нищебродов с говном мамонта никому нет никаких профитов.
>>845520 >Конфигурировать JS в HTML - это пиздец. Двачую. Мы используем вот такую красивую и простую конструкцию. Все остальное перенесено в шаблонизатор на клиенте. Bb - backbone http://pastebin.com/Q15wEbXB
То чувство, когда по архитектурному вопросу ты оказался прав, но синьор-помидор постановил, что это говно, а надо наоборот (что пиздец говно), запилили по помидорному и архитекторы проекта обоссали синьорно-помидорное решение и апрувнули твой архитектурный подход, ранее без пруфов обоссанный серьезной помидоркой.
Архипелаги, киньте ссылку на какой-нибудь нормальный проект сайта на node.js, за который выложившему не стыдно. Посмотрел бегло несколько штук - вообще непонятно, кто эти люди и почему они не осознают своего несовершенства.
>>846448 Нормальный проект - публичный или корпоративный сайт, прод исходники которого доступны для просмотра. Проблема просмотренных - куча закомментированного кода, неструктурированность. Если делать так и не выкладывать в общий доступ - пожалуйста, а если публикуешь что-то - будь добр за собой прибрать. К примеру, исходники общеизвестных пакетов любо-дорого посмотреть. Свои проекты выкладывают как на душу легло, без рефакторинга.
>>846525 например, какие серьезные сайты? С тем что я сталкивался, написанном на джаве - ужасные корпоративные порталы десятилетней давности и монструозные обертки над ораклом, написанные странными людьми, которые через хибернейт выковыривают себе гланды через жопу, вместо того чтобы написать процедуру в БД. Так что не знаю, насчет серьезных сайтов.
>>846574 >какие серьезные сайты? Практически все, чем ты пользуешься в интернете так или иначе использует технологии, построенные вокруг jvm. Wikimedia, ibm, aliexpress, linkedln, amazon, ebay, google. Да можно долго перечислять.
Аноны, объясните почему jsonы надо в одинарные скобки заворачивать? Ебался с этой хуетой минут 20, пока искал ошибку... И ошибка была в том, что вместо ' ' использовал " ". Вот только какая разница, если JSON.parse требует строку как параметр и не один хуй в какие ковычки я ее запакую?
Верстала врывается в тред. Анончики, молю, обоссыте код конструктивно. Крестики-нолики онлайн на js, можно сказать первое приложение, раньше только верстал.
Сколько не захожу в этот тред, читаю либо толстоту и рофляночки, либо ну совсем уж примитивные вопросы как правило без решения, на которые мне даже стыдно отвечать (это знать нннада).
Неужели тут нет ни одного программиста, который хоть что-то написал на js именно полноценное, игру там, приложение, а не просто скрипт, выводящий алерт с надписью "ибал вашу матерь".
>>847227 Написал одно действительно большое приложение для внутренних нужд компании, месяцев 5 ушло. Сейчас второе пилю, еще больше. И еще пару относительно небольших (~1000 LOC) для себя и друзей делал.
>>843519 (OP) Сразу скажу, что сам жс я пока только-только начал учить, совсем хеллоуворлды. С версткой поувереннее. Поэтому могу немножко неточно описать, как бы со стороны пользователя, а не разработчика. Нужен фреймворк/либа для разработки диаграмм и схем, таких, как на пик1 - создаю стилями див с градиентом и фигурками-рисунками-человечками в уголке, задаю стилями же способы связи (толщина линии, ее начертание и т.д.), с помощью фреймворка надо будет из таких блоков строить то, что на пик1. Оно может быть большое и объемное. Конкретно: либо юзер методом драг-н-дропа вытаскивает из панельки такие штуки, выбирает связи, задает свойства (цвета, текст на квадратах и линиях связи), а я средствами фреймворка преобразую это в некий формат, в котором это все хранится, повторно показывается (ну и реализую сам интерфейс для перетаскиваний-редактирований). Либо отдельная программа подготавливает такую схему (блоки + связи между ними - какой с каким), а средствами фреймворка этот формат читается и фреймворк подбирает координаты так, чтобы вся схема была минимальной по величине, но блоки не налезали друг на друга + минимум пересечений связывающих линий друг с другом (и без пересечений блоков, офк). Ну и опять же, чтобы это потом драг-н-дропом поредактировать, сохранить, открыть заново... Все это звучит очень трудно и громоздко, особенно для такого нуба, как я, но наверное, кто-то уже делал тулкиты для работы со схемами, графиками, поиском пути (чтобы вот эти линии без пересечения строить), выбором координат? Делал же, есть такое? Максимально допиленное и легкое в использовании, абстрагирующееся от ебли с элементами как кусками кода, высокоуровневое короче? Те же вопросы для пик2 (там такая же схема, но уже циклы, больше видов фигур), пика3 (там как пик1, но не строгая иерархическая древовидная структура), пика4 (более задротский вариант пика2 - связей, циклов, но меньше элементов).
Аноны, я опять прожигаю стул, этот раз от вебпака. Первая простейшая сборка и уже ошибка: Output filename not configured. Есть html, а также home.js: 'use strict'; let welcome = require('./welcome'); welcome("home");
>>847498 Вот, да. Не знаю, какие из задач эта штука покрывает, но как генерилка из данных + драг-н-дропалка эта штука - ну просто супер, вот прямо ровно то, что нужно, даже сэмплы в комплекте. Вот только она платная, причем дорогая. >>847499 Хм. Примеры выглядят круто, но это вроде как инструмент довольно низкоуровневый, для широкого круга задач. Если смотреть на сэмплы - можно делать классные штуки, но заточки под описанные задачи нет совсем и чтобы желаемое реализовать, придется очень задротить (если смотреть код), функций .сделать охуенно(), как в примере выше, причем ровно под задачи - хуй. Есть еще варианты? В смысле, вариантов-то я уже дохуя нагуглил, но все очень очень дорогие, а свободные - низкоуровневые очень.
Анончики, пожалуйста, как из фуллстак пыха джс рор макаки джуна, вкатиться в джс, заебали все эти сотни спецификаций, хочу стать узким направленным. Пойти во фронт джуном? Или просто стажером джуном? Какие вакансии на хх искать?
Есть тут аноны, кто пользуется browserify + coffeescript? Почему-то не работает даже совсем простая комманда browserify -t coffeeify --extension=.coffee app.coffee -o bundle.js
app.coffee состоит всего из одной строки jQ = require "jquery"
>>843697 >бабки делает, на учебник ему давно похуй Как что-то плохое.. Ну чесслово
Кто не может в англ аналагов так-то нету, у меня дома почти все учебники по JS Фленага, Стефанова, Крокфорда, Закасса, во-первых из-за перевода суть иногда хромает, во-вторых без задачек не так весело.
Для тех кто не может в англ этот учебник реально спасение, а кто может о нем почти и не знает толком. У если бы меня была возможность, я бы запили точно такие же платные курсы, не понимаю от чего бугурт.
>>847625 Куда хочет туда и идет. Оно в вебе явно не лишнее. Хотя крудоклепы могут и не согласиться, мол для copy/paste ума не надо. Но ведь этим веб не ограничивается, правильно?
>>847227 Вот тебе пример. Я вчера полдня ебался с тем, чтобы сделать `HTMLElement.prototype.style` функцией. Не придумал способа элегантней нормализации CSS-свойств для IE. Вся проблема была в том, что было пиздец как сложно заполучить оригинальный `style` - он терялся сразу при присваивании или выбрасывал ошибку при попытке его получить. В итоге таки додумался: взял дескриптор `HTMLElement.prototype.style`, сохранил оттуда get-функцию. Сейчас всё работает, очень даже заебись.
Суть в том, что я, может быть, спросил-бы тут как решить такую задачу, но ведь намного интересней было самому это сделать! Вчера был доволен собой из-за этой надстройки и ещё пары больших фич на сервере.
В общем, спрашивать тут - неинтересно, вот и всё. Тот, кто умеет в JS - напрягает мозг и в итоге, и с интересом, решает задачу. Спрашиваю, видимо, только новички, у которых скиллов не хватает додуматься.
>>847713 >normalize Не в том смысле, лол. Самый явный пример - filter вместо opacity для старых IE. Т.е. я вызываю `style('opacity')`, а внутри стоит фикс. Ещё меня заебало каждый раз искать стили хуй знает где - теперь метод может вернуть как из getComputedStyle, так и из inline-стиля элемента. Стало проще - вызвал функцию раз и не бегаешь по всему браузеру. Ну и парсинг значений, естественно. Числа для всякой метрики, строки - для слов и пр. Тоже самое - с присвоением: `.style('width', 500)` - будет работать так-же, как и `.style.width = 500+"px"`. Ну и всякие плюшки типа передачи массива как RGB и пр. Просто упрощает работу других функций.
Т.е. просто упрощал себе дальнейший кодинг.
>мимо-интересущюийся Таких проблем с вёрсткой у меня не было - дизайн довольно простой и проверенный годами чужого опыта. Т.е. решением таких проблем, как у тебя, я не интересовался. Единственное, что похожее слышал - reset.css, чтобы было проще переписывать стили с практического нуля. Не знаю, сильно оно тебе поможет или нет.
>posthtml Почитал примеры.. пиздец, блять, какую хуйню только не придумают.
>>847737 У меня нет проблем (я хз откуда ты взял, что есть, лол), мне просто было интересно что ты такого у себя наворотил. Старые ишаки не поддерживаю - поэтому на эту часть похуй, остальное более-менее интересно, но такое-себе.
posthtml - нормальная хрень кстати, потом с этим деревом (которое получается после парсинга) можно че в голову взбредет делать и таким образом модернизировать html-ку
>>847760 потому что метод .data() он работает не с data-attrибутами, а с хранилищем внутри джиквери, в который попадают данные из дата-атрибутов, но не только.
>>846166 >В стековых языках нет ничего дикого. Кроме ебанутого[/] странного синтаксиса?
>>>846127 >От нищебродов с говном мамонта никому нет никаких профитов. Про профиты есть смысл говорить когда ты пишешь для заказчика, а не для себя.
>>846161 Так-то можно. Но зачем? Я понимаю, если бы свойства в классах было чем-нибудь абсолютно новым, но, блять, это есть в любом другом языке с ОПП!
Анон, нужна твоя помощь. Мне нужна самая простая функция для шаблонизации, но с поддержкой вложенных объектов и функций. Действовать должно примерно так: > "some text: {string}, other text: {key.string}".template({string: 'str', key: {string: 'str2'}}); > some text: str, other text: str2 . Пытался написать сам, но есть очень печальный баг: > "some text: {string}, other text: {key.string}".template({string: '{key.string}', key: {string: 'str2'}}); , то получается > some text: str2, other text: str2 . Т.е. .replace() не поможет, ибо заменяет всё без разбору.
Был вариант просто допилить все ключи в RegExp, но не получится из-за вложенных объектов. Т.е. у меня остаётся только 1 вариант - перебирать ебанутейшим циклом и использовать regexp.lastIndex и т.п. Но это такой пиздец, что я даже алгоритм до конца не могу продумать.
Анон, помоги, пожалуйста. Я не хочу танцевать с бубном RegExp'ами и lastIndex'ами.
>>847862 >дефолтное значение для стринги - null В смысле "дефолтное значение", лол? Так проверка на равенство. Ты в глаза ебёшься? Привычка делать проверки, ибо .call(null) же. Знаю, что сам так не вызову, но всё-равно привычка остаётся.
Уже как пол года работаю на reactjs. Неужели реакт придумали только чтобы максимально увеличить проложительность разработки? Действительно ли он даёт какие-то профиты при разработке больших проектов?
Пытаюсь проверить строчку с помощью регулярного выражения, но ничего не выходит. Вот сам регэкс: https://regex101.com/r/kYDMec/1 Переписываю в 5 раз. На сайте валидация проходит так как требуется.Про слешы при копировании в код не забываю. В чем может быть дело?
>>847853 > Мне нужна самая простая функция для шаблонизации, но с поддержкой вложенных объектов и функций. Функции в шаблонизатрое? Ты ебанулся? За такое руками и ногами надо пиздить.
>>848053 >Функции в шаблонизатрое? Потому, что, возможно, придётся делать хардкорные сложные расчёты, которые лучше отложить до того момента, когда они действительно будут нужны. Привязка параметров же есть.
>>848047 >Про слешы при копировании в код не забываю А про g-флаг? И точки там не нужны или ты забыл экранировать? А вообще, ты-бы лучше описал чего тебе нужно.
>>843519 (OP) Поясните за babel и react, я что-то в ахуе, как так можно писать невалидный кд и он по какой-то магии работает. (jsx и расширения стадарта)
>>848074 Ну вот открыл в редакторе и он подчёркивает html теги в js, в консоли браузера забил тоже самое, а так оно как-то работает я не понимат что за магия.
>>848076 Я к тому, что твой код так или иначе в конечном счете преобразовывается в инструкции, которые понимает процессор. В случае jsx код проходит через babel или другой транспайлер и становится валидным js. Это магия не больше чем то, что делают компиляторы, интерпретаторы и прочие.
>>848071 >как так можно писать невалидный кд и он по какой-то магии работает Так-же, как и всякие шаблоны пишут в <script type="text/template">. Так-же, как работают TypeScript и CoffeeScript. Bable просто ищет скрипты, парсит их в нативный JS и, если что-то нужно - добавляет. React - тоже самое, но только позволяет вставлять туда куски говна HTML.
Вот и вся магия - хаки и регулярки. Хочешь подробней - смотри исходники.
>>848084 >что заставляет браузер глотать такие файлы В том-то и суть, что браузеру передаётся уже распаршенный JS.
>>847978 >>848258 >Ну для веб-приложений сойдет. Для сайтов думаю, это не нужно. >Для сайтов это не нужно
Пиздец, я хуею с этого овоща. Одна из многочисленных проблем, которую решает Реакт, это как раз снижение порога входа в разработку UI. Это характерно, конечно, для любой другой либы, использующей компонентый подход, тем не менее, реакт позволяет существенно снизить время и трудоемкость разработки фронта девелопером, не специализирующимся на UI, например бекэндером. И, разумеется, предотвращает от многочисленных ошибок при работе с потоком данным за счет использования архитектуры Flux. Ну и профиты уже готового продукта на выходе - скорость рендеринга, ощутимая в комплексных веб-приложениях (особенно, если ты косолапый иплан, не могущий в оптимизацию).
>Неужели реакт придумали только чтобы максимально увеличить проложительность разработки? Я так понимаю, реакт тебя заставляет использовать работодатель? Что конкретно тебя в нем напрягает? Если после нескольких месяцев пользования реактом у тебя сложилось такое впечатление - то лучше действительно выбросить его на хер, нежели слушать доводы в пользу.
>>848266 >Я так понимаю, реакт тебя заставляет использовать работодатель? Почти так. Пиндосы хотят, мы делаем.
Проблем с разработкой не возникает, всё четовски просто, но как-то медленно, чтоли. Чтобы заебошить всего одну страничку нужно дохуя всего сделать. Может быть это и норма, не с чем сравнить, говорю же. Просто хочу сделать свой маленький проект на реакте, так люди говорят, что не надо, мол слишком долго, проще использовать какой-нибудь backbone.
>>848275 >проще использовать какой-нибудь backbone Backbone иногда используют в связке с Реактом, для придачи последнему модели. Я хз какой профит юзать бекбон в чистом виде.
>>848266 > реакт позволяет существенно снизить время и трудоемкость разработки фронта девелопером Оптимизировал пару лет сервера одной рекламной компании. Когда выбирал для себя что-нибудь готовое в вебе, от реакта, доджо, эмбер и прочих хотелось блевать. JSX в том виде, котоырй там есть - дерьмо.
>>848328 Модульного тестирования обычно достаточно. TDD применяемое без опыта очень сильно увеличивает время разработки. >>848308 > Как научиться в анимации? Линейная алгебра + геометрия, ну может, хз что там сложного. Анимируй например процесс загрузки в виде тора двумерного.
Хочу начать фрилансить, но не знаю достаточно ли моих знаний. Есть ли способ себя протестировать? И еще: на каких биржах фриланса более честное отношение к исполнителю и не требуется финансовых затрат(или небольших затрат относительно других бирж), чтобы приступить к работе?
И еще: почему так часто встречаются предложения о работе, связанные с Wordpress/OpenCart, кои 70-80% от всех предложений и складывается впечатление, что JS-программист практически не нужен - PHP-программист более востребован?
я думаю нужны знания: в первую очередь git, bower/npm, grunt/gulp, html5/css3, es2015, webpack/browserify фреймворки/либы jquery/angular/react/ember/backbone ибо легаси говно во фрилансе каждый божий день важны понимание ООП и ФП(я не говорю вообще о умении управлять своим свободным временем и продуктивно работать и даже не говорю про умение окучивать клиента)
второстепенны: php ибо легаси python/ruby для общего развития понимание работы apache и nginx умение работать с ssh и линукс вообще
если ты сидишь под виндой - то во фрилансе рано или поздно ты упрёшься в потолок стоимости своего труда. яблоёбы и красноглазы здесь идут дальше вверх по доходам
Переношу свои проекты на другой диск, решил не переносить ноду, просто через нпм опять потом поставить. Тут штук 10 проектов всего, даже нормальных нет, только штуки типа редукс-туториал, ну и пара для верстки с гулпом, так как для меня нода это на поиграться по большей части. Как же я охуел от количества файлов.
>>848569 Все равно глаза режет. Вот ты вешаешь класс скопировано, а потом удаляешь copied. Интендация раздражает. И еще у тебя это ебаная самовызываемая функция-хуюнция, но когда я вижу конструкцию вроде (function(){})(); я ожидаю увидеть в самом конце пару круглых скобочек: "(" и ")". Твой код неприятно читать. В жизни ты наверное плохой человек. И девушки у тебя нет.
>>848590 Ой зачем так обкакал то, я от силы 3й месяц в этой теме и только начал вникать.Насчёт красоты не спорю, этот кусок кода мне нужно только поправить.Только насчёт девушки угадал"))))"
>>848591 Ну-ну, не горячись, я помог как мог. Последний абзац для лулзов вставил.
Я привел тебе 2 возможных ошибки к твоей проблеме, о которой ты между прочим ничего не написал.
К слову, насколько я помню, современные версии браузеров изменили свое отношение к функции копировать/вставить, вообще оно по разному работает в разных браузерах. Я не писал велосипед, но юзал какую-то либу и у меня были траблы с использованием её в сафари. Но в принципе мое решение было как на твоем пике: в случае проблемы выдавать алерт, что надо использовать cmd+c
>>848594 По тз кнопочки должны копировать ссылочки и похер всем на соображения безопасности, проблемка в том, что при переборе массива я создаю эти самые ссылки\кнопки с разными классами, а все возможные примеры я видел со статичными вариантами кнопка\окно.
В моём примере js кода где то ошибка пунктуации\логики и я не могу её найти, от слова совсем.
Либы использовать нельзя, именно набыдлокодить надо.
>>843519 (OP) Надо создать форму и сохранить введённый текст в куисах. Потом надо брать значение из кукисов и вставлять. Как это делает? Я не погромист и меня уже затрахало искать это в гугле, везде неработающий код.
Братишки, выручите. Имеется веб-приложение на хтмл+жс, нужно чтобы оно представляло из себя обычное десктоп-приложение. Пробовал собрать через nativefier, но он работает только с хостом (локальным или удаленным), а это категорически не подходит, ибо удаленный хост не устраивает заказчика, а держать собранные исходники у клиента на компе = пиздец. По итогу: нужно превратит хтмл+жс веб приложение в ОБЫЧНОЕ десктопное(без хостов), какими средствами я могу это сделать?
>>848794 Добавлю. Приложение при сборке создает локалхост, по нему в браузере оно и работает, нужно чтобы оно работало без этого или само поднимало для себ я локалхост и работало в нем. Извините, если тупые вопросы. Сам не жсник.
>>848805 >Каким надо быть дауном, чтобы писать на js под винду? Например, таким как я. Я писал небольшую аппу под винду, которая дергала WinAPI через NodeFFI. Брата нет, зависимость лютая.
Анон, помоги с реактом Вот у меня есть длинная строка в которой есть, допустим, такой тег: [ Жирный текст ] ТЕКСТ [ /Жирный тест ] Как мне редерить такую строку так, чтобы этот тег превратился в [ b ], да и еще и опасные теги script, style, etc. не редерились как теги? Я понимаю, как заменить это в самой строке, но как в любом случае редерится обычный текст без тегов
Привет, объясните вот этот пример с лерн.жс. Почему счетчик не сбрасывается, когда вызывается ф-я makeCounter, ведь внутри есть строчка counter.currentCount = 1, которая присваивает значение 1 счетчику, каждый раз когда вызывается ф-я?
function makeCounter() { function counter() { return counter.currentCount++; }; counter.currentCount = 1;
>>848919 если не ошибаюсь, то makeCounter возвращает функцию, вызывая которую, ты увеличиваешь счетчик (counter.currentCount), который сохранен в makeCounter. короче, каждый экземпляр makeCounter имеет свой счетчик внутри. который инициализируется с единицей. он не должен сбрасываться, он должен хранить значение. кури замыкания и hoising
Что это за петушиная движуха с PostCSS, бесит меня прям. Зачем это ссаньё надобно, может я просто недостаточно клубничного смузи пью, чтобы понять хайп? Позвали дописать в проект на реактоне кусок функционала. Открываю проект, а там везде эта стрёмная хуйня. На каждое базовое действие типа импорта переменных приходится четыре плагина, всё в перемешку. Глобальные какие-то перменные тоже через плагины инджектить надо, что за дичь, господа? Я понимаю, что всё лучше чем инлайн блевота а-ля material-ui, но в чём профит-то? Чем это лучше обычного сасса?
>>848991 Тут не надо пустать postCSS и плагины для него. Сам postCSS ниче не делает, кроме как в АСТ и обратно. А так: 1. JS (можно самому написать плагин + В одном плагине js разобраться быстрее в случае некорректной работы и сделать PR, чем во всей кодобазе любого препроцессора) 2. Модульность. можно подключить только то, что необходимо 3. Юзанье нового синтаксиса уже сегодня 4. Не только про препроцессоринг файлов: - всякие форматы - линтинги - префиксы - изоляции - минификаторы/оптимизаторы 5. Быстрота 6. Стильно, модно, молодежно)
Если проект который надо поддерживать уже имеет препроцессор, то не надо ниче менять, можно просто добавить postcss и плагины (тот же автопрефиксер).
Если же пишут новый можно не тянуть препроцессоры, а тупо собрать из доступных плагинов postCSS то, что именно небходимо.
Ребята, на работе попросили определиться, куда я хочу двигаться дальше, на какой проект меня посадить и что мне больше нравится. Выбор такой (просто разные проекты и написаны по-разному): 1. Верcтка + Wordprss + PHP + MySQL 2. Backbone+Marionett 3. Angular 1.x Совершенно не знаю, что выбрать. Вроде бы ангуляр сейчас пиздец какой популярный. С другой мне очень доставляет верстать. Но верстать нынче, понятно, любая макака умеет и это не очень перспективно. С вордпрессом можно фриланстиь в свободное от работы время, потому что это пиздец популярно и всотребованно. Плюс ПХП и мускуль это уже более серьезно. На бакбоне я немного писал, но пишут, что он загибается уже. В общем, что делать, куда двигаться? Тимлид сказал что ему не нравится моя неопределенность и я начинаю впадать в панику. Я вообще учу только чистый JS пока точнее читаю по второму кругу Кантора и пишу на ES2016. На работе вообще разрешается использовать любые технологии, можно как на чистом JS писать, так и на жкувери. Словом, на чем удобно - на том и пиши. Посоветуйте что-нибудь, за всем ведь не угонишься.
>>849020 Я бы выбрал бэкбон. Он дает базис, который будет полезен в любом фреймворке. Ангулар - унылое говно, вордпресс можно за пару дней освоить дома, мускуль-пхп в принципе не нужны, если ты не хочешь стать мамкиным фуллстакером.
>>849020 Представил что меня бы поставили перед таким выбором. Какие-то сорта говна прям, ппц. Но если нравится верстка - то я бы выбрал первое пожалуй. (по вообще не в восторге от пыхи) Backbone - ну как бы мертвечиной обмазываться не очень охота. Первым ангуляром тоже. Был бы хотя бы ангуляр 2 - тогда бы выбрал его. Или эмбер. Или реакт. Или vue...
Есть мнение, что отход js к ооп происходит из-за мамкиных вкатывальщиков, которые не могут осилить функциональное программирование. Что думаете по этому поводу?
>>849006 Вот ты сейчас траллишь, да? Обычно верстаков обоссывают за использование jquery из-за пары строк кода. И тут ты такой вместо одной строчки в css хочешь плагины подключать, ппц. Задай своему хедеру position: fixed и не позорь анона.
Платформы node-webkit-vased создавались не для того, чтобы каждое приложение тянуло за собой весь рантайм. Для кого блядь в каждую такую платформу запиливают специальные форматы контейнеров для приложений, которые и должны открываться платформой. Архивы nwjs или asar?
Вы банутые. А потом удивляетесь почему все хейтят.
>>843581 Слак нинужен, в следующем треде лучше вообще его убрать и оставить только телеграм, чтобы не размазывать людей по недомессенджерам. А то, чтоб никому не обидно было можно ещё и джабберконфу добавить, и канал в ирке, написать кого френдить, чтобы вконтакте в конфу вкатиться, в вайбере, ватсапе, скайп, тимспик и вебчатиков пару десятков.
Как вот это function yoba(){} yoba.prototype.options = {}; yoba.prototype.init = function(){}; сделать в жиквери плагине? Делаю $.fn.yoba = function(){};, а дальше что?
В тырпрайзе юзают слак и атлассиановский хипчат, на телеграмопарашу не спешат переходить - видимо что то там с удобством не то. Может быть, отсутствие действительно новых идей, зато куча стикеров для школьников?
>>849372 > Как порвало то, аж три поста накатал Нам там как минимум двое, и с чего вообще по-твоему "порвало"? С твоей консервативной логики?
> В тырпрайзе юзают слак и атлассиановский хипчат Какое отношение тред жса имеет к тырпрайзу? Тут нужна просто оперативная связь, а не каналы для десятка команд. Слак - это профессиональный инструмент, оче глупо его использовать для обычного общения, когда есть более простые и дружелюбные мессенджеры вместо тяжеловесных корпоративных монстров
>>849372 Детектор чини. В твоём тырпрайзе будут использовать любой распиаренный говночат для бессмысленных чатиков, потому что так модно и ААА, у нас дедлайны горят, фикс зис плиз. У нас например все основное общение в почте и только в почте. Заставляет думать перед отправкой.
Вечер в хату. Тред не читал. Сам пишу бэк на пиздоне и решил выучить жабаскрипт что бы для разнообразия хуярить на ноде. Все вроде для начала понятно, но мучает вопрос библиотек. Можете дать список самых модных и стильных либ для написания бэка под ноду. Интересует также либы для работы с БД(mongo,postgre,redis). Заранее спасибо
Коданы, второй день гуглю и никак не могу понять почему не работает переход на другую страницу путем присвоения в скрипте document.location.href = "2.html"; Скрипт запускаю баттоном, все как в примере, должно вроде работать, но нифига.
Работает в фаерфоксе, если после этого присвоения поставить alert(document.location.href); Тогда выскакивает сообщение и одновременно переходит таки на другую страницу. А в хроме не работает никак. Наверняка тут какое то очень простое решение, подскажите плиз, или хотя бы пошлите в сторону хуя верного решения.
>>849821 вообще есть где-нибудь гайд для саблайм текст 3, чтобы его настроить под жс? Проверку синтаксиса, дебаг, консоль какую-нибудь и всё в этом роде
Этот тред посвящён главному языку будущего - 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
JS-конфа в телеграме:
https://telegram.me/jsthread
Конфа /pr/ в Slack:
https://invite-me-to-2chpr.herokuapp.com/
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.