Это копия, сохраненная 22 апреля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, 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
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsbin.com/ для браузерного кода и https://ideone.com/ для серверного кода.
>не были показаны в примерах
Какие тебе примеры нужны? Чтобы такие же задачи в главе разобрали. а потом в задаче тебе только переменные переименовать и названия функций\классов? Так не будет.
В задачах там даны задания которые вполне легко решить основываясь на информации из главы и предыдущих глав.
>надо зацикливаться на этих задачах?
Это уже зависит от тебя. От того как ты воспринимаешь материал. Если тебе задачи кажутся непосильными и ты не понимаешь их, то думаю стоит задуматься о том, усвоил ли ты материал. Может вместо того, чтобы идти дальше, следует вернуться назад и вникнуть еще раз.
Если же ты все усваиваешь верно, и прекрасно понимаешь что как решать, то конечно можешь не тратить время. Задачи даны лишь для собственной проверки, чтобы ты сам понял - все ли ты понял.
в Основах JS глава №10 "Побитовые операторы" задача №2. Напишите функцию.
Глава №17 "Функции".
Такое ощущение, что порядок глав неверен.
10 и 17
Это не главы, а уроки в главах.
В каждой главе нумерация уроков начинается с 1.
В пределах главы ты вполне можешь перемещаться как угодно.
Можешь сначала прочитать все уроки в главе, а лишь потом начать выполнение заданий в каждом уроке, если тебе сложно перемещаться в из главы в главу динамически.
Но главы, это Основы\Введение\ООП\етк, а 10 и 17 это уроки в главе.
Делаю веб чатик с анонимной авторизацией. Проблема в том, что на продакшене мой код сыпется из-за того, что я не получаю вовремя результат метода Meteor.user(). На локалхосте это происходит мнгновненно, но когда приложение висит уже на каком-либо сервере, то юзера я получаю где-то спустя секунду после вызова метода. Как мне заставить метеор дождаться сначала ответа по юзеру, а потом уже производить рендер?
Вот ссылка на основную компоненту https://jsbin.com/qefojubaya/edit?html,js
Твой первый язык? Этот учебник очень хороший, но иногда в редких местах создается впечатление, что он написан для людей знающих другие яп. Имхо в увлекательный мир программирования лучше начать погружение с основ машинного представления данных + C Кернигана и Ритчи, после всё пойдёт легче раз в 10, там более строгое изложение, и задачи идут в нужном порядке, ты конечно может хочешь только знать джаваскрипт и не тратить время на другое, но у С есть бонус, сможешь утилитки себе под десктопную ОСь легко и непринуждённо кодить.
Промисы, коллбеки.
Очень странно, что ты пишешь такую йобу на сразу двух фреймворках, но не знаешь про такие основы.
Специально для тупых, если я не ошибаюсь там написано, что при первом чтении главу пропускать про побитовые операторы
Можно даже не кодить на С ящитаю, но Петцольда и К&Р почитать для общего развития стоит, годные книжки.
Да я совсем недавно в стартап устроился, считай без опыта, а там у них по фреймворкам скачут как голопом по европам, в итоге кодить-то получается, а вот основы пройти не успеваю и уяснить некогда. Я уже и ангуляр успел пощупать, и реакт, и метеор понемногу
Я в любом случае мудак, как не посмотри, лол.
https://gist.github.com/pragmadash/e1d90df5c8f33831bf2a
>Front-end
>Эдди Османи - "Разработка Backbone.js приложений"
>Эрл Каслдайн, Крэйг Шарки - "Изучаем JQuery"
>Адам Фримен - "jQuery для профессионалов "
Че за говно мамонта? Надо обновить, чтобы как у людей было же.
В общем, обновления фака-тред
>>698574 (OP)
>https://github.com/xxxwww/js-thread/blob/master/Wiki/learn.md
Вот про это говорил
> но у С есть бонус, сможешь утилитки себе под десктопную ОСь легко и непринуждённо кодить.
ЖС умеет тоже самое, что это за бонус такой?
Охуеть, я учиться пришел, а не помогать
>>698951
>>698948
Я просто не знаю на что обновлять. С хуяли бы я в фак полез, если знал список годной литературы?
Ну тебя же что-то там не устроило. Возьми @ исправь
> Можно ли как-то из php передать переменную в js
var variable = <?=$variable?>;
> в обратном направлении?
Только так:
> как-то ерез жопу типа кукисов, скрытых полей и т.п?
С костылями? Однохуйственно что на аутоит псевдоприложения кодить, для разных задач используй наиболее подходящий инструмент, заебали свой жс везде пихать, ссылка была, что уже какие-то блокноты на нём агрессивно рекламируют дауны.
Что тебе неудобно, аутист? Ты даже не пробовал. На жс можно писать такие же приложения, как и на сишке, только в сотни раз быстрее.
Перетолстил
Лан, говноедам бонуса не будет.
>>Это уже зависит от тебя. От того как ты воспринимаешь материал. Если тебе задачи кажутся непосильными и ты не понимаешь их, то думаю стоит задуматься о том, усвоил ли ты материал. Может вместо того, чтобы идти дальше, следует вернуться назад и вникнуть еще раз.
Все-таки решил попробовать перечитать и перевыполнить задачи, которые не мог сделать раньше и у меня получилось их выполнить. Оказывается все не так сложно, как казалось раньше, а нужно просто внимательно перечитать материал и понять суть. Спасибо добрый анон и всем кто ответил на мою проблему.
>>698666 >>698695-кун
В скорости разработки быстрее батников нет, нужен мне например простенький блокнот для винды, запускаю ide cmd.exe, автоматом создается новый проект, пишу:
start notepad.exe
нужно что-то посложнее? - пишу:
start word.exe
for(x=0;x++<100;)console.log(x%3?"":"fizz",x%5?"":"buzz")
Erlang
Go, Rust
PHP
Оцени степень своего хипстерства по десятибалльной шкале.
10-7 - Go
4-6 - Rust
1-3 - C++
0 - PHP
>Пайтон и нода уже надоели
Если уже знаешь пайтон и ноду, пора учить что то посложнее.
Не рекомендую Go, Ruby и подобное - те же яйца, вид сбоку. Попробуй что то кардинально новое. Rust, C, Scala, например.
Допустим, у меня есть множество элементов li, я их достаю querySelectorAll('li'), затем добавляю через цикл addEventListener.
Так вот, когда я добавляю действие с дефолтной анонимной функцией AEL('onclick' function () { this.style.background = "zalupa" } то this отлично работает, но в arrow через () => { this.style.background = "zalupa" } он теряет контекст и получается undefined.
Щито делать, как привязать его без ебли лишней?
Никак, фишка лямбда функций, чтобы они переносят родительский контекст с собой, юзай обычные функции в этом случае, если тебе нужен контекст
Пиздёшь.
От реакта там только компонентность появилась, всё остальное так же реализовано через жопу, он не сильно от первого отличается, на самом деле. Да, синтаксис кое где поменяли, но суть та же.
vibe.d
>Современные возможности ES-2015
>Современный стандарт ES-2015 и его расширения для JavaScript.
>Классы
Стоит ли использовать? Вроде еще сыро?
Нормальные пацаны уже вовсю используют babel
А как ты до этого им пользовался?
Надо запускать ноду с флагом --expose_gc
node --expose_gc app.js
В коде сборщик запускаешь так
global.gc();
Только нахуя это нужно, если ты не нетфликс, я даже не представляю
Можно, а ещё все стейблы вроде как уже поддерживают большую часть фич ES6, даже больше чем babel.
но мобилодауны все ещё на 50%, страдаем
Стоит, однозначно стоит. На ноде уж точно.
Накидайте названия хороших книг, которые нужно добавить, ну или добавьте сами, что ещё лучше
Посоны, что делать?
Учу JS по и так ясно какому сайту.
Прошел рекурсии это было непросто
И обучение дальше идет но очень слабо тут нужно замечать мелочи, строить цепочки, а выходит у меня это не слишком, да и тормознутый чуток но мозг кодингом развить и хочу.
Что мне может обучению помочь? Слышал всякие гиковские игры про жабу на логику или просто смотреть в код до победного? Хочу мозг под кодинг настроить.
Алсо:
Поясните пожалуйста, что код делает я понял что рандом выдает число от 0 до 1 с дробями которые в двоичном представлении уходят в бесконечность.
var rand = min + Math.random() * (max - min)
И скиньте вообще информацию про системы счисления про 32 битный формат, а то глава с побитовыми операторами кажется взрывающей мозг.
angular:
1. Стандартная документация
2. styleguide https://github.com/johnpapa/angular-styleguide/blob/master/a1/i18n/ru-RU.md(1 ангулар, но в то же репозитории есть 2)
https://github.com/johnpapa/generator-hottowel/blob/master/app/templates/_gulpfile.js
Вот сам файл, если что
>var rand = min + Math.random() (max - min)
Ты просто получаешь число от min до max, например
3 + Math.random() (10 - 3) = 7.504377549012958
Ничего сложного в этом нет.
Если ты про тот коллектив, что на работе и где платят деньги, то надо идти к начальнику и пояснять ему за ситуацию, так как обеспечение рабочей обстановки входит в его обязанности. Конфликтовать и предъявлять человеку в любом случае глупо. Поступай как взрослый человек.
Ты в детстве, если тебя там обозвали, к мамке бежал, а потом на работе начал к начальнику бегать? Ну ты и маня канешнаа мдааа
И да, добавлю, что "справляться" ты будешь у себя дома, а в коллективе ты никто и звать тебя никак, чтобы другим людям что-то говорить. Если ты - начальник и кто-то из твоих подчиненных не знает требуемый java или просто не шарит, это уже полностью твое упущение, и виноват в этом только ты.
>>699658
>Тебя обозвали
Не передергивай. Как человек который не шарит тебя оскорбил? Ты слишком много на себя берешь.
Мамке своей на ротан добавь, щеночек)))))))))
https://www.youtube.com/watch?v=gpm74K-twvM
Посмотрел видео. Сделал всё точь в точь. Теперь вопрос - как в app.js узнают про 'homeController'. Нигде зависимостей, ни путей не прописано. У меня в файле homeController.js говорит что myApp (который идентифицируется в app.js) нот дефаинд. Почему у него всё работает? (и да в index.html у меня всё подключено в порядке возрастания)
Пока фронтенд - простые ХТМЛ-странички, то есть как на обычных сайтах. Стандартный комплект - жквери, бутстрап + плагины.
Пидораха незаметен. В гейропе и мурике не принято решать конфликты лично например, только через манагера. И это норма, плюс позволяет избежать лишних конфликтов открытых.
Мочератору пригорело, кек.
Конечно же Java.
А вот и хипсторы на смузи подъехали.
А графики как генерируются? При загрузке странички? Думаю, если вынести их в апи, и получать данные для графиков на ажаксе после загрузки, все будет куда быстрее работать.
Можно ещё отрисовывать пачками, чтобы ещё быстрее всё было.
Модератор уровня /b, лол.
Роутер про его узнает, так как homeController крепится к myApp при объвлении.
Видео с таймкодом https://youtu.be/gpm74K-twvM?t=409
Что читать после Eloquent Javascript ?
бля чувачек, ну поебать мне что неверстальщикафронтендер считает меня тупым, ты либо по сути скажи что нить. либо съебни.
ну да понял вроде как, ща поясню джсеры суть: ебучие верстальщики, но называться так им впадлу и они всем говорят дескать мы фронтенд разработчики, а верстальщики низшее звено веб разработки. Все логично вась.
Верстальщики вообще-то верстают. Неожиданно, да?
так я и не разделяю у тя с логикой траблы лютые чето, я как раз говорю дескать: одно и то же. У тя че в голове манная каша ?
Поясни пожалуйста на пальцах.
Сначала вычисляются скобки потом умножаются на рандомное число и плюс мин?
Как-то в голове эта арифметика не укладывается.
бамп вопросу
Ты в школу ходил?
Долго ли будет написать парсер для всех страниц вот тут http://gorod.mos.ru/?show=problem&id_theme=316&m=9&y=2015&page=5
Парсер должен собирать дату первичного обращения пользователя и дату ответа на него.
Если кто напишет за час-полтора, то могу скинуть денег на карту.
Знаю только JS, htmlcss, юзал еще bootstrap и jQuery.
И вот решил приступить к изучению фреймворка каковата. Выбрал реакт.
Начал учить и понял, что я могу его изучить от корки до корки, могу вызубрить всё и с технической стороны всё понимать.
Но самое главное "НАХУЙА ЭТО ВСЁ?" понять не могу. И такое чувство, что пойму только на работе. ( а я зеленый, нет опыта работы и не работаю на данный момент ).
В итоге вопрос: нужно ли пытаться учить реакты или другое, когда ты нихуйа не смыслишь в больших, серьезных, реальных проектах?
Минут 15. Просто распарсить урл нужно
http://gorod.mos.ru/index.php?ajax=objects&action=comments&perpage=10&order=1&sep=1&idstatus=6&showanswers=1&showcomments=1&idtheme=316&type=problem&datebegin=01.09.2015&dateend=30.09.2015&uiswitchertype=1&uicommentheader={"head":[],"0":"author"}&useajax=yes&isfree=1&islastpage=1&isinit=0&_=1459082457653&page=НОМЕР_СТРАНИЦЫ
ну так запили большой сурьезный реальный прожект, в портфолио заодно добавишь.
Спасибо. Просто я не прогер, пишу хэллоуворды на яве и раньше версткой занимался (5 лет назад). Можешь помочь, пожалуйста? Могу 400 рублей скинуть, если выгрузишь мне эти данные в читабельный формат (желательно xls).
Я не могу, оче занят сейчас
Создай тред в вебаче https://2ch.hk/web/ (М), воркаче https://2ch.hk/wrk/ (М) или тут, сразу кого-нибудь найдешь
И укажи эту ссылку, которую я кинул. С ней тут работы на минут 15, не больше
Спасибо, анон, добра!
кто может нубу с js помочь?
нужно что бы все ссылки на странице брались из переменных
то есть нужно что бы
<a href="переменная">
как это правильно сделать? взаимодействие с ДОМ еще не изучал, а нужно срочно
При загрузке страницы пробегайся по нужным ссылкам и из жса задавай им сам аттрибут хреф.
Либо сделай их не ссылками, а просто обработчики повесь, которые будут сами location менять.
<script>
var link = www.link.ru;
function wtireLink() {
document.write(" <a href=" " + link + " "</a> ");
}
</script>
и потом в хтмл:
<script>writeLink()</script>
типа как то так?
Можно и так, но это как то совсем через жопу.
Я предлагал что-то типо того
var linkA = "google.com"
document.getElementById('link-a').setAttribute('href', linkA);
var linkB = "google.com"
document.getElementById('link-b').setAttribute('href', linkB);
А в хтмл у тебя ссылки просто с айдишниками, без хрефа, например.
Спасибо, вроде работает: http://plnkr.co/edit/yd4FVKPS0SoEgZXGbWTz?p=preview
Но он почему то создает лишь одну ссылку
Так у них разные айдишники должны быть.
Если тебе нужно несколько одинаковый заменить, то используй класс (или дата-атрибут), и потом циклом по коллекции элементов пробегайся и каждому меняй.
Инкапсуляция : это когда мы защищаем наши поля и методы от внешного доступа, потомучто это может привести кстранным последствиям.
Наследвания: это когда мы наследуем другому классу все методы и св-ва и можем использовать их и расширять.
Полиморфизм: вот тут я очень плохо понимаю что это поясните по простому( я думаю что это когда мы можем использовать один раз наш класс для множества других решений,, это верно?)
И еще для чего нужно ООП? как тут в двух славах ответить по простому?
В JS? У него немного не такой ООП. Не классовый. Прототипный. Более трушный.
И вообще, разве у джунов на js такое спрашивают?
Ну вообще про ООП я думаю будут спрашивать же
var mainLink = "google.com";
var elems = document.getElementsByClassName('mainLink');
for (i=0;i<elems.length;i++) {
elems.setAttribute('href', mainLink)
}
var links = document.getElementsByTagName('a');
for(var i = 0; i++; i<links.length)
links.href = 'http://foo';
В кофескрипте всего-то надо "?" поставить после перменной
>>700255
>>700262
Бля, ну ты мудила. Ты вообще читаешь тред? Я ведь выше такой же ответ дал, и так же проебался, как ты, слепой уёбок.
А теперь попробуй не объявлять объект
ты спросил если переменная равна нулю а не если она не определена
Я не он, я промахнулся
Вот мое решение: http://plnkr.co/edit/xYjNHFbkukTECHpmD1LO?p=info
Это нормально?
Просто невыспался не шибко понимал.
Всё понятно щас.
Расскажи пожалуйста где прочитать про системы счисления 32 64 битные форматы.
А то не очень это понимаю.
на фрилансе надо зачастую быть человек-оркестром, так что учи ВСЁ
бляя, ну апи фейсбука, там через жс проверяется коннектед юзер или дисконнектед без обновления страницы через сервер.
Имею двухлетний опыт коммерческой разработки, клепаю потихоньку всякие приложения, начинал с калькуляторов для простых сайтов, сейчас делаю йоба спа с чатами и прочим дерьмом.
Работал с людьми у которых стаж превышает мой в 5 раз, и вот с тем что написали они было приятнее всего работать. Архитектура продумана настолько хорошо, что добавление любой фичи делается максимально просто, не возникает необходимости думать как же ее туда всунуть, при работе же с моим кодом часто возникает проблема с тем как добавить новый функционал. Я пытаюсь продумывать архитектуру с нуля, но каждый раз замечаю какие то косяки и приходится править-править-править.
Вопрос: что почитать что бы научиться делать заебись приложения, код которых не стыдно показать? Как научиться выстраивать архитектуру? Делись, анон, годнотой.
Слепошарый тут только ты, обмудок. В глаза видимо ебешься целыми днями, чмо ебаное, даже не можешь тред прочитать уже, сиди дальше в говне и не вякай, пидор.
З/п?
Попробуй не просто книжки читать, а взять готовый красивый проект и разобрать его по частям. Что и как там реализовано, какие паттерны и подобное.
singleton, observer ?
Есть две функции.
function foo () {}; - делает определённое действие.
function bar () {
return () => { alert('zalupa'); foo() };
}
bar() я использую в цикле для работы с элементами, поэтому вот так.
Ну и карочи, если я вызываю foo() в этом ретурне, то он нихуя не работает, если делаю IIFE уровня (foo())(), то оно работает почти как надо.
Но у меня вопрос - можно это сделать как-то адекватно, а не с таким говнокодом? Мне надо чтобы при клике на кнопку кроме стандартных действий bar() в ней вызывалась и выполнялась foo() с определённым аргументом из bar, а она не работает.
Ах да, при работе с циклами, имелось ввиду что я цепляю её вот так
for (let i = 0; i < elem.length; i++) {
elem.addEventListener('click', bar());
}
И вот foo() при клике у меня не работает.
Лолич, могу любой паттерн из ГоФа тебе на жсе написать, ты обоссался, манька.
нихуя не понял че те надо но
с определённым аргументом из bar, foo.apply, call etc.
по куску кода что ты скинул должно быть
elem.addEventListener('click', bar);
Каждый проект выстраивает архитектуру под свои нужды. И в самом коде не написано почему так, а не как то по другому.
а ты точно гуглил инфу по запросу https://www.google.ru/?gfe_rd=cr&ei=XDb4VpO6OYGr8wfa24aYCw&gws_rd=ssl#newwindow=1&q=javascript+projects+architecture
Конечно не гуглил, тогда я бы сначала прочитал все что нагуглил, и лишь потом пошел бы в тред. Только вот кто знает, сколько времени можно потратить на поиск действительно полезного чтива, а не книги в которой описывается почему лучше переменные объявлять через запятую.
Точно, забыл про apply и call совсем. Спасибки!
ну тогда я погуглил за тя. отправная тчк инструметы и т.д:
http://stackoverflow.com/questions/8701336/good-implementation-of-scalable-javascript-application-architecture-sandbox-by
османи ( ниче особо интересного, для начала пойдет)
https://addyosmani.com/largescalejavascript/
https://medium.com/google-developers/javascript-application-architecture-on-the-road-to-2015-d8125811101b#.gjvmohkpp
прописные истины.
А вообще тебе курить литературу тимлидов и упражняться
Ну так проверяй ответ от пейсбука. Если разлогинен - чисти куки и обновляй страницу
>а не книги в которой описывается почему лучше переменные объявлять через запятую
так а нахуя ты такие книги читаешь ? Тебе нужно что то типа
http://www.amazon.com/dp/0321127420/?tag=stackoverfl08-20
и
http://shop.oreilly.com/product/9780596522704.do
ну и чистый код обязательно если еще не читал.
кстати попробуй сделать че нить highloadное, бытует мнение, что скилл качается как на метандриоле
аа забыл, что жсом можно рефрешить.
Тебе нужно чистить куки и рефрешить только если юзер разлогинен. Чтобы после рефреша его на страницу авторизации кинуло
Нативно. Знаю object.observe, но это лютая дичь, поддерживается даже в хроме плохо.
Хочу не плодить кучу онклик и ончейндж функций, а подписать все дом элементы на соответствующие значения в модели.
иди нахуй у меня на пхп роутер.
Ну и что бы при изменении модели дом реагировал тоже.
Один хуй, клик слушать придется.
Она тут причем? И мне это на бекенде нужно
А какой конкретно алгоритм в этой ситуации? Мне нужно именно 8 знаков после запятой
В цикле, делим на десять, превращаем в строку, считаем длину, превращаем в число. Можно так
я вот так сделал, но я только учу js.
var n = 130000;
var n = n/100000000;
console.log(n.toFixed(8));
Запили кастомный addEvenListener
В котором будешь принимать коллбэк и насильно навешивать ему this, тогда будет работать с arrow
var test : number;
test = req.body.field;
И передам строку, то она нормально присвоится. Дело в том, что в итоговом жс нет проверки типов, она осуществляется только в момент компиляции. Есть возможность это обойти?
Для графиков юзается гугл чартс. Но дело в том, что даже и на простых страничках, например только с чеками существует эта задержка. И она всегда будет существовать на сайтах в том понимании, в котором они сейчас имеено существуют.
> Думаю, если вынести их в апи, и получать данные для графиков на ажаксе после загрузки, все будет куда быстрее работать
Именно, ты абсолютно прав, но свои грабли я не хочу лепить. Имено для этого и думаю заюзать какую то ангулярочку. Но вот вопрос в том, что ангулярочку ли, ведь многие её и ругают.
Так а для чего тебе ангуляр? Тебе нужно просто графики подгружать через ажакс, в гуглодоках про это есть:
https://developers.google.com/chart/interactive/docs/php_example#exampleusingphphtml-file
Флоу это тоже линтер же.
Попизди мне тут еще =)
Number не считает вообще скажем "45px"
а parseFloat/parseInt считают 45
>>701009
console.log(parseFloat(n.toFixed(8))); // 0.0013 (number)
console.log(Number(n.toFixed(8))); // 0.0013 (number)
console.log(n.toFixed(8)); // 0.00130000 (string)
тогда нужен другой способ решения
Инкапсуляции в JS на уровне языка нет (если конечно не считать локальные переменные в конструкторе). Можно конечно разными извращенскими способами имитировать инкапсуляцию, но это нужно только разработчикам либ и фреймворков.
Наследование понимаешь правильно, но в JS оно реализовано совсем не так как в других языках.
Полиморфизм - это когда ты работая с переменной, учитываешь не ее тип, а интерфейсы объекта, на который она указывает. В более частном случае, полиморфизм - это переопределение наследником метода родителя.
with_err()
В консоли браузера видим сообщение об ошибке и конкретную строчку в коде.
Допустим, у нас есть асинхронная функция из апи яндекса. Делаем следующее:
ymaps.some_async().then(with_err)
И в консоли браузера мы видим просто НИЧЕГО. Никаких сообщений, просто ничего не работает. Это так и должно быть? Я заебался методом тыка ошибки искать.
апи карт*
function descendingOrder(n){
var arr = [];
arr = n.split('');
return +arr.reverse().join('');
}
console.log(descendingOrder(2110));
Как избежать потери ноля?
первый аргумент у then вызывается в случае успешного ответа от сервера, сервер точно возвращает код <400?
Ну мне хотелось бы, чтобы JS был языком со строгой типизацией. Вообще, TS идеален. Только вот линтер, а нужен рантайм язык.
унарный плюс приводит строку к числу, естественно ведущие ноли выбрасываются, а ты как хотел?
Если тебе на выходе нужна строка, избавься от плюса, если нужен массив чисел то arr.map(i => +i)
Это общая проблема, без оглядки на какой-либо конкретный случай. Конечно, бля, я в курсе что первый аргумент выполняется в случае нормального ответа с сервера.
Ну числа 0112 в природе не существует, так что придется тебе работать со строками
Может он рассчитывает, что если получившееся число начинается с нуля, ты будешь рассматривать это как восьмеричное число? Попробуй вернуть parseInt('0112', 8)
Почему
var x;
$.getJSON('BLABLABLA', function (data) {
x=data;
});
и x это тот самый JSON что мне нужен
А если сделать
$.getJSON('BLABLABLA', function (data) {
return data;
});
то возвращается undefined?
function(data) - это коллбек, который вызывается асинхронно. К моменту завершения работы функции getJSON, этот коллбек еще даже не вызван
А как можно добиться желаемого результата (чтобы return и в нём всё было хорошо)
Никак. Пиши асинхронный код (к вызову getJSON добавляешь .then() который принимает 2 аргумента - коллбек-функции при успехе и при неудаче, и в них обрабатываешь результат. Если эти коллбеки возвращают опять же асинхронный результат (промис), можно еще раз дописать then и так до бесконечности, например:
function blablabla(){
// какой-то код
return $.getJSON('BLABLABLA');
}
blablabla().then(function(data){
// работаем с результатом
}, function(fail){
// работаем с ошибкой
})
В той же папке лежит jQuery и всё работает, мой скрипт работать отказывается, подскажите плз
>>701107
> ymaps.some_async().then(with_err)
> .then(with_err)
Первый аргумент - успешное выполнение, второй - неудачное. Можно все неудачные через catch ловить
В чем твоя проблема?
Прописал в конфиге, спасибо
TypeError: Cannot read property 'then' of undefined(…)
Всё заработало, спасибо <3
Начина. учить яваскрипт и не могу понять, то ли я леплю костыльное говно, то ли это норма для жиквери. Подскажите как переписать этот костыль, чтобы было красивее.
Юзать фронтенд-фреймворки с условным биндингом css-классов.
А вообще для того примера что ты скинул наверняка хватит :hover в css
Дело не только в графиках. Заказчик хочет чтобы все странички грузились быстро (до 0.5сек) по этому ищу способ ускорения фронтенда, потому как на бекенде всё уже ускорено по максимуму (оптимизировано, минимизировани и кешировано.)
функция bind тебе в помощь. Первым аргументом принимает контекст (this), если он тебе не нужен, передавай туда null. Остальные аргументы - аргументы исходной функции. Например:
function add(a, b) { return a+b; }
add2 = add.bind(null, 2);
add2(3); // 5
>Кстати, имеющийся в новых версиях JS метод bind() тоже может делать частичное применение:
>Но ты должен обойтись без его использования, и написать свой велосипед.
Нахуй иди
Перекатываюсь в веб с эмбеда, в вебе не слишком разбираюсь. Дали тестовое задание, написать веб-приложение с возможностью добавления/просмотра/редактирования элементов таблицы, у каждого эллемента два свойства. Данные должны сохраняться в БД. Некоторые элементы должны быть чайлдами других элементов. "Single page approach should be used"(с).
Нюансы:
1. Front-end или back-end? (в требованиях ничего не сказано".
2. Как вообще это лучше всего реализовать?
3. За ссыллку на годный туториал по данному вопросу сотни лучей добра.
https://www.twitch.tv/b2252144
ИДИТЕ НАХУЙ С ДЕНЬГАМИ, НИКАКОГО ПОПРОШАЙНИЧЕСТВА
>1. Front-end или back-end? (в требованиях ничего не сказано".
И то, и другое. Особый упор на бэк.
>2. Как вообще это лучше всего реализовать?
Что тут сложного? База в виде таблицы, параметра родительского элемента у каждого элемента - ссылка или null. Генерация страницы на бэке и отдача её клиенту.
>3. За ссыллку на годный туториал по данному вопросу сотни лучей добра.
Знать бы на что именно. SQL? JS? Другое? Наверни ка шапку для начала.
Просто видел пару гайдов, которые как-то позволяют реализовать это только на стороне клиента. Но я уже понял, что глупость сказал.Благодарствую.
localStorage можно использовать в качестве базы на стороне клиента, но от тебя явно ждут не этого
В требованиях ещё сказано, что это всё дело нужно будет захостить и прислать ссылку помимо прочего. Node.js, Express и MongoDB сойдут для выполнения?
Да похуй мне на твой тред, щенок ёбанный.
В том, что вывод синтаксических ошибок не работает в калбеках, которые передаются в промисы из апи карт, яндекс использует свой минифреймворк для них вместо нативных (хуй их знает зачем в 2016). И не работают не потому что калбек не вызывается, а потому что просто нахуй все ошибки глушатся.
Вполне.
Неплохо кэшировать селекторы
var $test = $("#test2")
Чтобы каждый раз не искать в дом/вызывать конструктор.
Как быть с динамически добавляющимися элементами?
function foo(){
//действие
setTimeout(foo(), 5601000);
}
foo();
в firefox ни какого таймаута не происходит
>setTimeout(foo(), 5601000);
Тут ошибка. Указывай функцию без вызова, то есть
>setTimeout(foo, 5601000);
1. Создаем аккаунт пользователя.
2. Аяксом делаем едит полей (с валидацией) и аплоад аватара.
3. Можно создавать твиты. Только залогиненый пользователь может их создавать.
4. Если твитнул тот, на кого ты подписан, то ты пушем получаешь обновление на стене.
На рельсах вот дохуя таких манов, а на ноде только хуйня вроде "как чатик сделать" или "как отдавать статику экспресом". Сам я JS-полубог и с сокетами (и вообще unix ipc) на ты.
Не, это же хуйня. Никакого тебе precompile assets, еще и на redis (никакой серьезной логики туда не засунуть). Такое дерьмо можно и на php накидать с тем же успехом.
Есть мнение что в рельсах дохуя таких манов, потому что в рельсах есть примерно один способ подобную задачу решить, в ноде же дохуя пакетов для каждой части подобной задачи
Да без проблем. Но у меня просто есть реальный заказ, который ради интереса хочу сделать на ноде. Функционал похож на описанный выше, но с хитровыебанной логикой в БД. Вот все кричат, что для всякого риал-тайма нода неебаца удобна. И, впринципе, да, рельсы, конечно, не очень хороши для сайтов типа ВСЕ НА АЯКСЕ. Но вот мануалов серьезных я не вижу. Сплошные васяноподелки.
спасибо
Я могу это с нуля накодить, конечно, вообще без npm'ов. Вопрос в том, что юзать, чтобы вышло все няшно и легко расширяемо. Короче это вопрос из серии "поделитесь опытом".
И да, на рельсах я это сделаю за 5 часов.
Вопрос такой, нахуя всё это делают за бесплатно? Я не понимаю как они получают деньги, да ещё и столько модулей разных тоже бесплатных. Да ещё и на линуксе дохуя бесплатных хороших программ. Вот как? Как их монетезируют?
return num > 0 ? (num % 1) : (-num % 1);
alert(-12.45)
Посоны почему в положительной степени остаток вернется?
Типа - на - даст +?
Платные патчи и кастомизация. Многое just for fun, многое - просто пилили для себя, потом выложили в паблик.
>>701685
Нихуя не понял.
function getDecimal(num) {
return num > 0 ? (num % 1) : (-num % 1);
}
alert( getDecimal(12.5) );
alert( getDecimal(-1.2) );
А теперь?
Я понял. Положительная степень это типа 10^{n}, n > 0. А у тебя положительное число.
Почему? Потому что
if (num > 0) {
return (num % 1);
}else{
return (-num % 1); // -(-X) = X
}
Ну или если формально, то "в любой группе обратный элемент от обратного равен исходному". Но вряд ли тебе это о чем-то скажет. Математику учи, короче
Да епт и так ясно что минус на минус плюс еп ахахах кого лечишь доктор)
если че не так ты поясни по человечески че ты умничаешь ты епрст =)))
Он меня не устраивает своей кривизной и невозможностью нормально настроить там что-либо.
А что именно за мануалы нужны? По крудошлепству? Зачем?
Создал контроллер, прописал роут - всё, работает
И нода больше не по аяксу даже, а по вебсокетам. Это куда более производительнее и реалтаймовее.
Платный саппорт для корпоративных клиентов. Что у ноды, что у монги, что у экспресса
Для всех популярных редакторов есть соответствующие плагины
Пишу на джаваскрипт. В sublimetext 3 вооще не появляется вариантов команд, в атоме работает по непонятному мне принципу, при написании "conso..." не будет вариантов, появится только при "log", в визуал студио код работает как надо, но он считает ошибкой любой не джаваскрипт код в файле и подчеркивает его жирной красной линией, может кто знает как ее убрать.
Вообще, идеальный вариант в Notepad++, но он почему-то знает не все команды.
Либо я что-то не понимаю как настроить, либо это все варианты нормы?
Алсо, пользовался бы атомом или визуал студио кодом, если бы мне помогли разобраться, уж больно они понравились.
var slider = document.getElementById('gallery');
var animationSpeed = 1200;
function startSlider() {
setInterval(...)
}
startSlider();
В файле скрипта три похожих куска этого кода, в одном случае листаются фотки, в другом посты из свитера, в третьем отзывы клиентов. Они очень похожи, наверняка можно сделать или своровать универсальный плагин но мне интересно вот что. Как в жс в одном файле инкапсулировать эти куски или хз как сказать. Чтобы не выдумывать animationSpeedTwitterSlider, animationSpeedGallerySlider, animationSpeedComments
можешь для тупых объяснить, куда жать?
Ну я же описал задачу, лол. Вопрос в том, как развернуть экосистему. Ну вот заюзаю я експресс с роутингом, например. Сделаю шаблоны ядом, стили на стайлусе и прочая. А как мне теперь автоматически подрубать стили в зависимости от env? Как делать миграции БД? Какое стандартное решение для подключение картинок к модели? Какое стандартное решение для моделей вообще? Какие ограничения налагает модели монго в реальных задачах (задачи из примеров это просто курам насмех)? Как пробрасывать данные в модели из raw sql? Как делается deploy?
P.S. Про grunt знаю. Несерьезный инструмент. Не пересобирать assets на лету? Серьезно?
P.P.S. Передавать обновление полей юзера и аватарку через вебсокет. Ты ебанутый?
P.P.S. Сокет можно поднять через тот же middleware rake. Один хуй же получится.
На многие думаю найдутся. Вообще все что в >>701833 легко гуглится без всяких уроков и понятия "стандартное решение" в ноде нет. Каждый дрочит как хочет. Ты толстишь ведь?
> P.P.S. Передавать обновление полей юзера и аватарку через вебсокет. Ты ебанутый?
А в чем проблема? Соединение у тебя всё равно уже есть, зачем дополнительные запросы?
в последней версии vscode из-за перехода на salsa емнип автокомплит и анализ js кода встроенного в <script></script> вообще не работает и не факт что будет потому что это один хуй зло.
что касается атома, то по умолчанию он не умеет автокомплитить никак кроме как по словарю и сниппетами. саблайм тоже. для саблайма нужно ставить tern, для атома хз
если ты хочешь нормальный автокомплит как в дельфи7 или там сишарпе или яебу на что ты там ориентируешься то тебе очень желательно вообще использовать typescript ибо он может по понятным причинам в статический анализ. а по ide — или vscode или atom угу. я бы сказал, что первое лучше для твоих запросов.
Ты скажи нормально что тебе нужно, сейчас он ищет любую английскую букву стоящую перед пробелом
ну то есть как хуйню, логичную первую букву после которой пробел. Мне-то проверить надо что там только буквы или пробелы. Он чтоб выдал массив длинной равной дли
не строки
Бля разобрался "Hey fellow warriors".match(/[A-z]|\s/g);
"Hey fellow warriors".match(/[a-z\s]/gi)
Интересная задачка для начинающих, сам решил за 40 минут несколько месяцев опыта.
Асинхронные функции это основа js, как ты там вообще работаешь?
Хипстерские технологии == новые, захайпованные.
Плюсам лет как твоей мамаше. Выводы делай сам.
http://www.shake.ua/product/tequila-sombrero
Нашел. Спасибо
Охуенно выглядит
Спасибо.
Object.create || class es6
Нет, у тебя все сильно поломалось
Есть порядковый номер элементов в контейнере, который можно брать, если он соотвествует какому-то идентификатору элемента на сервере. А вообще аттрибуты.
Я что один кто с этим говном связался? Пиздец, в инете нихуя нет - две с половиной статьи в каких-то говноблогах, да и в них нихуя полезного нет, за такую документацию, которую они выложили вообще убивать нужно. Ну что за девы. два месяца от выхода беты и нихуя инфы нет. одно кукареканье про то как легко и изящно можно пилить приложухи на коленке попивая смуззи сука в коворкинге, краундфайндя бабло в этом время, а на деле, ты как баран пытаешься собрать все воедино просто наощупь и с помощью интуиции и такой-то матери, а потом это вконец заебует. Не советую, короче.
Строго говоря, JS нельзя считать объектно-ориентированным языком, нет там полноценной реализации ни одного из трёх "столпов" ООП. Это изначально объектная поделуха для работы с прикладными интерфейсами веб-браузера.
Нормальное ООП есть, например, в TypeScript
Суть полиморфизма:
class Животное { // базовый
голос() {
// пусть будет недоступно, т.к. Животное слишком абстрактное определение
}
}
class Кошка extends Животное {
голос() { // переопределили базовый метод
return "мяу"
}
}
class Собака extends Животное {
голос() { // переопределили базовый метод
return "гав"
}
}
Теперь создаем экземпляры ("инстанцируем") используя базовый класс
Животное васька= new Кошка();
Животное шарик = new Собака();
васька.голос(); // -> "мяу"
шарик.голос(); // -> "гав"
Как видишь метод один и тот же (голос), но выполняет они разные ("поли-") действия, хоть и вызван у базового класса Животное.
Строго говоря, JS нельзя считать объектно-ориентированным языком, нет там полноценной реализации ни одного из трёх "столпов" ООП. Это изначально объектная поделуха для работы с прикладными интерфейсами веб-браузера.
Нормальное ООП есть, например, в TypeScript
Суть полиморфизма:
class Животное { // базовый
голос() {
// пусть будет недоступно, т.к. Животное слишком абстрактное определение
}
}
class Кошка extends Животное {
голос() { // переопределили базовый метод
return "мяу"
}
}
class Собака extends Животное {
голос() { // переопределили базовый метод
return "гав"
}
}
Теперь создаем экземпляры ("инстанцируем") используя базовый класс
Животное васька= new Кошка();
Животное шарик = new Собака();
васька.голос(); // -> "мяу"
шарик.голос(); // -> "гав"
Как видишь метод один и тот же (голос), но выполняет они разные ("поли-") действия, хоть и вызван у базового класса Животное.
>из трёх "столпов" ООП
ООП - объектно-ориентированные программирование.
Всё. Нет никаких столпов. ООП - это программирование ориентированное на манипуляцию объектами. Все остальное уже пришито сбоку.
> ООП - это программирование ориентированное на манипуляцию объектами.
Ты путаешь с объектным программированием.
Без наследования нет иерархии.
Без инкапсуляции и полиморфизма нет абстракции данных.
Ты ограничиваешь наследование лишь классами, хотя их может вполне себе не быть вообще.
Не гуглится нихуя. Я не вижу РЕАЛЬНЫХ задач. Сплошные примерчики для аутистов (а нахуя юзать ноду не в серьезных проектах?). Я не вижу ничего типа документации Rails и фич Railcasts. Я вижу тысячи пакетов на каждый пук и не могу понять, какие из них РЕАЛЬНО используются. Я не понимаю как сделать "new APP" и начать работать.
Нет, не толщу. Я вполне серьезно. Хороший ответ выглядит так. Вот аналог (с учетом специфики архитектуры ноды, конечно) рельсов, вот полная документация по нему. Я вижу как в проектах пилят свой конфиг grunt'а. Это же пиздец нахуй. Ладно для кастомного хайлоад проекта, но этап прототипа (а там вообще говнобложики)? Они там совсем ебанулись?
>>701888
Один хуй все по факту не через сокет работает.
ну да, есть прототипы, только вот такой подход и называется соответственно - прототипно-ориентированный
P.S. Sailsjs знаю. Это просто недорельсы (хотя для 2010 было б норм). + Все профиты ноды прячет.
Animal = Object.create (null, {
voice: {enumerable:false, writable:false, configurable:false, value: null},
say: {enumerable:false, writable:false, configurable:false, value: function() {return this.voice}}
})
Cat = Object.create (Animal, {
voice: {value: 'meow'}
})
Dog= Object.create (Animal, {
voice: {value: 'woof'}
})
Vasya = Object.create (Cat)
Sharik = Object.create(Dog)
Vasya.say() //meow
Sharik.say() //woof
Не по шарам. Благодарю.
Нет. Это все ООП.
А прототипы или классы - это лишь способ наследования.
В нормальном ООП вообще все есть ОБЪЕКТ. Даже классы - это объекты.
WebStorm пизженый, базарю лучше нет. Правда из-за того, что современные сервисы требуют много оперативы(приходится два сервера поднятыми держать) + говнобраузеры, которую жрут как не в себя + ебанутый скайп, говно неоптимизированое, пришлось перекатиться на Сублайм(параш та еще, даже накатив пекеджи, не то совсем).
> Vasya = Object.create (Cat)
> Sharik = Object.create(Dog)
> Vasya.say() //meow
> Sharik.say() //woof
Здесь не наблюдается полиморфизма
Тебе ничто не мешает в объектах Cat и Dog переопределить сами методы, а не voice.
И? Дальше ты переопределяешь у Vasya метод say() и у тебя получается кукарекающий кот, тогда как остальные коты остались нормальными. Заебись классы.
У тебя получилась просто параша у которой можно вызывать методы. То что это называют "объекты" "прототипное-ооп" ее парашной сущности не меняет. Нет класов, нет объектов, нет ООП, нет нихуя.
Это не классы, а прототипы.
Ты умеешь отличать одно от другого?
Ты выбираешь и пишешь код в каком-то одном стиле. Зачем тебе переопределять без необходимости? А если такая необходимость вдруг появится, и ты захочешь сделать Больного-васю, у который вместо мяу кашляет. То в классовом тебе придет вводить еще один класс или затрагивать всех котов. В то время когда в прототипном достаточно расширить лишь Васю.
Вот это уже годно вроде. Два вопроса (гуглил, конечно, реальных отзывов не нашел).
1. Как оно c PG? И особенно с notify?
2. Рендеринг HTML на server-side?
Остальные юзкейсы вроде покрывает.
> водить еще один класс
Ну так это и есть ООП. То что тебе с прототипами заебись это хорошо. И то что при определенном способе использования прототипное программирование практически идентично ооп это просто отлично. Но оно не является ни ООП, ни подвидом ООП. Нет класов - нет ООП.
Дело не в этом, а в том что ты вызываешь метод say у Cat & Dog, т.е. у наследников, но суть полиморфизма в том, что можно вызывать метод базового класса, а в рантайме у тебя будут вызываться методы нсаледников, в зависимости от того на какого наследника (Cat или Dog) ты ссылаешься через обобщенный "интерфейс" типа Animal
P.S. ES2015. О ДА, ДЕТКА.
Более демотивирующего поста про фронтэнд разработку я еще не читал. Пили историю, как докатился до жизни такой.
Наверное, потому что это было модно году так в 2011, а тперь все законно забили хуй на эту парашу?
В прототипном наследовании тоже можно вызывать методы родительского прототипа.
И проверить есть ли в цепочке прототипов определенный объект тоже можно.
Да никак, я ленивый жуебок. Вместо того, чтобы зарабатывать деньги я просто пишу код, потому последний раз тачку обновлял в 2008 году, может, если дело выгорит, обновлюсь через полгода, а вообще мне похуй. Если бы девы писали нормально приложухи, то и потребности каждые полгода новую тачку покупать не было бы. Но мир не таков. В общем, мне похуй, пока есть возможность сидеть на такой пекарне буду сидеть на ней, также как и таскать старые джинсы, старые футболки и старые ботинки. Я дзен-буддист нищеброд и мне похуй.
Что-то я переборщил с обсценной лексикой и тавтологией, ну да и ладно.
Так чего не пойдешь работать? За 8 лет кодинга ты просто должен был стать богом, даже если занимался на отъебись, но регулярно. Такие с первой зп и пеку обновят и вообще все технику в доме заменят на новую.
Я год кодингом занимаюсь. Проекты пишу 4 месяца как. Выхлоп по деньгам пока никакой - пожрат, за хату заплатить, в кино на выходных сходить, вот и все. Стартапы они такие, лол. С другой стороны здесь есть реальная работа и никто носом не воротил - мывамперезвонимподучитеиприходитенашлидругого, дали задание - сделал, окей, едем дальше, а не как у пидрил из всяких фирм, где от джуна сразу требуют накатать фейсбук до обеда и новую библиотеку-аналог жикверя, а потом еще и недовольны, что так долго.
Х3, я вот пилю. Я бы сказал, что инструкция есть, но в ней ничего нет, кроме абстрактных дерьмовых и и так понятных примеров, а деталей и прочей инфы для разработки чего-то более сложного чем хелловорлд нет. Может, они расчитывают, что с файнал релизом выпустят норм доку, но зачем тогда сейчас было кукарекать как все прекрасно в ионик2, не понятно.
Ты пишешь неправильно
Год изучаю, работаю чуть меньше 4-х месяцев. Сразу в бой так сказать, даже кантора не дочитал, лол. Хотя конкретно джс вот эти 4 месяца и изучаю, потому что до этого еще пыха была, пайтон, нода. В итоге вот с ангуляром/анг2 ебусь и иоником2 впридачу.
Ну и что ты тут забыл, болезный? Пиздуй в бэ, по, нвр или где там ебанутые тусуются сейчас.
Thx
Слышь, ты заебал уже в треде срать.
Blogs
http://reactkungfu.com/
https://reactjsnews.com/
https://bocoup.com/weblog
http://www.code-experience.com/
https://www.nczonline.net/
http://javascriptweekly.com/
http://teropa.info/
https://www.reddit.com/r/reactjs/
Podcasts
https://devchat.tv/js-jabber
https://changelog.com/podcast/
http://frontflip.me/
https://radiojs.ru/
И еще тонна людей из твиттера, если кому надо, могу составить список с каждым заслуживающим внимания человеком и его описанием.
а ты мидл или синьор?
innerHTML, это было не сложно
>если кому надо, могу составить список с каждым заслуживающим внимания человеком и его описанием.
Пили, добавим в шапку.
Получится говно без задач.
Им потом придется это всё поддерживать, а v8 гуглом пилится просто бешеными темпами
UPD:
3. Что с безопасностью? Если все идет через сокеты, то хакер может подделать запрос и запостить что-то от лица юзера без знания логина/паса.
Как его можно скопировать в буфер обмена полностью в тектовом виде? Cори за нубовопрос, в js не шарю, надо достать инфу из браузерной игры для последующей обработки.
Спасибо.
У чакры есть один фатальный недостаток - она работает только на винде. В основном тайпскрипт нужен на ноде, а виндосервера невыгодны.
Хотя они собираются добавить кроссплафторменность. Но почему нет нативного тайпскрипта - вопрос. Гугл свой мертворожденный дарт встроила в хром, а майки более чем живой тайпскрипт не могут.
Ты подзаебал с рельсой своей. Я ваш рельсомирок знаю. И вот сообщаю тебе, что как в рельсе, самого православного и единственно верного пути сделать чтобы то ни было не существует. Для многих задач есть больше одного популярного пакета, пробуй, собирай свое лего. Чтобы не трахать себе мозг, можешь собрать ту же рельсу на ноде из кусочков.
Знаю как минимум один коммерчески успешный проект в рашке на дарте, 3кк строк. Награды, хуяды, вот это все. Правда продаются в пендосии конечно же.
http://learn.javascript.ru/screencast/nodejs
1. Все стандартные задачи покрываются искаропки и подробно описаны в туториале.
2. Для любой задачи меньшей абстракции есть 2-3 классических решения.
3. С рельсами у меня не возникает вопросов "а кто это реально масштабировал, какие затраты"? Т.к. примеров дохуя.
>можешь собрать ту же рельсу на ноде из кусочков
Охуенно. И нахуй тогда нода нужна?
Вообще, читаю сейчас доку метеора. Половина вопросов из этого списка покрыта >>701833 Но это базовые совсем. А вот небазовые не могу нагуглить >>702289
Да
Я не спорю что рельса хороша, меня просто бесят рельсопетухи, которые тут же набегают и начинают надрачивать на нее, как веганы, честное слово
Кек, пойди почитай что Алан Кей думает об объектах, тащемта
Я не дрочу. Я просто хочу попробывать реализовать на ноде и задаю вполне адекватные (вроде бы) вопросы.
Неадекватные. Ты пытаешься натянуть опыт одного инструмента на совершенно другой. Хочешь, чтоб как в рельсах было - бери sailsjs - поделие для рельсопоклонников. Довольно популярное
А тебе и говорю, что тут не как в рельсе. Если ты не готов приходить в экосистему где самого-самого верного варианта решить задачу нет, ну чтож, тогда рельса твой выбор. JS экосистема бурно растет, новые свистоперделки появляются регулярно, и четких практик очень и очень мало. Если интересно, изучай, читай, сравнивай, пробуй. Из фреймворков express, для авторизации passport. Вообще, все веб-фреймворки для ноды, которые я видел, в той или иной степени inspired by рельса. Такие дела.
Я могу развернуть любую указанную задачу и показать, что другого решения там нет. Независимо от инструмента.
>sailsjs
Нет задач.
>>702610
>изучай, читай, сравнивай, пробуй
Перепробывать все я и сам могу, я задаю вопрос же, чтобы сэкономить время.
>express, для авторизации passport
Кто-то РЕАЛЬНО это использует? Я просто не представляю себе как серьезный проект можно на этом проводить.
Мы с тобой говорим на разных языках. Пожалуй я никогда не буду писать на рельсе.
Посмотри вот это, если ищешь СЕРЬЕЗНЫЕ проекты: https://events.yandex.ru/lib/talks/936/
> >sailsjs
> Нет задач.
Ты поехавший, что ли? Каких задач? Это mvc-фреймворк, аналог rails, что хочешь на нем пили. У нас crm-ка на нем крутится
> >express, для авторизации passport
> Кто-то РЕАЛЬНО это использует? Я просто не представляю себе как серьезный проект можно на этом проводить.
Кекус
http://thenewstack.io/node-js-foundation-adopts-express-framework-incubation-project/
Затраты на разработку выше получаются (nodejs разраб стоит процентов на 50-80 дороже).
>>702612
>>702615
Вы ебанутые? Я про ИТТ.
> Затраты на разработку выше получаются (nodejs разраб стоит процентов на 50-80 дороже).
Ну так пили на рельсах. Чего ты вообще тогда хочешь-то?
> Вы ебанутые? Я про ИТТ.
Его все используют, даже sails его юзает. Это единственный полноценный веб-фреймворк на ноде. Сейчас ещё коа появилась, подает надежды. Главный ментейнер экспресса, кажется, ушел к коа
>Чего ты вообще тогда хочешь-то?
Ну, например, ответы на вопросы >>702289 Да и вообще "поделитесь опытом".
>>702617
>Его все используют
Не raw же
>mean-стеку пояснить могу
Ну тогда вот конкретный вопрос. Монго.
1. Таблица юзеров, таблица твитов. Показывать вначале актуальные посты самого юзера (допустим дата +/- 24 часа), затем посты френдов. Сортировка по лайкам. С paginate. Как? Само собой с прицелом на дохуя записей иначе смысла в монго нет.
2. Как реализовать notify (pgsql) логику в MEAN? Чтобы чувак добавил запись какой-то, а у меня на стеночке все обновилось.
Не хочешь - не обвешивай
>>702621
> >mean-стеку пояснить могу
> Ну тогда вот конкретный вопрос. Монго.
> 1. Таблица юзеров, таблица твитов. Показывать вначале актуальные посты самого юзера (допустим дата +/- 24 часа), затем посты френдов. Сортировка по лайкам. С paginate. Как? Само собой с прицелом на дохуя записей иначе смысла в монго нет.
Ты выборку сделать не можешь или что? Бери какой-нибудь mongoose и делай нужные запросы
> 2. Как реализовать notify (pgsql) логику в MEAN? Чтобы чувак добавил запись какой-то, а у меня на стеночке все обновилось.
http://blog.mongodb.org/post/29495793738/pubsub-with-mongodb
>Ты выборку сделать не можешь или что? Бери какой-нибудь mongoose и делай нужные запросы
Перечитай еще раз, плиз.
>http://blog.mongodb.org/post/29495793738/pubsub-with-mongodb
Блядь, да умею я гуглить. В постресе тоже все так просто, а на самом деле подводных камней дохуя с производительностью.
>1. Таблица юзеров, таблица твитов. Показывать вначале актуальные посты самого юзера (допустим дата +/- 24 часа), затем посты френдов. Сортировка по лайкам. С paginate. Как? Само собой с прицелом на дохуя записей иначе смысла в монго нет.
Почитай про монгу, она документоориентированная, там нет таблиц
Да вы заебали, блядь. Само собой я проштудировал доки, если сюда пришел за советами. Коллекции есть, ок, убедил.
Скринкаст аут оф дейт. Алсо, то, что предлагает там Кантор он же назвал устаревшим говном, там же, лол. В общем, если просто вкатиться и что-то базовое понять, то пойдет, но придется ебаться с установкой тех версий, которые он юзал на момент скринкаста.
Спасибо что пояснил
> >Ты выборку сделать не можешь или что? Бери какой-нибудь mongoose и делай нужные запросы
> Перечитай еще раз, плиз.
Ты вообще с монгой не работал? Тебе расписать как бы я делал такое, или что?
> >http://blog.mongodb.org/post/29495793738/pubsub-with-mongodb
> Блядь, да умею я гуглить. В постресе тоже все так просто, а на самом деле подводных камней дохуя с производительностью.
Ну так и что ты от меня хочешь? Замерить тебе производительность?
>Ты вообще с монгой не работал? Тебе расписать как бы я делал такое, или что?
Работал. Но я хз как это сделать. Опиши логику решения в двух словах.
Изучай по справочникам и ковыряя чужой код.
Буду описывать для sails, там запросы немного проще, хотя и очень похожи
> Таблица юзеров
Делаешь модель User - id, username, password
> таблица твитов
Делаешь модель Tweet - id, owner тут ссылаешься на id в модели User, likes
> Показывать вначале актуальные посты самого юзера (допустим дата +/- 24 часа), затем посты френдов.
Два простейших запроса
Выбираем все посты за 24 часа от юзера
Tweet.find({owner: USER_ID, where: {
createdAt: {
'>=': sails.moment().utc().subtract(24, 'hours').format()
}
}})
Выбираем посты за 24 часа от друзей юзера
Tweet.find({owner: FRIENDS_ID_ARRAY, where: {
createdAt: {
'>=': sails.moment().utc().subtract(24, 'hours').format()
}
}})
> Сортировка по лайкам.
.sort('likes DESC')
> С paginate. Как?
.skip(10)
Буду описывать для sails, там запросы немного проще, хотя и очень похожи
> Таблица юзеров
Делаешь модель User - id, username, password
> таблица твитов
Делаешь модель Tweet - id, owner тут ссылаешься на id в модели User, likes
> Показывать вначале актуальные посты самого юзера (допустим дата +/- 24 часа), затем посты френдов.
Два простейших запроса
Выбираем все посты за 24 часа от юзера
Tweet.find({owner: USER_ID, where: {
createdAt: {
'>=': sails.moment().utc().subtract(24, 'hours').format()
}
}})
Выбираем посты за 24 часа от друзей юзера
Tweet.find({owner: FRIENDS_ID_ARRAY, where: {
createdAt: {
'>=': sails.moment().utc().subtract(24, 'hours').format()
}
}})
> Сортировка по лайкам.
.sort('likes DESC')
> С paginate. Как?
.skip(10)
UNION как делаешь? Ты получил два массива твитов. В каждом массиве пусть по 10 записей максимум. А надо из их объединения, причем там где owner: USER_ID идут первыми.
Потому я и спрашиваю логику, а не кусок кода. В pg я подобную (идейно, реально более сложную, конечно) херню делаю JOIN и UNION.
Склеил бы через лодаш, лол. Но можно и на уровне монги клеить как-то, но в действительности я никогда этим не пользовался. И вообще мало кто пользуется, если во многих популярных orm-ках этой возможности нет, нужно на native писать.
>>702716
> Потому я и спрашиваю логику, а не кусок кода.
Какая тебе логика нужна? Я же логику описал, в общем-то, нет?
> В pg я подобную (идейно, реально более сложную, конечно) херню делаю JOIN и UNION.
В монге нет джойнов как таковых, за что её многие и любят, и не любят. Там есть ссылки. Вот как у меня поле owner в модели Tweet ссылается на id в модели User. Если сделать .populate('owner') в запросе, в поле owner твита будет вставлена инфа о юзере, найденная по id. В реальности же там хранится id этого пользователя.
>В монге нет джойнов как таковых
В последней монге есть джойны, кури aggregation framework. $lookup - left outer join
>Но можно и на уровне монги клеить как-то, но в действительности я никогда этим не пользовался
На уровне базы это как правило быстрее.
>Склеил бы через лодаш, лол
И все профиты от монги по пизде. Вообще у меня НЕПОНИМАНИЕ. Если так забивать хуй на собственно все профиты асинка и скейлинга, то в чем смысл ноды? Экономически невыгодно получается же.
>>702854
Это в 1000 раз быстрее (ключи-ключики, btree и прочая, ага). Решение клеить на ноде - это почти всё-равно хранить в массиве данные и просто прогонять forEach.
Но вот с удивительным миром js фреймворков только начинаю знакомиться. Сейчас вижу какой-то хайп вокруг реакта. Но... Можно ПРОСТЫМ ЯЗЫКОМ, нахуй он нужен?
SPA? Чем плох ajax? Разные перделки или костыли пишу так же на jquery.
Стоит ли учить? Что инновационного в этих фреймворках, объясните плиз для разраба из 2010
Вся суть жс кодеров. Математику иди делать
Кек, а как ты собираешь делать фиксированное количество знаков у числа, а не строки?
>нет нативного тайпскрипта - вопрос.
Точно по той же причине почему нет дарта в лисе или эдже.
Делаю косынку на чистом жс (drag&drop). Карты сдаются, осталось только повесить обработчики и сваять общую логику перемещения. У меня возникает вопрос только насчет следующего: как сделать так, что, скажем, когда у меня три открытых карты в стопке, я могу взять и одну, и две, и три? Как сделать захват нижних карт, короче?
Карты - div, каждая является потомком стопки, в которой лежит.
мои безумные умения, сделанные за сутки, пикрилейтед
>>655775
Помогите с архитектурой: где диффы считать - на клиенте или на сервере?
websockets или http для общения с сервером? Какую БД использовать - я хочу postgres, т.к. не понимаю плюсы/минусы mongo и пока не хочу вникать в это все. Фронт буду на реакте делать.
Сделай свой собственный nested draggable. В ооп стиле.
>ангуляр 2, за ним будущее
В голосину! Его скоро похоронят сами разработчики, чтобы зафорсить очередной ангуляр 3, как это сделали спервым. Учить эти ангуляроднодневки смысла нет.
Я вот сисяпр учу, но на нём фриланс тонет, а на вашем жс фриланса кучи. Так что, пока что сисярп забросил, вот.
Сажа.
Чувствую себя необучаемым куском говна.
теперь сделай чтобы они бегали по полю или по мячу
еще можно запилить управление с геймпада и выйдет полноценная игра
И ачивки хорошо бы добавить.
Первому ангуляру уже семь лет, даун
>react
Ага, до первой версии сначала дойдите. Алсо, посон спросил за фреймворки, каковым реакт не является. Библиотека, слышал о таком? Вот реакт это и есть библиотека. Та-да!
>>703033
Точно, семь лет первый ангуляр, который даже не был заточен под задачи под которые его использовали, а теперь ангуляр 2, в котором учли все что можно было, который юзает передовой стандарт ЕС, наверняка загнется через день. Чего ты такой тупой?
Нативный джс, а параллельно пили проекты на текущих версиях фреймворков\хуеворков\нодов\хуйодов.
Это костыль или норма?
Это самый кривой костыль, который я когда либо видел. Серьезно. А я ведь разбирал проекты студентов на плюсах. Почему не:
$('#elem').attr('width', '100px');
Эффект одинаков.
Дело в !important. У дива есть класс, задающий его background-color, а мне надо его изменить, не допиливая лишний класс.
Мне надо сделать так, чтобы к одинаковым елементам могли применятся различные hover ефекты. И пользователь мог легко выбрать эффект, который ему нравится. У меня появилось два варианта:
1 -- зоопарк костылей с жиквери;
2 -- каждый элемент как отдельный html файл со своим css.
Я сделал не правильный выбор?
Сделать один дополнительный css файл, в котором насоздавать классы с importnat а потом просто вешать\снимать у элементов класс, почему не хочешь?
Можно даже без файла, а прямо из js создать css классы.
Котаны, не работает JS в онлайн компиляторе. Если писать в окне html через <script> та же фигня. ЧЯДНТ?
Завезут, а не завезли.
ну месяц где-то, чуть больше может. Но это в хард режиме. Задания делал большинство сразу, а те что не мог всекал, когда решения смотрел. Параллельно еще на кодеварсе задачи делаю. А че такого-то? Там же вроде не так и много инфы.
I'm stupid, you are smart, I was wrong, you were right.
Все проджекты прям сделал? Не верю, пиздишь.
>осталось только повесить обработчики и сваять общую логику перемещения.
Разве это не самое сложное будет?
Как следишь за стейтом? Может скинешь код посмотреть?
Манька, всем похуй, уже джва года в проде юзаем реакт, а какой там номер версии всем насрать.
не для того маман гиюр проходила, чтоб я за макет по 800р гоям платил.
https://symu.co/freebies/templates-4/olios-psd-template/
Где захочешь, если шаришь в нативном то сможешь вообще с любой надстройкой разобраться.
А вот тут, мой дорогой друг, должен включаться межушный нервный узел мозг, для того, чтобы придумать решение задачи. Этот процесс называется мышлением.
а не просто сидеть и все время и по примеру делать
лол
Да пошёл ты нахуй, я ещё и думать должен, чтобы это говно решать?
>Не стоит начинать учить отдельный фреймворк или библиотеку, пока отсутствуют базовые знания самого языка.
Привет всем. Я тут вычитал в шапке данное предложение. Если я пройду основы джаваскрипта, то этого будет на данный момент достаточно для изучения джэквери для верстальщика? Потом правда параллельно хочу изучать и обычный джаваскрипт. Помогите советом, а то не хочется не правильно учить данный язык.
Ты про главу Основы на learn.javascript.ru?
Если да - то нет, не достаточно. Две части изучаешь на сайте, а потом уже можешь копаться в библиотеках.
Задача: разработать простую систему управления контентом (в частности, js-редактор страниц).
Работа 4 часа в день (больше по желанию).
В начале смогу платить 3-5 тыс в неделю (зависит от опыта и скорости разработки).
Подробнее с глазу на глаз.
gary.lan3/>germanANUSg,,GmailPUNCTUM^h{com
Версталу, который совсем чуть-чуть знает ваниллу и jq возьмете?) Буду усердно учиться (если будет у кого)
Ну вообще да, самое сложное. Но вопросы возникают, по сути, только из-за этого nested draggable.
Скину, как доделаю, не хочу коммитить недоделанное задание.
Просто я уже четвертый месяц занимаюсь. Дошел пока до драгндропа. Над некоторыми задачами мог 2-3 дня сидеть. Поэтому и удивился. На самом деле молодец, завидую такой продуктивности.
Поэтому я и спросил, как стейт держишь. Если организовать всё, как реакт + редакс, то проблем с драг н дропом не будет никаких, т.к. ты будешь оперировать списками и индексами.
Ванильный жс онли, больше ничего нельзя.
Есть позиции, в которых могут лежать карты, по сути - контейнеры. Карты - их дочерние элементы. У карт есть атрибуты: масть, имя, value и номер от 1 до 52 (последнее - для того, чтобы задавать бэкграунды).
Для логики перемещения должно хватить масти и value, по идее.
>Ванильный жс онли, больше ничего нельзя.
Причем тут это, я говорю "аля редакс и реакт".
Ну в общем ясно, ты по нубски достаточно пилишь, в стиле жквери.
Я бы сделал стейт, который потом бы рендерил чистой функций, которая подписана на его апдейт, типо обсервера.
Та я и есть нуб еще. Год назад начал учить программирование, жс - полгода с большим перерывом.
Я бы разобрался с твоим советом (спасибо за него), но у меня дедлайн уже завтра вечером, так что лучше сделаю в лоб.
Написал тебе за щеку
http://group.aliexpress.com/270396006-32322006868-detail.html?spm=2114.7749990.1867581.13.IsKQOP
оно, спасибо анон.
Это копия, сохраненная 22 апреля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.