Это копия, сохраненная 28 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, Walmart и многие другие.
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД! Воспользуйтесь https://jsbin.com/ для браузерного кода и https://ideone.com/ для серверного кода.
Краткий FAQ:
1. Что это за язык такой? - Мультипарадигменный язык, изначально создавался для использования в браузерах как язык сценариев для придания интерактивности веб-страницам, однако в процессе своего развития преодолел этот этап и сейчас может использоваться для любых целей ввиду своей неограниченной гибкости и удивительно удобного синтаксиса. Сочетает в себе особенности объектно-ориентированного, функционального, событийно-ориентированного и императивного программирования.
2. Какие возможные направления для разработки существуют? - Фронт-энд (Vanilla, jQuery, Angular, Backbone, React, Meteor), бэк-энд (Node.js, Express, Sails), геймдев (Phaser, Cocos, Pixi), 3D графика (Three.js, Babylon.js), мобильная разработка (NativeScript, Phonegap, Ionic), десктопная разработка (NW.js, WinJS).
3. Можно выучить только jQuery и всё писать на нём? - Не стоит, лучше начать писать на jQuery, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и в будущем не испытывать трудностей с изучением сложных фреймворков.
4. Существуют ли стайл-гайды для JavaScript? - Да, вот: https://github.com/felixge/node-style-guide
5. Какие новые возможности добавил ES6? - Вот здесь можно почитать на русском: https://learn.javascript.ru/es-modern
6. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.
Чистый JS:
Книги: Дэвид Фленеган - "JavaScript: Подробное руководство"
Дуглас Крокфорд "JavaScript: сильные стороны"
Стефанов С. - "JavaScript. Шаблоны"
Джон Резиг - "Секреты JavaScript ниндзя"
Николас Закас - "JavaScript. Оптимизация производительности"
Node.js
М. Кантелон , М. Хартер - "Node.js в действии"
Кирилл Сухов - "Node.js. Путеводитель по технологии"
Дэвид Хэррон - Node.js. Разработка серверных веб-приложений
Front-end
Эдди Османи - "Разработка Backbone.js приложений"
Эрл Каслдайн, Крэйг Шарки - "Изучаем JQuery"
Читать онлайн
Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers" - Одна из лучших книг по JS. Пока только на английском. http://speakingjs.com/
Marijn Haverbeke - "Eloquent Javascript" - Вводная книга по JavaScript и программирование в целом. Перевод на хабре: http://habrahabr.ru/post/240219/ На английском :http://eloquentjavascript.net/
http://ru.discovermeteor.com/ - Книга по Meteor.js - одному из самых лёгких и функциональных фреймворков. Полностью на русском.
Онлайн сообщества:
http://learn.javascript.ru/ - оно одно, единственное. Начинать учить язык советую отсюда, потом переходить уже к книгам.
http://www.jstherightway.org/ - Огромный гайд составленный буржуями. Есть книги, статьи и всё-всё-всё.
http://nodeguide.ru - Огромное количество переведённых статей по Node.js
http://node-center.ru - собрание информации по Node.js. Особенно интересен раздел со ссылками и книгами.
Бложики и новостные ленты:
http://dailyjs.com/ - DailyJS
http://weblog.bocoup.com/ - Bocoup Weblog
http://perfectionkills.com/ - Perfection Kills
http://www.reddit.com/r/javascript - subreddit на reddit.com
http://toddmotto.com/ - Todd Motto, Lead front-end @appsbroker. Developer Expert @google.
Онлайн курсы:
Как же можно учить язык, только читая книжки? Нужна практика, и только так изучаемое усваивается, не иначе.
CodeSchool - http://codeschool.com/ Отличный ресурс для изучения языка, очень много курсов по всем передовым технологиям.
CodeAcademy - http://www.codecademy.com/ Уже не такой сильный, но все еще интересный проект, так же маст хев для набивания скилла.
Udacity - https://www.udacity.com/course/ud015 Дает хорошее представление о замыканиях.
Выучил основы, написал свою пузырьковую сортировку и змейку? Не знаешь как двигаться дальше?
Почитай теперь это - https://shamansir.github.io/JavaScript-Garden/
А потом? Я и так уже гений!!!
Выбери себе направление. Может, ты хочешь игори делать? Тогда вперед на гитхаб, и ищи Phaser, Pixi и другое, выбор не маленький. Хочешь на сервер сайд? Копай в сторону Node.js, Express, Socket.io. Хочешь писать MVC логику? Angular, Backbone, React, да множество их. Нельзя забывать про NW.js и WinJS, позволяющие создавать десктопные приложения.
Собственно, исходя из вышеописанного у меня вопрос: программист уровня джуниор знает на память хотя бы половину того, что описано на learn.javascript.ru и свободно эти знания применяет? или же это работает как-то иначе?
>программист уровня джуниор знает на память хотя бы половину того, что описано на learn.javascript.ru
Погроммист-жуниор точно знает 95% этого сайта, т.к. там ничего такого особенного не написано на самом деле, достаточно базовые вещи. Не обязательно все 95% помнить на память, просто нужно знать, что этот некий метод существует, условно. Но знать базовый синтаксис (а циклы этим я являются) уж точно нужно. Алсо, просто знание ничего не даёт, надо ещё уметь это применить на практике.
Что же такому дауну как я посоветуете делать? Понимание у меня более менее сложилось о том, что я уже прошел, только вот while меня огорчил, ибо редко пользовался и забыл.
И еще вопрос: что с codewars стало? Чому он меня не авторизовывает(я зарегистрирован уже полгода, наверно)?
Ну если ты полмесяца только изучаешь, тем более видимо без практики пока что, то это норм вполне. Но до джуна тебе далеко, я бы сказал, что месяцев 5 ещё.
У меня всё ок с кодварсом, всё логинит, я через гитхаб правда.
Моих знаний только для задачек, типа "преобразуйте все строковые свойства в объекте так, чтоб они начинались с большой буквы", куда мне до практики с написанием полноценных скриптов.
У меня тоже через гитхаб логинился.
Как настроить gitforwindows таким образом чтобы он создавал глобальный .gitconfig и папку с ключами .ssh на флешке а не %userprofile%?
На stackoverflow одна хуйня написана:
http://stackoverflow.com/questions/4050905/changing-gitconfig-location-on-windows
Что-то похожее на решение нашел здесь:
http://markb.co.uk/portable-git-windows-setting-home-environment-variable.html
но оно уже устарело, таких строк уже нет :(
fix: на флешке а не в %userprofile%?
или
http://htmlbook.ru/
?
Ну дак лучши жи нет ничего, ТапСкрипт - ссанина, ES6+ - моча, dart мертв, Кложура - для скобкодебилов, про всякое сорт ов кофе я даже не говорю, ибо на уровне пыли.
Бро, учи nnm-club.me
GoIT - Онлайн курсы HTML/CSS + JavaScript 2015:
http://nnm-club.me/forum/viewtopic.php?t=973073
Htmlacademy - Базовый интенсив за 2015 год:
http://nnm-club.me/forum/viewtopic.php?t=899131
Htmlacademy - Продвинутый интенсив за 2015 год:
http://nnm-club.me/forum/viewtopic.php?t=900609
Htmlacademy - Базовый JS интенсив за 2015 год:
http://nnm-club.me/forum/viewtopic.php?t=974803
Кажись хорошая вещь. Благодарю.
Лучше пройди сначала https://htmlacademy.ru/ и только потом переходи к их интенсивам, будет намного легче
Асло, в /wrk/ есть тред верстки, иди туда
var str = document.body.innerHTML
document.body.innerHTML = str.replace(/div/g, 'huj')
В выделенной части пикрелейтед текст не поменялся?
Так же планирую попробовать реакт, вроде по принципу они похожи.
Спасибо. Выглядит как именно то, что нужно.
Запахло смусси и коворкингом.
Null-safety не завезли. Undefined является подтипом любого типа, а значит, может появиться где угодно, и компилятору на это похер. В итоге имеем все то же хождение по минному полю c `undefined is not object evaluating(... `, что ив ЖС. Паттернматчинг и АТД, опять же, нинужны.
Вообще, он довольно неплох, и большое сообщество, но с учетом минусов, про которые я написал, есть инструменты получше в этой нише.
Таблица - это упорядоченные данные, а не лента вконтакте. Если тебе нужен 3005 элемент - тебе нужно 30 раз ждать подгрузки, а не просто перейти на 30 страницу. Это очень неудобно.
Потому что мне проще добавить &page=157 в ссылку и перейти сразу к нужному фотосету с Озавой, чем сидеть и крутить колесо три километра, а потом наслаждаться трёхгигабайтной вкладкой в на тот момент уже тормозящем браузере с сотнями всяких видео, баззфидов и прочих твиттеров, подгруженных по пути.
>Паттернматчинг и АТД, опять же, нинужны.
С точки зрения выпускника Сарапульского ПТУ - несомненно.
Тыц в скроллбар, и ничего ждать не нужно:
https://legacy.datatables.net/release-datatables/extras/Scroller/index.html
Я про точку зрения МС. Шелдон, залогинься.
1) Не нужно тыкать эти ваши дебильные кнопки со страницами, контент подгружается динамически.
2) Напиши свой, лол, адаптивный пол мабилу) Я тебе прув оф концепт показал, чтоб питушки не кукарекали ниудобна нивазможна
> добавить &page=157 в ссылку и перейти сразу к нужному фотосету с Озавой
Путь истинного сосачера-аутиста. Человек введет что ему нужно в поле быстрого поиска, просмотр на лету туда спозиционируется.
Какая разница, кнопки тыкать или скроллбар? Это уже не инфинитискролл, а вариации пагинации
Ты читать умеешь?
Я скролю вниз, строчки подгружаются. То, что вышло за пределы окна просмотра, уничтожается, дабы DOM не разсирался.
Ну а кто это использует? Никто.
Да и скроллер этот работает нормально только с таблицей, а представь, что тебе nnm-подобный сайт нужно с этим "скроллером" посмотреть. И найти пост за 2006-ой год, ни названия ни даты которого ты не помнишь, но как увидишь заглавную картинку, то поймёшь - вот оно. Колесо же сломается столько скроллить.
Тот же ВК вот возьми: хочу почитать прошлогодние записи на стене сообщества. Как? Правильно – никак. Модна жи, инфинит скролл!
Всё зависит от разработчика, доступа к которому у меня нет, и пока будут всюду советовать это говно к месту и не к месту, жопа будет подгорать при использовании интернета.
Я например использую, но это больше всяких крудов касается, да. В теории и на nnm можно впилить скролбар, или оставить навигацию по кнопками, но контент подгружать бесшовно, все же скролить вниз - более частый юзкейс.
У меня на флаффифоксе так.
Как вы заебали. Пагинация - юзверь щелкнул на страничку => отобразился набор записей с этой страничке. Инфинит скролл - обезьянка провела жестом по View на экране ойпада - доскролила до нужной записи. Никаких ФИКСИРОВАННЫХ СТРАНИЦ нет, мань.
Как сделать функцию с необязательными параметрами.
Допустим есть
function do(a, b)
{}
И она что-то делает с а и b, но я хочу чтоб можно было вызвать функцию без параметров
function do();
И чтоб в этом случае просто использовались значения а и b по умолчанию.
>a = a || 'loh'
Тут оно смотрит на а и если оно undefined то тодга записывает в переменную 'loh', я правильно понял?
Da
Не только undefined, но и все остальные значение, которые выдают false. Так что осторожнее с этим, лучше напрямую проверяй на undefined
Оставлю тебя наедине с твоим альтерэго, срись на здоровье.
Насколько мне известно - проще и лучше всего переписать на втором. Однако, следующая версия первой ветки бущет с миграцией под второй ангуляр.
и в котором прописан фильтр поиска по введеному значению
во вьюшке прописан ng-repeat с фильтром поиска
все библиотеки подключены, но какого-то ничего не выводится
У тебя вообще данные внутрь фильтра передаются? Как-то всё очень странно выглядит
preparat in preparats | searchPreparats : name
иначе ты будешь в indexOf передавать объект, а не строку
https://toddmotto.com/everything-about-custom-filters-in-angular-js/
хорошая статься, все разложено по полочкам
// 641560-кун
Вопрос - мне хватит для этого jquery или придется какой-то фреймворк прикручивать? Какой? главное, чтобы не СПА-пидорство
Верните мой 2006
> мне хватит для этого jquery
> главное, чтобы не СПА-пидорство
Ты определенно что-то путаешь
Вызываю в овнер компоненте:
this.setState({data: 'blablabla'});
В его рендере есть компонент, ему в props как раз передается эта data.
Я правильно понимаю, что при вызове setState все опять заново рендерится и соотвественно дочерний компонент отрендерится с this.props.data = 'blablabla'; ?
Atom становится хуетой, когда длина строки превышает сколько-то там символов (пропадает подсветка), а еще он не умеет в большие файлы.
Лучше sublime.
Da
То есть ты сначала объявил переменную bar, потом присвоил ей функцию.
ES Function Hoisting.
Читай про function declaration и function expression.
Недавно читал статью про анти-паттерн, там говорилось, что принципом DRY стоит пренебрегать, если он нарушает SRP https://en.wikipedia.org/wiki/Single_responsibility_principle
.
Как DRY может нарушить SRP? Общий функционал по-любому должен быть вынесен в отдельную сущность, тут не DRY виноват, а рукожопие налицо.
Точно, жопой читал
уютненько.
курва, мать её, мною овладела, свгшная, чувствую, близок момент, когда не останется никаких шансов отпетлять от es. здравствуй, милый сердцу dom. в упор уже дышит сука, подбирается.
btw, есть чем чекать адаптивность, тулз какой рассово чистый ибо чё то все по разному показывают а я пока поскролю, чем вы тут кормитесь
1) Фронтендеру нужно уметь нормально верстать? И как часто приходится совмещать обязанности с версталой? Если, например, лезть джуном - онли через вёрстку, или берут прямо на js?
2) Поясните за специфику работы: у нас фронтендер исправил пару багов после предыдущего, а потом долго пинал хуи, пока ему не приносили новый макет. Это типа, реальная картина? Как часто вам требуется ебашить сверхурочно?
3) Правда ли, что тяжело устроиться на работу, т.к. для фронта предпочитают фриланс-индусов за еду?
4) Каковы перспективы? Ладно ещё жаба-кодера можно представить в 40 лет, но тут у вас каждые полгода новый фреймворк взлетает. В 30 лет неликвид?
Алсо, да, к вопросу о важности вёрстки: если я в качестве портфолио, сделаю одностраничную залупу с каким-нибудь ангуляром, но вместо нормальной вёрстки обойдусь бутстрапом - норм будет?
Сделай залупу на анлуларе и буутстрапе, и бекенд на любимой жабке, и говори что ты фуллстак, ебу штоле дал, во фронтовики.
зак респектует того кто оседлает любой вел, а не полезет изобретать новый. Алсо, сижу ебусь со своей визиткой, ёбаное @media, сколько сука строк и разрешений...
Требуется запустить внешнюю программу (неважно, при этом, дочерним или отдельным процессом) и выполнить далее действия, связанные с порожденным процессом.
Проблема в том, что нативных ивентов, позволяющих отловить состояние "запущен" порожденного процесса нет, а делать через таймаут - не комильфо. Порожденный процесс ничего не пишет в stdout, посему ивенты типа child.stdout.on('data') бесполезны.
Синхронные варианты методов spawn/execFile не подходят в виду особенности их реализации - event loop блокируется вплоть до завершения порожденного процесса.
---------
Для чего мне это нужно - необходимо запустить приложение и в конечном итоге изменить положение и размер его окна, имея на руках только PID.
Изъебство это делается через winapi ('user32.dll') с помощью модуля node-ffi.
Мысль только одна - прогонять EnumWindows в while/for до тех пор, пока в списке не засветится PID порожденного процесса.
Код: https://jsbin.com/kodofe/1/edit?js
Мне кажется или ты под процессом понимаешь top-level окна винды? Мысль про EnumWindows мне видится вполне адекватной, нельзя ведь знать когда рандомная программа решит показать свой гуй.
>Ты понимаешь, что ты поехавший? Уже всё
Да. У меня уже есть аналогичное приложение на C#, но захотелось перенести его на ноду. Это удаленное управление медиаплеером, а фрагмент кода, по идее, должен отвечать за запуск приложения и перетаскивание его главного окна с указанным размером на второй дисплей.
>>642401
> top-level окна винды
Да, все верно.
> нельзя ведь знать когда рандомная программа решит показать свой гуй
Значит, самое адекватное решение - зациклить перебор окон на несколько итераций до тех пор, пока искомое окно не будет найдено или не выйдет время.
Спасибо.
Сделал через setInterval с ограничением по итерациям и грязным хаком (задержка 0), лол. Стабильно на втором проходе возвращает хендл окна.
https://jsbin.com/layomay/1/edit?js
console.log('Running iteration: ' + ++i); - уродство.
> ограничением по итерациям
> задержка 0
Ужсн.
>console.log('Running iteration: ' + ++i); - уродство.
Ну так это ж отладки ради.
> ограничением по итерациям
> задержка 0
> Ужсн.
А как лучше? Я поэтому и спрашивал, какие варианты более удобоваримы, если учесть, что нет ивента, на который можно было бы приаттачить лиснер.
"Отладки ради" было бы просто 'Running iteration: ' + i.
Лучше waitForWindow(pid, maxMs), еще cb можно в параметры. Про нулевой интервал плохо, потому что на вид как busywait, а на деле используется минимальное значение. Хотя, думаю, последнее не так уж и страшно.
Почистил код в соответствии с рекомендациями.
так такая же хуйня у меня и стоит, Toggle,
кстати, можно вот это считать её аналогом? http://beta.screenqueri.es/
>Общий функционал по-любому должен быть вынесен в отдельную сущность
Это можно сделать разными путями.
>самое адекватное решение - зациклить перебор окон на несколько итераций до тех пор, пока искомое окно не будет найдено или не выйдет время
Чето ржу с такого алгоритма.
Имея pid, получить хендл главного окна процесса можно только из коллбэка EnumWindows.
Проблема в том, окно отрисовывается неизвестно позже порождения процесса.
>ржу с такого алгоритма
Так я и хочу 'бест практиклз' услышать.
К сожалению, бест практиклз это не юзать js для таких десктопных приложений.
2014 это что за фреймворк?
Я не знаю, это что за язык?
if (tick==0) {
// НАДЕЖНО БЛОКИРУЕМ ПОВТОРНОЕ ОБРАЩЕНИЕ К СЕРВЕРУ
// КОНТРОЛЬНЫЙ ВЫВОД
puts(1);
// ОЦИФРОВКА ИЗОБРАЖЕНИЯ С ПРОРЕЖИВАНИЕМ
// ОДИН РАЗ (МОЖНО ПОТОМ ПРИКРЫВАТЬ //)
{{"lab2.xml"="lab2.jpg:5"; }}
{{"lab2_.xml"="lab2.jpg:R:5"; }}
// КОНТРОЛЬНЫЙ ВЫВОД
puts(2);
// СЧИТЫВАНИЕ МАТРИЦ БЕЛЫХ и ЦВЕТНЫХ ПИКСЕЛЕЙ
{{ T="lab2.xml"; T=T+0.001; R="lab2.xml";}}
// КОНТРОЛЬНЫЙ ВЫВОД
puts("размер T "+rows(T)+" "+cols(T));
// ИЩЕМ МАТРИЦУ КРАСНОГО ЦВЕТА
RT=rgbfilter(R,T,0.4);
// КОНТРОЛЬНЫЙ ВЫВОД
puts(3);
// ЛОВИМ КУСОК ЭКРАНА В КАПКАН
RT1=getsquare(RT,Y=16,X=10,Ly=11,Lx=11);
// СВЕТИМОСТЬ КУСКА RT1
s=sum(sum(RT1)); puts("светимость s="+s);
// ВЫВОД КАРТИНКИ В КАПКАНЕ 1
mesh(RT1);
puts(4);
// ЛОВИМ КУСОК ЭКРАНА В КАПКАН
RT1=getsquare(RT,Y=16,X=10,Ly=11,Lx=11);
// СВЕТИМОСТЬ КУСКА RT1
s=sum(sum(RT1)); puts("светимость s="+s);
// ВЫВОД КАРТИНКИ В КАПКАНЕ 1
mesh(RT1);
} // END IF tick==0
function rgbfilter(R,T,Lev) {
var i,j,A; A=equal(R);
// УБИРАЕМ НИЗКУЮ СВЕТИМОСТЬ СОВСЕМ
// ОСТАВЛЯЕМ ТОЛЬКО КОНТРАСТНЫЕ ТОЧКИ
for (i=0;i<rows(R);i++)
for (j=0;j<cols(R);j++) if (R[j]<Lev) A[j]=0;
// ВЫДЕЛЯЕМ ФИЛЬТРОМ ЦВЕТОВУЮ СОСТАВЛЯЮЩУЮ
{{ A=A./T; }}
return A;
}
function getsquare(RT,Y,X,YL,XL) {
var n,m; n=rows(RT)-1; m=cols(RT)-1;
return rowcol(RT,sat(Y,n),sat(Y+YL,n),sat(X,m),sat(X+XL,m));
}
Я не знаю, это что за язык?
if (tick==0) {
// НАДЕЖНО БЛОКИРУЕМ ПОВТОРНОЕ ОБРАЩЕНИЕ К СЕРВЕРУ
// КОНТРОЛЬНЫЙ ВЫВОД
puts(1);
// ОЦИФРОВКА ИЗОБРАЖЕНИЯ С ПРОРЕЖИВАНИЕМ
// ОДИН РАЗ (МОЖНО ПОТОМ ПРИКРЫВАТЬ //)
{{"lab2.xml"="lab2.jpg:5"; }}
{{"lab2_.xml"="lab2.jpg:R:5"; }}
// КОНТРОЛЬНЫЙ ВЫВОД
puts(2);
// СЧИТЫВАНИЕ МАТРИЦ БЕЛЫХ и ЦВЕТНЫХ ПИКСЕЛЕЙ
{{ T="lab2.xml"; T=T+0.001; R="lab2.xml";}}
// КОНТРОЛЬНЫЙ ВЫВОД
puts("размер T "+rows(T)+" "+cols(T));
// ИЩЕМ МАТРИЦУ КРАСНОГО ЦВЕТА
RT=rgbfilter(R,T,0.4);
// КОНТРОЛЬНЫЙ ВЫВОД
puts(3);
// ЛОВИМ КУСОК ЭКРАНА В КАПКАН
RT1=getsquare(RT,Y=16,X=10,Ly=11,Lx=11);
// СВЕТИМОСТЬ КУСКА RT1
s=sum(sum(RT1)); puts("светимость s="+s);
// ВЫВОД КАРТИНКИ В КАПКАНЕ 1
mesh(RT1);
puts(4);
// ЛОВИМ КУСОК ЭКРАНА В КАПКАН
RT1=getsquare(RT,Y=16,X=10,Ly=11,Lx=11);
// СВЕТИМОСТЬ КУСКА RT1
s=sum(sum(RT1)); puts("светимость s="+s);
// ВЫВОД КАРТИНКИ В КАПКАНЕ 1
mesh(RT1);
} // END IF tick==0
function rgbfilter(R,T,Lev) {
var i,j,A; A=equal(R);
// УБИРАЕМ НИЗКУЮ СВЕТИМОСТЬ СОВСЕМ
// ОСТАВЛЯЕМ ТОЛЬКО КОНТРАСТНЫЕ ТОЧКИ
for (i=0;i<rows(R);i++)
for (j=0;j<cols(R);j++) if (R[j]<Lev) A[j]=0;
// ВЫДЕЛЯЕМ ФИЛЬТРОМ ЦВЕТОВУЮ СОСТАВЛЯЮЩУЮ
{{ A=A./T; }}
return A;
}
function getsquare(RT,Y,X,YL,XL) {
var n,m; n=rows(RT)-1; m=cols(RT)-1;
return rowcol(RT,sat(Y,n),sat(Y+YL,n),sat(X,m),sat(X+XL,m));
}
CV библиотеками владеешь? Если нет - тупо высчитывай пиксели с иным цветом и сохраняй в два двухмерных массива, после чего дели их на два посередине. Тот, у которого верхняя половина больше по числу пикселей - 7. Модулей npm для работы с пикселями полно.
А что это за штуки в фигурных скобках?
я вообще языком не владею, дали вот пример что выше, он часть картинки режит и пеерводит ее в ЧБ, я вот и прошу сделать это, если не трудно, без каких либо либ
Это можно сделать и на жаве, и на ноде, но если ты не владеешь языком - соснёшь на любом языке. Computer vision - это не крудошлепствовать.
Общая стратегия как >>643409 описал.
Можно подключить нейронку и таким образом решить задачу даже если на изображении числа будут расположены иначе. В любом случае понадобится массив пикселей эталонной единицы и семерки.
NodeJS + GetPixels + BrainJS
http://stackabuse.com/how-to-create-c-cpp-addons-in-node/
Есть сайт (не мой) без api. Мобильной версии не имеет. Я хочу написать приложение для windows phone, которое будет отображать некоторые данные с него. На сайте есть поля со списком значений, при выборе значения из первого - значения во второе подгружаются автоматически, далее пользователь выбирает значение из второго поля, затем жмет "Показать" и на странице появляется соответствующий контент (текст).
Как я это представляю: в приложении размещается два поля со списком и кнопка. При открытии приложения, значения в первое поле загружаются с сайта. Далее пользователь выбирает нужное и в соответствии с его выбором подгружаются значения во второе поле, где он также выбирает, затем жмет кнопку и получает контент.
Реально ли вообще это сделать? К слову, в Visual studio есть шаблон проекта HTML + JavaScript для винфона. Хватит ли хтмл+жс для реализации этого всего? Какие статьи почитать?
>Есть сайт (не мой) без api
Если сайт динамически подгружает контент при взаимодействии с пользователем, значит он по определению имеет API.
Другое дело, в твоем случае, он не публичный.
Можно отследить в консоли XHR запросы к сайту и использовать их в своем приложении, подставляя необходимые значения.
Разумеется, если сайт изобилует хитростями в клиент-серверной логике, вероятность того, что ты соснешь, сильно возрастает.
Но попробовать стоит.
Гораздо проще сделать это через вебкит и таймеры, инициируя нажатия кнопок, а потом каждые полсекунды парсить на присутствие определенной DOM-ноды или текста.
>Гораздо проще сделать это через вебкит и таймеры
Если такой вариант реализуем на WP - безусловно проще.
И какими же?
>WP здесь имеется ввиду виндовс фон.
Я подумал, что ты кодишь на сишарпе.
Тогда инициируй click() по элементу, потом парси (с помощью setInterval) innerHTML по кодовым словам/тегам, чтобы понять, что данные обновились.
>>643713
Судя по тому, что вы предлагаете - задача все же реализуема? Просто я толком не шарю за веб. Ну то есть какие-то теоретические познания есть, а практики ноль.
http://pastebin.com/Xstv83fa
Почему этот код выводит:
end
a 1
b 2
c 3
а не
a 1
b 2
c 3
end?
Я ведь в каждом then возвращаю новый Promise, и он должен выполнять их по порядку, а потом выполнить последний then, разве нет?
Вполне реализуемо. Если сайт имеет какие-то особые меры защиты от ботов (клаудфлара и подобное), нужно смотреть детально, в крайнем случае грузить через headless браузер.
Все, понятно, где была ошибка. Promise не mutable и надо каждый новый then вызывать в том Promise, который вернул прошлый then.
а если начинать учить сейчас, может стоит сделать выбор в пользу какого-нибудь другого, более нового фреймворка? или ангулар настолько крут, что и в 16 году остается в топе?
Никаких мер защиты нет.
Таки возвращаясь на пару постов раннее - HTML и JS хватит для этого приложения? И если да, что из JS нужно будет применять? Ну там jQuery, AJAX..? Или на чистом жс можно?
Ангуляр 2 уже в бете. А популярен сейчас React.js + Redux/flux. Но у них выше порог вхождения. На angular 1 уже написано много кода, который нужно поддерживать, поэтому он не потеряет актуальность.
Я только за выдергивание данных могу говорить, специфик винфоновских приложений не знаю. Если ничего вычурного, то шаблона с твоего вижуал студио, наверное, хватит.
благодарю, значит буду понемногу обмазываться ангуларом. может еще и книги/курсы посоветуете годные? (кодкадеми не в счет)
на английском могу читать, но не всегда вникаю в тонкости. а нет на русском годных?
На русском только одна книга про Ангуляр и она не очень годная.
https://jsbin.com/reyohonufe/edit?js,console
но почему-то jsbin'у new не нравиться console.log()? Почему при алерте все нормально, а при выводе в консоль дата привередничает?
https://jsbin.com/rahogawuyi/edit?js,console
Что за хуйня? Учебник протух?
Okey, тупанул.
говно эти книги
что-то на уровне простых хеллоувордов и написание домашних страничек 7-б класса
сервак ругается 404 ошибкой
сервак - апач
json грузится потоком
будто в твоем ЕПАМе и Люксофтике не гостевухи для "эффективного бизнеса" по продаже всякого говна пишут, там даже ангуляра дохуя будет, жквери под пивас хватит
тебе нужна бд
Это ты тот пидорас из прошлого треда, который на клиенты бд выгружает?
Node на винде/линакс понадобится если хочешь JSX. JSX привносит елементы html в синтаксис js, на главной сайта реакта посмотри сниппеты Live JSX Editor / Compiled JS. Можно без JSX писать, но так вроде не принято, алсо можно без нода компилировать JSX скриптом в браузере - https://facebook.github.io/react/docs/getting-started.html#quick-start-without-npm.
Точка попала в ссылку.
кажется понял, просто в папочку кидаешь скриптики, и они работают)
Ну так у тебя есть архитектура, и нужно только писать код, а так нужно следить за тем, чтобы всё не превратилось в свалку
Используем редактор, который подсвечивает такие ошибки, или линтер, который кричит об ошибках в терминале.
вероятно что те дивы генерились динамично, а твой код выполнялся раньше
Какой тогда толк от этих Firebug'ов? Как линтер к юзерскрипту прикручивать?
>>644818
Подскажи лучше, буду благодарен.
дохуища это когда база на пару миллионов позиций, а это так недельная выгрузка
детектор чини манька
Ты не понял.
У тебя хоть охулиард позиций быть может, но такими пачками данные на клиент выгружают только неадекватные долбоебы
Проблема – так и не понял, какую flavor of the month библиотеку использовать для няшных кнопочек и прочего.
Как уже всем понятно, в веб-девелопменте не знаю ничего; 25 лвл в си/фортране/матлабе/R – исключительно научные расчёты. Погуглил, нихуя не понял, теперь полная каша в голове – как соотносятся между собой Ionic, webix, bootstrap и прочее. Гуглю best html5 ui frameworks, так там в каждом списке/бложике тысяча названий, и все разные.
Шапку читал, не помогло. У меня tunnel vision под научное программирование, не бейте сильно.
У тебя был вопрос про выгрузку 100 мб, от которой апач накрывает
>>644837
Блоками, в прелелах мегабайта, чтобы клиент не ждал выгрузки несколько минут
вот для таких рукожопов как ты и запилили вебшторм. а фаербаг это скорее к DOM тулза, ну или в консоль что нибудь выводить
Появилась тут мысль в процессе работы. А нельзя как-нибудь поставить в соответствие div-ам (или другим элементам) в соответствие число и получать его, в случае необходимости. Например когда кликаем по нему.
нубо-джуниор
>поставить в соответствие div-ам ... в соответствие число
В соответствии с чем? Расположением дива в доме? Так для того в ХТМЛ5 и запилили свойство тега "data-"
То есть скачиваешь архив с css/js, и после этого можно в своем скрипте к ним обращаться, верно?
>>644866
>>644874
Имеется ввиду джей-кьюэри?
Вобщем, посмотрел примеры, bootstrap выглядит сносно. Ionic, видимо, вообще SDK для тилибонов. А вот всякие groundworkCSS и прочие – они в принципе идентичны bootstrap?
У меня есть n-е количество div-ов в секции. Я хочу чтобы их можно было найти по индексу и взаимодействовать с ними.
> тег "data-"
А не подскажешь, как силами jQuery с ним взаимодействовать?
не для продакшена же, а для понимания основ. ангуляры и реакты вынесут мозг если ты до этого с вебом дела не имел
Я уже с методом data() играюсь. Вроде бы то что нужно, но все равно работает не там как хочется.
Хочется чтобы пользователь кликал на дивы мышкой и они выделялись (и развыделялись обратно, при повторном клике). А обработчик извлекал индексы этих элементов, чтобы потом с ними работать.
У меня ошибка похоже в функции, которая эти div-ы добавляет. Потому что потом для них обработчики событий плохо работают.
JS как полноценный язык = NodeJS
Полноценный веб на JS это нода + бэкенд и фронт-енд фреймворк?
Вкатываюсь из пхп, на какие важные отличия и особенности стоит обратить внимание?
>Хочется чтобы пользователь кликал на дивы мышкой и они выделялись (и развыделялись обратно, при повторном клике)
Для этого сгодится тоггл класса.
Вот он и не работает. Я там наворотил лишнего, теперь вот мучаюсь.
первый абзац у тебя абзац просто. гугли mean стек
по птводу перехода с пыхи - нужно понимание асинхронности, того что это один поток и однозадачное приложение
.addClass('active').siblings().removeClass('active').index()
вообще надо знать и понимать вёрстку, т.к. на фронтенде в любом случае вьюхи нужно пилить
Нужно конечно, иначе будешь на js городить монструозные конструкции, которые можно несколькими стилями описать и одной строчкой на js, видел таких бойцов, им коллеги в спину пальцами тыкают и сдавленно хихикают. Ты должен уметь сверстать страничку любой сложности, даже если не придется этим заниматься. БЭМ и css фреймворки необязательно, только для себя или если по работе нужно, а вот препроцессоры это как бы на текущий момент стандарт (правда хипстота ебанулась на отличненько, тащит нынче стили в js, слезает с препроцессоров в пользу postcss и всем остальным рассказывает, что они мудаки, если еще не занимаются тем же самым, тренд меняется, но не суть, шарить все равно надо).
Вопрос опытным ангуларогосподам.
Есть задача сделать компоненты, у которых есть общая логика (окна, которые можно двигать, менять размер и т.д.). Как это лучше всего реализовать, используя сущности ангулара? На нативном я представляю, как это сделать.
И вдогонку - как передать компонент внутрь компонента в качестве property?
Есть множество окон, у которых разное содержимое, как сделать так, чтобы декларативно объявить их содержимое, а не пилить отдельное каждое окно?
ng-content, дебил, а почему ты пишешь проект на фреймворке, который ещё не вышел?
Спасибо. Вот, держи поняшку.
ты поехавший? нг2 в бете, хули не пробовать? или ты из тех утят которых пугает тайпскрипт и что в нг2 всё иначе?
Я не против того, чтобы пробовать. Я просто предположил (видимо, ошибочно), что человек пилит на нём реальный проект.
Для продакшена, но не такого, на котором завязаны деньги, так что про соответствие бизнес-требованиям речи не идет.
>Для продакшена, но не такого, на котором завязаны деньги
А кто финансирует проект такого типа?
>так что про соответствие бизнес-требованиям речи не идет.
Что? Это здесь при чём?
>А кто финансирует проект такого типа?
Те, кто хочет, чтобы проект существовал.
>Что? Это здесь при чём?
Ты про это и спросил.
Нечего показывать пока что.
Строк 400 в сумме сейчас, начал не так давно.
Будет прикольная игра.
Сам я верстальщик и имею небольшой опыт в создании простых обработчиков событий (click, scroll, hover, toggle и прочее дерьмо) на jquery + плагины (слайдеры, зумы, модальные окна, toggle меню для мобилок и т.п.).
Есть желание писать что-то более интересное и сложное на JavaScript, чем вышеуказанное, например какие-нибудь сайты которые работают на JS чуть менее, чем полностью (те же SPA). Но тут мешает мизерные опыт реальной разработки на JS'е, поэтому встает вопрос о ресурсах, книжках, видеокурсах, которые бы больше показывали практическую сторону изучения JS'а. Подойдут ли вышеописанные книги для начала.
Из курсов на rutracker нашёл следующее: http://rutracker.org/forum/viewtopic.php?t=5164351
Выше в треде есть ссылка на js от htmlacademy, плюс есть ещё Кантор. Начинать с книг по конкретным фреймворкам и библиотекам ещё и протухшим - плохая затея.
>>645627
https://egghead.io/
http://learn.javascript.ru/ifelse дошло дело до задач и обосрался, лол. С утра еще раз попробую, а то 4 часа ночи. В теории все понятно, на практике сосу хуй. Найс.
var Nav;
var app = React.createElement(Nav, {color:"blue"});
React.render(app, document.body);
Допустим
var Nav="p";
var app = React.createElement(Nav, {color:"blue"}, 'Hello!');
React.render(app, document.body);
Почему текст не стал синим?
Сейчас посмотрел на роутинг в ангуляре и что-то запутался.
В чем фишка SPA тогда, если с роутингом у нас все равно есть куча страниц у SPA и ссылок, соответственно, тоже куча.
То есть основное различие между обычным сайтом и SPA в том, что вся страница не перегружается?
А так у нас все равно куча других страниц, которые подгружаются, и куча разных ссылок(роутинг).
Тогда почему мы не можем сделать SPA на обычном ajax??
Сильно не пинайте, я реально тупой и очевидные вещи могу не понимать.
Спа это и есть обычный аджакс
Аноны, можно ли в обычном бутстрэпе сделать такое, как по ссылке (и также просто)? С заданием длительности, положением, поведением при скролле и проч.?
http://getbootstrap.com/components/#alerts-dismissible
http://getbootstrap.com/javascript/#alerts
http://www.tutorialrepublic.com/twitter-bootstrap-tutorial/bootstrap-alerts.php
Я это видел, естественно, но не нашел там такого же простого задания длительности / позиции. И что, он автоматически будет оставаться на экране при скролле (на планшете, например)?
Недавно начал разбираться, так что вопрос, вероятно, глупый. Но примеры на сайте бутстрэпа и документацию я листал ,честно.
Спасибо!
Спасибо, анон. Так в бутстрэпе такого из коробки нет? Вроде бы полезный/очевидный функционал.
И в noty слегка другой стиль, следует ли переписать его под бутстрэп/как легко это сделать? В css тоже только начал, но выглядит совсем не сложно.
поясни за последнюю ссылку. Пишет тип не валидная фидл конфигурация, плиз фолк зе ориджинал JSфидл. Я запускаю скрипты из стартеркид, поэтому? Поясни за NODE.JS, че это за штука и можно ли ее поставить на винду! Плиз, анон!
Если эта штука устарела (а она, судя по гуглу, устарела), дайте современный аналог, но штоб не слишком тяжело.
В связке с jsRender это понравилось.
Блять, прошу. Давай вскроем. Я так понял, это основная среда разработки для любых программистов? Че нащет виндовс, ставится? Как эта хрень связана с серверами? Вскрой. анончик.
Ну у тебя джс в браузере выполняется, а нодеджс это такая хуйня которая выполненяет твой джса вне браузера. Т.е. можешь на нём теперь сервер писать, например.
>Че нащет виндовс, ставится?
Забудь про виндоус или уёбывай. ставится
Если ты не аутист, то твой продакшн-сервер будет работать на линуксе а не на винде, значит линукс всё равно дрочить придётся, значит лучше его дрочить сразу. Винда нужна только чтобы писать под винду, всё остальное делается в первую очередь с расчётом на линукс.
поясни поподробней. Убунта например подойдет? Или нужен какой-то специальный серверный Линукс?
Спасибо!
Да, нужно компилировать LFS, без этого у тебя все будет ломаться через раз. Ну и у все больших свои ядра, сам понимаешь.
поясни поподробней. Я в терминах не шарю. Если я только пишу скрипт для фронтэнда на reac jc, то установленного node.jc мне хватит за глаза, а настраивать сервера, разве это моя работа?
ну вот я читаю документацию react. Может я еще не дошел, но причем тут ядро? Или ты имеешь ввиду вот эти команды запуска сервера в node.js?
Ядро содержит в себе все данные и тебе нужно научиться с ним работать. Тебе ещё рано читать реакт. Начни со статьи про Николу Теслу на википедии. Потом гугли "никола тесла луч смерти" и "информационное ядро ось сверхсознания". По началу может быть трудно, но ты главное не сдавайся!
Поясните за инструменты. Нужно запилить магазин на js. Только вот не надо сейчас про то, что нода не для этого. JS во все поля.
спасибо, брат!! То есть простой убунты с node.js+fluх достаточно для фроннтэнд разработчика на react?
Если только с правильно пересобранной, да.
Если ты фронтендщик, то тебе убунта не особо-то и нужна.
На реакте можно и под виндой писать без каких-либо сложностей
Ну вот, окноёб решил остаться в своей зоне комфорта и всё сразу стало на свои места.
Почитай гайды по реакту хотя б на хабре, если не можешь в английский и определения терминов, ты очень в них путаешься
спасибо, я в процессе.
Что плохого в окнах для фронтендщика? Готов поспорить, если он придет к успеху, перекатится на макось
Не слушай этого питуха. Первое, что нужно сделать - переключить гугл на английский и забыть про русский язык.
Это мы можем так сделать, потому что у нас какая-то база есть. Может он вообще нихуя английский не знает, и вкатывание займет у него два года. А так он по стэковерфлоу за пару месяцев технический выучит
Есть. Но было двано. Щас два месяца учил дваваскрипт. Теперь react. Нашел нормальный перевод, так что пока норм.
>>646186
Ну вот, значит база уже есть.
По какой-нибудь джаве может и можно и на русском начинать, но веб-реакт-хуякт и прочие эдж-технологии это другое дело, тут нужно всегда быть в теме и держать руку на пульсе, а протухшая русскоязычная информация только ещё больше тебя запутает и затруднит твоё обучение. Английский нужен обязательно, так что лучше сразу.
Если я не ошибаюсь, в Ангуляре такое нельзя. Ты можешь из одного контроллера стриггерить событие ($broadcast, $emit), а в другом - подписавшись на это событие дергать функцию (метод). Если не прав - поправьте.
двачую адеквата.
var ob = {
a: 'a',
init: function( mass ) {
for( var k in mass )
this.k = ar[ k ];
},
};
Присваивается ебаная k, а мне нужно чтобы this.ключ массива = значение массива по ключу.
В пхп эта хуйня легко делается, а тут чот не.
А ну блять пиздец ебать, охуенно надо было написать this[k] вместо this.k, кто б мог подумать. В жаве же нет классов в привычном понимании, это ж обычные ассоциативные массивы.
не везде. в той же пыхе это разные вещи
Я вот тоже фронтэндщик, но перекатился на убунту, ибо настройка всего нужного для работы идет в винде через жесткие костыли - сначала установи командную строку, потом пердолься с настройкой всего и вся, а гуишки - это почти всегда очень обрезанное по функционалу забагованное говно.
По идее для фронта идеально подойдет мак, но на него надо дохуя денег, особенно в наши тяжелые времена.
Короче, единственная причина, которая может держать от перехода на прыщеось - фотошоп, который, к слову, можно поднять на виртуалке или запускать через wine.
Ни одного плюса у прыщей над виндой нету для фронтендщика. Ты просто нихуя не разбираешься и поддался на разговоры "знающих" людей.
http://casperjs.org/ для phantom.js. https://github.com/admc/wd - для selenium. У phantom.js не самая лучшая поддержка нескольких вкладок, но он мне кажется надежнее. selenium - это внешняя jar утилита, которая управляет chromium-ом, через эту либу можно его использовать.
Пенек под зад))
Давай назови хоть один плюс, что может тебе помешать на винде быть фронтедером. Работаю уже почти год в вебе, никаких проблем, алсо весь офис на винде, только у 2х человек линукс и мак, из, примерно, 50.
В линуксе есть оконные менеджеры с гибкой настройкой через скриптовые конфиги, нормальная консоль, пакетный менеджер(намного удобнее все обновлять), vim. Из минусов только отсутсвие фотошопа. В винде соответственно наоборот.
>оконные менеджеры с гибкой настройкой через скриптовые конфиги
Даже не ебу что это, если ты просто про мульти окна, то они есть на винде. Какой это плюс даёт кодеру с двумя мониторами? Никакой, поэтому иди нахуй.
>нормальная консоль
ХАХАХАХАХАХА
Если ты блять юзаешь стандартную консоль с прыщей, то ты просто даун.
На винде 100500 эмуляторов консолей есть, которые по функционалу в разы превосходят стандартную линупсовую консоль, не говоря о том, что в любом джетбрейнс редакторе она встроена.
>пакетный менеджер(намного удобнее все обновлять)
Обновлять что, дебилойд? Обновляльщик, блять.
>vim
Всё, иди нахуй реально. Какое отношение вим имеет к линуксу? Ты просто еблан, услышавший где звон, но нихуя не понимающий.
Нихуя она не защитана. Она уебищная, лучше стандартной виндовой, но никто не пользуется стандартной консолью.
Вот именно. Даже стандарта нету, везде кастомные консоли, но почему то их сравнивают со стандартной виндовой.
А о чем ты тогда, блять, говорил тогда? Они все реализуют примерно тот же функционал и все они лучше виндового cmd.
Это конечно не обязательно, чтобы быть хорошим фронтендером. Но пользуясь виндой, у тебя есть ОС - и ты в ней ничего не можешь изменить, можешь использовать ее только такой, какая она есть. В линуксе я могу изменить нужное мне поведение ОС на абсолютно любое. Сделать любые горячие клавиши, максимально автоматизировать любые действия.
>100500 эмуляторов
+100500
>Обновлять что, дебилойд? Обновляльщик, блять.
Программы, которые ты используешь?
>Какое отношение вим имеет к линуксу?
Ты пробовал использовать вим под виндой? Это очень проблематично.
>джетбрейнс редакторе
Дальше мог бы не продолжать.
Хули ты сравниваешь какое-то кастомное говно от васяна со стандартной консоль для массового пользователя?
Давай сравнивать кастомные с кастомными, возьмём ConEmu, какие фичи есть в твоей линуксовой, чего нет в ConEmu?
Консоль везде одинаковая, одинаковые команды. Отличия Xterm от Gnome-terminal/Xfce4-terminal/KTerm только в окошке, которая вокруг твоей консоли, цветовой схеме и поддержке 16 миллионов цветов. Ты можешь поставить Zsh, там больше удобных дополнений(например автокомплит для gulp/git).
>Сделать любые горячие клавиши, максимально автоматизировать любые действия.
Манька, плиз, конкретней.
Что мне мешает переназначать горячие клавиши в винде? Ничего.
Автоматизировать какие действия? Код за тебя писать, лол? Что за хуйню ты несешь, я могу баш/шелл скрипты также на винде написать, что угодно "автоматизировать"
>Программы, которые ты используешь?
Какие ты программы там используешь, кроме браузера и ноды, для которых нужен пакетный менеджер, чтобы обновлять? Никакие? Ну ясно короче.
>Ты пробовал использовать вим под виндой? Это очень проблематично.
Пробовал, никакой разницы нету с линуксом.
Это тоже самое, что сказать, "ты пробовал использовать хром под виндой? очень проблематично". Никакой разницы нету вообще. Ни малейшей.
>Дальше мог бы не продолжать.
Взлольнул. Адепт вима, давай поведуй, как ты на тайпскрипте пишешь? Какой анализатор используешь? Никакой? Бедняжка, ну значит пиши дальше на жквери своём лендинги.
(хотя я юзаю атом, там тоже божественный плагин для тайпа, вим мод кстати тоже ничего)
Кастомное говно? Кастомизации чего именно? Это не форки xterm'а, а отдельные программы. Почему гнум-терминал, дефолтный терминал гнума и следовательно дистров на гнуме это кастомное говно, а твоя поделка не кастомное говно? Тоже самое про xfce/mate и любую другую программу.
> какие фичи есть в твоей линуксовой
Как минимум не надо пердолиться, чтобы завести нормальный шелл.
Ты чо бля шутишь?
В ConEmu шелл по дефолту, тупо блять exe скачиваешь, устанавливаешь, запускаешь, тебя спрашивают какую консоль юзать, выбираешь шелл. Это 30 секунд занимает, если это для тебя пердолинг, то ты выбрал не ту профессию.
Даже cygwin (или чем там на винде сейчас юниксы эмулируют) не нужен, ей, и gnu coreutils сразу будут?
>Манька, плиз, конкретней.
Ок. Как в винде сделать, чтобы из браузера выполнить в консоле какую-нибудь команду, которую часто используешь(например остановить сервер и поднять его с новыми конфигами(Ctrl+c gulp start), пропустить песню в плеере, и т.д.), при этом не сворачивая браузер?
В линуксе это легко делается. Я привязываю к комбинации клавиш(например последовательность Win + буква) отправку нужных команд/клавиши в открытую tmux-сессию, в окно, где запускаю gulp-таски(в конкретном примере).
Как это сделать в винде, кроме как руками?
>Какие ты программы там используешь, кроме браузера и ноды, для которых нужен пакетный менеджер, чтобы обновлять? Никакие? Ну ясно короче.
Навскидку - zsh, tmux, кодеки, gimp, wine и прочее.
>Пробовал, никакой разницы нету с линуксом.
У меня половина плагинов перестала работать.
>Адепт вима, давай поведуй, как ты на тайпскрипте пишешь? Какой анализатор используешь?
YouCompleteMe поддерживает typescript. Есть также плагины для подсветки синтаксиса, typescript-vim вроде называется.
zsh, tmux и все прочие штуки есть в конэму/сигвине
статического анализатор для тайпа в виме нету
реально спор ниачём, уже в какие-то дебри ты полез, слишком персонализированные примеры, ничем разработка на шиндоусе не хуже разработки на линупсе, только какие-то личные предпочтения могут быть, вот привык ты к такому воркфлоу, значит будешь его юзать, но ни никаких киллерфич нету ни у линукса, ни у винды, ни у мака, все базовые и не только базовые вещи есть уже давно на всех платформах, это не 2010 год.
другой анон
я имею в виду обычный статический анализатор, как во всех других типизированных языках, которые показывает ошибки не в рантайме, а до запуска кода.
https://github.com/scrooloose/syntastic
https://github.com/benekastah/neomake - для неовима, с поддержкой асинхронного выполнения.
[code]document.querySelector("table").onclick = function (e) {
var str = e.target.closest(".rowcheck");
if (str) {
str.querySelector("input").checked = str.classList.toggle("onvalue");
}
};
var spoiler = $('.spoiler');
spoiler.on('click', '.rowcheck', function () {
if (spoiler.has('[type="checkbox"]:checked').length) {
$('.spoil:not(.activated)').addClass('activated');
} else {$('.spoil.activated').removeClass('activated');
}
});
[/code]
Айпады не нужны.
Ого, так быстро, в 6 утра, спасибо.
Ну и где zsh/bash+coreutils из коробки?
>document.querySelector('selector')
>$('selector')
Зачем ты городишь кашу из jQuery и Vanilla JS кода?
Тем паче, когда можно обойтись одной только ванилькой.
Rebuild. Reload. Test. Более чем уверен, твой код заработает на всех современных девайсах и браузерах.
Так вот, подумываю пойти почитать про регулярочки по идеи они сюда идеально зайдут и запихнуть весь скрипт в одну строку, потому что сейчас у меня на каждый смайлик выделяется по одной длинной строке.
Собственно вопрос - от этого будут профиты в виде увеличения скорости выполнения скрипта, или же браузеру похуй как написано и выполнять он будет одинаково? Стоит ли мне ебать мозг с регулярками?
>будут профиты в виде увеличения скорости выполнения скрипта
https://jsperf.com/regexp-test-search-vs-indexof/98
а откуда хайп, а то в вакансиях во всякие стартапы ко-ко-ко у нас разработка на реакте
Ну так второй ангуляр рановат даже для стартапов, он же еще не вышел.
Тем что реакт - это нормальный инструмент для фронта, а ангулар - попытка перенести на фронт серверные задачи, что приводит к распуханию клиента и ущербной архитектуре.
Ну ты все равно пидор, и так делать не надо. На экране же они все равно не помещаются
есть унылое банковское говно на C# и встала задача переписать его на Ноду
с какой стороны подойти?
Пиши гибриды на EdgeJS.
Есть. На сайте реакта.
-/pr/? ETO DANILA! /pr/ I NEED HALP!
Посоны, поясните за ангуляр, у меня есть два стула разных модуля в приложении. В обоих есть контроллера для своих страниц и там же написаны директивы. Директивы в общем, практически идентичные по работе и потом я не мудрствуя лукаво назвал из одинаково. Суть в том, что директиву я написал для одной страницы - потестил, все работало отлично и я перешел к написанию ктрл и директивы ко второй странице. Написал - потестил, все ок, запушил. И началось, блядь. Пишут мне, что никуя не работает. Я говорю не может быть и лезу проверять см тем, чтобы обнаружить, что НИХУЯ не работает и в самом деле. При чем на строй странице пашет, а на той что я реализовал первой нет. Оказалось, что не смотря на то, что страницы юзают разные контроллеры(от разных модулей) первая страница по какой-то причине на событие взывает к директиве из второго контроллера(второй модуль жи есть). Я переименовал директиву во втором контроллере(модуле) и все заработало, но мой пукан горит и я не могу понять почему так произошло, кто подскажет нубу от ангуляра, что за бред я засвидетельствовал. Нагуглить пока не удалось, видимо не так спрашиваю у гугла.
Тесты вещь хорошая. Это то, что различает программиста и быдлокодера. В будущем время разработки может сократиться процентов на двадцать.
И не такие трюки можно проделывать, когда поймешь, что такое 'scope'.
Годная вещь, спасибо
Модули ангуляра не предоставляют механизм неймспейсинга. Все названия директив глобальны в рамках приложения.
Пытаюсь избавить моих собеседников в ВК от подписи "%username% набирает сообщение"
Из-за звздочек поехала разметка. Читабельный вариант:
Как поблочить ВСЕ onkey события на странице? Написал юзерскрипт, который в исходном коде меняет всё вида onkey="foo()" на "onkey="void(0)", смотрю сгенерированный исходник, все onkey события действительно поменялись. Тем не менее, что-то ещё отслеживает ввод.
Пытаюсь избавить моих собеседников в ВК от подписи "%username% набирает сообщение"
Есть годные уроки, книги по ангуляру? Видео-текст, похуй. Можно на ангельском.
сажа приклеилась
>>647422-хуй
В моём случае остаётся только " you will have to hi-jack that method to listen for calls to it, and then filter them so click events aren't added."
Как это сделать?
Ага, это я понял из того, что увидел. Кинь ссылку на документацию, где это написано, потому что я час читал доки и ничего подобного не нашел.
Задача:
проверить существования возвращаемого объекта и выполнить код, если пустой массив - валить в else .
Примерный код:
if (huetaObj.huetaProp && huetaObj.huetaProp.huetaPropProperty) {do something} else {do other shit};
Я тестирую конкретно случай для возвращаемого пустого массива и какого-то хуя интерпретатор джс всегда лезет в ифе за амперсанды и пытается взять свойство несуществующего объекта, хотя насколько мне известно о принципе работы И, он должен на стадии первого условия словить фолс и съебать из ифа в ужасе. Что за хуйня? Всегда же работало, а теперь нет, теперь мне нужно добавлять мудацкую строку проверки длины возвращаемого из апи массива, как будто я не шарю как работает И. Алсо, выводил в консоль лог значение huetaObj.huetaProp - там пстой массив, сравнивал там же с фолсом - ответ тру. Я НЕ ПОНИМАТ.
Начал ковырять JS 18 декабря, за это время прошел курс на codeacademy,туториал по ангуляру1 на офф сайте, почитал (не весь) курс Кантора и немного посмотрел видосов/почитал про Node и Express.
Учитывая что нихера еще нормально не знаю, резюме никому не слал, сидел себе учился. И тут сегодня на почту приходит приглашение на собеседование на позицию Junior/Middle JS/Node.js - куна.
Список требований:
javascript, angular js, node js, express
mongodb html, css, bootstrap (желательно) REST API, OOP, clear code gulp или grunt, npm, bower; git, *nix / nginx.
И просьба взять с собой резюме.
В резюме как бы написать про ЖС нечего.
Анон, надо запилить и задеплоить на хероку какой-нибудь простейший проект с нуля до, сука, среды.
И чтобы нода-експресс, ангуляр, монга. Посоветуйте - что написать чтобы хоть теоретически успелось за сутки с чтением туториалов!
Не могло это работать. В жс всегда можно обратиться к свойству, даже если его нет
Нужно писать
'propName' in objName
Чат напиши, с jwt-авторизацией на sails. Я б такое за час запилил примерно
Лол, обосрешься же.
А почему тебе это письмо вообще пришло, ты где-то резюме оставлял что ли?
Знаю что обосрусь, но обосраться можно так что тебя либо позовут еще раз через месяцок либо нет. Надо обосраться с возможностью прийти еще раз.
Я хуй его знает - где они меня нашли.
>Я хуй его знает - где они меня нашли.
Сидят такие HRы в конторе, делать нехуй вообще. "А давай рандохуям на емайлы приглашения на собес с тестовым посылать?" - "Гыгы, давай))".
Так что ли?
Логика в сторах, представление - в jsx компонентах.
И вот немношк про компоненты: https://medium.com/@dan_abramov/smart-and-dumb-components-7ca2f9a7c7d0
Какой город? Где эти волшебные земли, где Node.js программистов зовут аси?
Их мешают долбоёбы, а не Реакт. Нормальные посоны выносят представление в отдельный файл.
Да ты охуел, сука. Почему меня никто не зовет на собеседования? На гитхабе проекты с десятками и даже сотнями звезд, десятки активных проектов, куча статей, резюме повсюду, а нихуя не зовут.
Все лиснеры доступны в Chrome Developer Tools - Event Listeners.
>>647485
Для решения твоей задачи можно обойтись без грязных обезьянок. Тащемта, порядок действий таков:
1) скачай все скрипты с vk себе на локалочку. Отбрось либы, оставь только те, где по твоему содержатся лиснеры. При необходимости пройдись анпакером/бьютифайером;
2) подозрительные места закомменть/отредактируй/do whatever thou want;
3) поставь Fiddler и настрой правила на перехват запросов к удаленным скриптам, подменив их на локальные версии;
4) ???
5) ПРОФИТ!
Нода в таком случае рендерит только страницы которые делают дополнительные запросы к серверу?
Или она вначале рендерит, а отдается она все равно через Нгинкс.
Где почитать в подробностях об этом?
Такая свчзка нужна, только если у тебя кластер инстансов ноды. Если у тебя один процесс и мало статики - нжиникс не нужен.
Блядь, хватит меня траллить, скажи нормально как это записать кодом, я нихуя не понял.
var a = document.querySelectorAll('div');
Array.prototype.slice.call(a).forEach(function(val){val.innerText = 'AZAZAZA'});
наверное потому что у тебя нет активной жизненной позиции или форма ушей не подходящая))
мимоанон
И? Нихуя не работает, мне undefined возвращает. И обязательно только div'ы искать? Мне body надо!
Вместо тега 'div' можешь указать список селекторов, разделяя их запятой, где по-твоему, предположительно, будет находиться искомый текст.
Что несешь? Я только что проверил в консоли - [] == false; возвращает true.
Да это ясно, но ведь Х И У работает так, если Х тру, тогда интерпретатор идет к У и проверяет его, если У тру, тогда тру, если У фолс, тогда возвращает У, ежели Х фолс, тогда И дальше не должно проверять второе условие и возвращает Х. Разве не так?
if ([]) попробуй
Тебе нужно проходить по всем текстовым нодам и менять их. innerText нестандартен и с ним так не работают. Гугли "get all text nodes javascript".
>>647814
При обычном сравнении для стандартного массива вызывается toString -> пустая строка == false. Без сравнения проверяется, эхм, наличие объекта.
Ну, чтоб человеком быть.
Стоп блядь, а почему у меня в огнелисе не работает? В хромиуме вроде пашет, а в лисе нет. Как правильно лисе сказать?
https://developer.mozilla.org/ru/docs/Web/API/Node/innerText
https://developer.mozilla.org/ru/docs/Web/API/Node/textContent
innerText не стандарт
'use strict' - все дела, но вот анон выше >>647492
оказался прав, оказывается, если пустой массив просто проверять в ифе, то он дает тру(типа существует, значит тру), а вот если с ТРУ сравнить, тогда выдаст фолс. Вот такой вот поворот. Честно говоря я не ожидал такого, знакомый разраб с опытом около 8 лет сам охуел, когдая я ему показал, лол.
Посмотрел как работает PhantomJS (правда там в связке с CasperJS) - то, что нужно, но это можно использовать только на десктопе, в мобильное приложение я не нашел как подключить.
Пытался XMLHttpRequest - оказывается нужно чтобы на сервере, с которого запрашиваются данные (или на который отправляются), в заголовке (Response Header) стояло что-то типа разрешения, а у меня естественно нет доступа к сайту.
Неужели это невозможно? Отказываюсь верить!
>>643475 - кун
Если коммерческая разработка и нужно парсить промышленными масштабами, лучше воспользоваться услугами PhantomJSCloud. Рилли. Скрипт будет исполняться на сервере, а твое участие сведется к минимуму - спарсить с PhantomJSCloud уже полученные результаты.
---
Я не знаю, как там в мире винфонов, но должны быть еще headless браузеры и вебдрайверы к ним.
Не, задача с универа.
Ок, погуглю еще хедлес для винфона.
А вообще эти хедлес браузеры существуют как библиотеки, которые можно использовать на своих сайтах? Ну как например я подключаю jQuery в src и пользуюсь.
Поясни!?
Там в инструкции по установке сказано в node.js вбить "npm install material-ui"
В общем, сложность вот в чем.
Я скачал и установил ноду, создал папку для неё в документах, перешел туда с помощью командной строки. Запустил установку, файлы в папке действительно появились. До сих пор я же все правильно делал? После, код из примера скопировал в js-файл проекта, где я хочу использовать данный ui. И ничего не произошло. Может это из-за jQuery? Или папка material-ui должна находиться в папке с проектом? Но, как я понял из инструкции, это не нужно.
Ясно. Эта вроде работает.
Только если я делаю так
document.querySelector("body").textContent = document.querySelector("body").textContent.replace('1', '1');
, то разметка не игнорируется, она проёбывается, просто удаляется, разметка тупо исчезает из тега body, остаётся только текст. Как это пофиксить? Я заебался блядь, полностью заебался.
Не заметил. Погуглю.
Ок, тебе нужен первый результат - первый ответ на стаковерфлоу - второй снипет. http://stackoverflow.com/a/10730777/4867787
В переменной n будет нод, у него innerHTML будет содержать только текст.
Прошу прощения, не innerHTML, а textContent.
Не осилил.
Анончик, не забывай, что разговариваешь с полным нубом. Объясни немного тупее, шоб до меня дошло.
Никаким. Я до сих пор из библиотек только jQuery и bootstrap ставил, там такого не требовалось.
Не вижу приложенных усилий на твоем пике.
createTreeWalker(родитель, что-отдавать, ...) - апи браузера отдает все нужные ноды, можешь особо в него не углубляться.
walk.nextNode() по очереди их отдает.
Два текстовых нода - <span>один<b>два</span>.
> Не вижу приложенных усилий на твоем пике.
А, не, вижу, но эт что-то ты вообще не в ту степь.
Я на самом деле сделал довольно много попыток, пусть и глупых, но как-то не пошло.
В любом случае спасибо тебе, Анончик. Хоть и производительность немного проебалась, но работает как часы, и это главное. Добра.
Можно значительно оптимизировать не заменяя строки где нет вхождений. Удачи тебе тоже.
Ну их два - inner Text и inner Html. Одно возвращает только текст, другое всю разметку.
да, уши или подбородок. можно попробовать убрать фоточку из резюме. или этот анон просто слишком хорош
Ты пиздишь, потому что.
Платформу для обсуждения в стиле хабры.
CMS с максимальной кастомизацией.
Собственную базу данных.
Попробуй чат по типу телеграма, с регистрацией, созданием групп, всей херней.
Или вот например приложуху, где можно гитарные табы делать онлайн, типо гитар про, только в браузере.
Или фэнтези футбол приложуху, главное чтобы с реальными данными работало.
И что это даст? И да, я jQwery не юзал здесь.
На продакшене такое сделать нереально, если у тебя нету доступа к серверу и ты не можешь изменить заголовки.
Если просто потестить, то гугли CORS запросы как делать.
Бляя, это очень очень грустно! Потестить всм на десктопе? Тогда уже не надо. Да и не получились у меня эти корс запросы. Нет ответа от сервера и все.
Уже глядел Кантора и делал сервис на хероке с монгой и оаус-авторизацией.
Ты же на телефоне это парсишь, в приложении? Там же встроенный браузер есть с имитацией запросов, зачем ажакс?
Можно использовать стек MEAN для разработки сервиса по безопасному обмену файлами. Я знаю, что на первый взгляд звучит тривиально, но!
Суть в следующем - твой сервис - прокладка, на самом деле не размещает загруженных пользователями файлов (по крайней мере, на продолжительной основе), а использует для этих целей различные фотохранилища. Эдакая стеганография.
В интерфейсе пользователю предлагается выбрать два файла - изображение и любой бинарник (полезная нагрузка). После сабмита, твой сервис кодирует бинарник в BASE64/UUE/XXE и херачит полученный выход в EXIF теги изображения (при необходимости, размножая исходное изображение, если на выходе кодированный файл слишком большой) и загружает на фотохостинги, сохраняя информацию о кодированном файле (CRC и проч.) в БД.
По успешном окончании операции пользователю отдается линклист, который позже можно использовать на твоем сервисе для декодирования и получения исходного бинарника.
Не буду утверждать, что фотохостинги не палят левую информацию в EXIF, но думаю найдется пара-тройка хранилищ, где по-прежнему можно проделать такой трюк.
В качестве 'proof-of-concept' материала можно использовать доклад Антуана Санто 'Embeddinghidden files in jpeg images'.
Думаю, такой дипломный проект понравится твоему руководителю.
>оказывается нужно чтобы на сервере, с которого запрашиваются данные ... стояло что-то типа разрешения
Попробуй проксифицировать XHR запросы через CORS-прокси, дабы преодолеть анальные ограничения. Мне в свое время помогало.
Нетривиальная штука выходит
Я наверно немного неправильно сформулировал.
Дело в том, что при таком написании "/[123][-][321]/", примером, "13-23" - ищется, но "1323" уже не ищется. Мне нужно сделать так, что бы "13-23" и "1323" виделись регуляркой. Надеюсь понятно описал.
Пробовал и с телефона и с компа.
По части браузера да, я вчера вечером подумал об этом способе. Правда это придется тогда на c# делать, ибо элемент <browser> там точно есть, а вот в JS+HTML проекте не нашел.
Это охуенно!
/[123][-?][321]/ ?
Для каких целей цифры во второй группе перевернуты? Твое выражение ищет "одна цифра, знак минуса, одна цифра".
Для 13-23 и 1323 нужно [123]{2}-?[123]{2}.
P.S. Объясните как будет правильно писать ковычки? " или ' ? Или без разницы?
Консоль.лог, собственно, выводит инфу в консоль, так что да.
В js разницы между кавычками нет. Я использую одинарные, потому что шифт не нужен, а в хтмле двойные (т.к. более распространено). Главное быть последовательным и если вливаешься в другой проект придерживаться уже существующего там стиля.
а на первом скриншоте, учитель ради экономии времени значит не прописывает консоль.лог?
На твоей картинке он заранее в комментарии указывает (// ...) что записывается в переменную, так что да.
>js разницы между кавычками нет
Но стиля лучше таки придерживаться. Например, джиквери код стайл.
Можно подробнее? Вот у меня есть в проекте три документа: index.html, style.css и script.js. Есть папка с material ui. И есть код с примерами вот здесь: http://www.material-ui.com/#/components/app-bar
Так вот, что куда вставлять?
Не пинайте сильно за глупые вопросы, плиз. Или пинайте, но объясните:3
Если ты пишешь не на реакте, или не знаешь что это такое, тебе нужно найти другую материалюи-либу
Действительно, не пишу и не знаю.
> другую материалюи-либу
А такие есть?
> реакт
Можешь прояснить, что это, как долго и сложно ли осваивать, и нужно ли это ньюфагу?
Материал-юай это модуль/либа для реакта, реализующая материал дизайн. Если тебе просто нужен материал дизайн, то быстрое гугление даст что-то вроде:
http://www.sitepoint.com/top-5-material-design-frameworks-use-2015/
Там есть типа твиттер бутсрап аналоги.
Реакт это фреймворк - нужен чтобы не писать многие моменты дизайна+логики самому, как jQuery, только привносит свою архитектуру в твой код и дает возможность не работать напрямую с хтмлем. Реакт добавляет некоторые моменты в javascript (посмотри на главной сайта реакта табы сравнения), поэтому код на реакте (.jsx) перегоняют в обычный .js используя nodejs. Про долго/сложно не умею определять.
другой-анон
Риакт не принуждает ни к какой архитектуре, он только про отрисовку и обновление при апдейте состояния.
https://github.com/vladimir37/hanako/
Ну ок, всего одно приложение на нем писал, но в моей голове он ближе к фреймворку, хоть и не полному.
Отлично, загляну под капот, если ты понимаешь, о чем я.
Потому что каунтеры - переменные во внешней области видимости.
Коробки - это функции, кошки - это переменные. Кошка во внутрей коробке рожает котят и умирает, те в свою очередь рожают ещё котят и тоже умирают, но кошка в общей коробке как сидела, так и сидит.
Функция makeCounter возвращает другую функцию (назовем её функция-2). Не результат функции-2, а именно сам код, который потом нужно запустить. Каждый раз при запуске makeCounter возвращается новая порция кода, никак не связанная с прошлым запуском.
Этот код сохраняется в переменной counter или counter2.
При этом переменная currentCount не уничтожается после выполнения функции makeCounter, т.к. на неё ссылается функция-2, а сама функция-2 у нас лежит в итоге в переменных counter или counter2.
Затем при запуске counter или counter2, которые по сути являются копиями функции2 (независимыми от друг друга), нам возвращается текущий результат переменной currentCount.
Надеюсь чуть-чуть понятно объяснил. А может и нет. На самом деле это очень простой концепт, надо просто чтобы что-то щелкнуло в голове и всё.
Мне кажется, это монада Either c монадой Maybe внутри
Жалко котят:(
Нет, не так.
В переменную counter ты получаешь код функции-2, который уже при запуске именно counter() вернёт тебе текущий currentCount.
Но при каждом последующем запуске counter(), твоя функция (по сути функция-2, но только как бы в оболочке переменной counter), смотрит на переменную currentCount, которая была создана при запуске makeCounter, и не уничтожилась в последствии, т.к. у тебя в твоей переменной counter теперь лежит другая функция (функция-2), которая ссылается на этот makeCounter.
Каждый раз makeCounter создаёт новую "оболочку", в которую в последствии смотрит counter (или по сути функция-2).
Хз, возможно я тебя тоже только больше путаю. Тут самое главное понять, что makeCounter возвращает другую функцию, которую можно выполнить, а не уже какой-то результат, и оболочка этой другой функции не уничтожается, а остается доступной для неё.
Ты меня не путаешь, я даже логику ощущаю, но уловить не могу - понять какие метаморфозы с кодом функций происходят.
P.S. Шапку читал, но все же интересно услышать каких-нибудь советов. Не закидывайте камнями и гавном. Так же интересует, как правильно учить по http://learn.javascript.ru/ . После того как прочитаю раздел, когда переходить к новому? Когда будет от зубов отскакивать тот который я прочитал только что?
Зазубривать не нужно. Выучил 50% и хорош.
>Мне твой ответ ничего не дал.
Досадно чет, лол, однако отладчик содержал ответ на твой вопрос.
Однако, не стоит, на мой взгляд, упрощенно объяснять некоторые понятие - это только породит больше заблуждений и неясностей.
Оперировать будем сущностями языка - scope (область видимости).
Так вот, стоит запомнить, если функция возвращает функцию (как в примере с твоими счетчиками makeCounter возвращает анонимную функцию), то дочерней функцией передается область видимости материнской.
Тут стоит отдельно подчеркнуть, что после выполнения инструкции var counter = makeCounter(); в counter передается та самая анонимная функция из makeCounter, причем вместе с областью видимости!
Поскольку в материнской функции была объявлена переменная currentCount, при последующих вызовах дочерней (а в нашем случае дочерняя функция передана в counter) эта переменная изменяется, накапливая значение. Теперь немного понятней стало?
На стаке разбирали идентичный твоему пример:
https://stackoverflow.com/questions/8487768/returning-functions-in-javascript-understanding-scope-closures
Полезно читнуть также о различиях в понятиях 'контекст' и 'область видимости':
http://ryanmorr.com/understanding-scope-and-context-in-javascript/
---
>>649517
>Выходит с возвращенным кодом функции-2 код выглядит так?
Нет. Но посмотреть исходный код функции ты можешь в консоли, обратив функцию в строку: function.toString()
>>649442
Еще на MDN есть хорошая шпаргалка по областям видимости, контекстам и вызовам функций:
https://developer.mozilla.org/en-US/docs/Archive/Web/Scope_Cheatsheet
Всецело на нее полагаться не стоит, разумеется, поскольку есть вещи не стандартизованные в ECMA.
У тебя дважды "однако" очень близко друг к другу.
var firstTerm = 0
var secondTerm = 1;
var nextTerm = 0;
var sumOfEvenTerms = 0;
while (nextTerm < 4000000) {
nextTerm = firstTerm + secondTerm;
firstTerm = secondTerm;
secondTerm = nextTerm;
if (nextTerm % 2 === 0) {
sumOfEvenTerms += nextTerm;
}
}
Пробегаешь глазами по джс.лерну и начинаешь пилить что-нибудь, когда не знаешь как или что делать заглядываешь в туториал и на стаковер. Только так. Я год-полтора "учил", но пока не начал писать код все это хуйня была.
как начал писать код сразу пошли результаты? Туториал я так понял это леарнджс, а стаковер это где такое?
var a = 1;
a += 5 // => 6 (эквивалент a = a + 5)
a =+ 100 // => 100 (эквивалент a = (+100) или просто a = 100, нутыпонял)
В общем "=+" я не видел, чтобы кто-то писал.
Понял тебя.
>где можно гитарные табы делать онлайн, типо гитар про, только в браузере.
Табы в .gp формате? Это же пиздец на JS писать или я совсем ньюфаг? На том же songsterr всё на флеше работает.
Хз, я по книге Флэнагана учился, иногда что-то запускал. Только потом для себя начал писать.
Потсоны, дали тестовое задание на джангу и фронтэнд и вот с последним у меня туго. Вот отрывок:
3) Также приложение должно отображать статусы с соответствующими им
Задачами, как показано на макете ниже (см. пикрилейтед);
3.1) На этой странице должны быть отображены все задачи и все статусы,
соответственно.
Изменение статусов задач в приложении:
4) Статус задачи должен меняться drag-and-drop'ом. Задачи из области одного
статуса в другой;
4.1) К примеру, перетащить мышкой задачу "task1" из статуса "status1" в "status3".
5) Если один пользователей меняет статус задачи, то статус той же задачи
должен моментально измениться на уже открытой странице другого
пользователя;
5.1) обновление статуса задачи не должно сопровождаться полной
перезагрузкой страницы, а только манипуляциями ее отдельными DOM-
элементами.
Собственно вопрос как это реализовать. Так знаю жиквери и недавно начал изучать ангуляр. Особенно меня интересует 5й пункт - как реализовать общение браузера с сервером в таком случае?
В фоне запрашивай информацию с сервера.
При изменении на стороне клиента - отправляй на сервер.
При изменении информации полученной от сервера - перерисовывай UI каким там ты пользуешься фреймворком.
Используй вебсокеты, хотя можешь лонг поллингом обойтись тащемта.
Забегайте в уютную конфочку в телеге:
https://telegram.me/joinchat/AFkjiQbZ-ih1sNDznEmoxQ
https://jsfiddle.net/xr3sc78g/
Задача стандартная.
Есть ajax фильтр по параметрам(форма с чекбоксами, полями и прочее). После наложения фильтра, отображаются записи. При клике на любую запись, переход на эту запись. В этой записи должна быть кнопка НАЗАД, которая возвращает обратно на страницу фильтра с уже ранее выбранными параметрами. Как это реализовать? Голову сломал уже. Вроде есть history API, но как это применить к моему примеру не нашел. Есть библиотеки jquery, но тоже не понимаю, как их применить.
Устроит даже тупо при нажатии кнопки фильтровать (аjax вызова) формирование урла в строке браузера
вроде http://site.ru?hui=4,5,7&pizda=000, то есть в гет параметрах будут сохранятся данные из инпутов форме, и потом по этому урл http://site.ru?hui=4,5,7&pizda=000 можно воспроизвести страницу с наложенными фильтрами?
Есть какой-нибудь нормальный мануал от а до я по этой теме, можно на англ. В инете все кусками, с jquery не особу дружу.
Это копия, сохраненная 28 февраля 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.