Ссылка на прошлый тред: >>640565 (OP)Этот тред посвящён главному языку будущего - 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, Unity), 3D графика (Three.js, Babylon.js), мобильная разработка (NativeScript, Phonegap, Ionic), десктопная разработка (NW.js, WinJS).3. Можно выучить только jQuery и всё писать на нём? - Не стоит, лучше начать писать на jQuery, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и в будущем не испытывать трудностей с изучением сложных фреймворков.4. Существуют ли стайл-гайды для JavaScript? - Да. Стайл-гайд для Node.js: https://github.com/felixge/node-style-guide , стайл-гайд для Front-end: http://www.w3schools.com/js/js_conventions.asp5. Какие новые возможности добавил ES6? - Вот здесь можно почитать на русском: https://learn.javascript.ru/es-modern6. Зачем нужны CoffeeScript и TypeScript? - Это особые варанты JS для любителей других языков. CoffeeScript подходит для любителей Ruby и Python, TypeScript - для сторонников строготипизированных языков. Если ты новичок, то учи оригинал и не забивай себе голову этим.7. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.Чистый 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.jshttp://node-center.ru - собрание информации по Node.js. Особенно интересен раздел со ссылками и книгами.Бложики и новостные ленты:http://dailyjs.com/ - DailyJShttp://weblog.bocoup.com/ - Bocoup Webloghttp://perfectionkills.com/ - Perfection Killshttp://www.reddit.com/r/javascript - subreddit на reddit.comhttp://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/СПИСОК ИНСТРУМЕНТОВ ДЛЯ РАЗЛИЧНЫХ ЦЕЛЕЙFront-end: jQuery, Angular, React, Backbone, Meteor.Back-end: Node.js, Express, Sails, Socket.io.Десктопные приложения: NW.js, WinJS.Мобильные приложения: Cordova, NativeScript, Phonegap, Ionic.GameDev: Phaser, Cocos, Pixi, Unity.Тестирование: Mocha, Chai, Jasmin, Sinon.Continuous Integration: Semaphore, Shippable.
Шапка: http://pastebin.com/n1a6uYqb
Эмм, вкатился?
>>650290Не знаю?
Есть вопрос к бывалым ангуларобогам. Сам я нуб ебаный - запилил на ангуларе тествое задание. Больше я его не трогал. Да и вообще недавно относительно в веб вкатился. Мало что знаю во фронтенде.Тут мне внезапно прилетает предложение с конторы, которая иногда подгоняет халтурки (не основная работа): - Можешь в AngularJS ?- Почти не работал, но могу попробовать- Отлично. Нам тут нужно перехуячить легасисайт на ангулар.- Ок, давайте.Я то думал, что меня кинут в команду фронтэндщиков, а оказалось, что нас двое - я на фронтенде и чувак на бэке. Дали нам репозиторий с сайтом, а там дохуя всего уже. Обосрался знатно, но подумал, что похуй. Постараюсь осилить.Кароче курочить то, что уже есть, я не стал. А запилил свой ламповый репозиторий, в котором с нуля ебашу сайт (изучая фронтэнд, хотя сроки жмут), юзая готовые стили, ресурсы и верстку. Проблема еще в том, что сайт на пыхе, которую я не осилил поднять. В своем репозитории поднял сайт на iis, хуярю из VS.Из этого вытекает проблема, что я ебашу в своем репозитории, потом перекидываю целиком папку в их репозиторий. Все правильно делаю? Или есть более грамотные способы такой работы?
>>650348А зачем им на ангуляр надо перенести сайт? Я так, любопытствую. Мимо-не-люблю-ангуляр
>>650371А что ещё есть среди MVC-фреймворков, которые не загнутся в течении хотя бы нескольких лет, и у которых есть большое сообщество и модульная база?
>>650348> Из этого вытекает проблема, что я ебашу в своем репозитории, потом перекидываю целиком папку в их репозиторий. Все правильно делаю?Нахуя в таком случае вообще репозиторий тебе? Нужно мёржить, а не просто папку кидать
>>650348Всегда проигрываю с этих модных сайтов, где фронт на ангуларе/реакте, а бэк на пыхе. Выглядит как пикрилейтед.
>>650381Очевидный реакт.
>>650402Полностью сосет у второго ангуляра и пропадет так же внезапно, как и появился.Да и вообще меня вот такое говно до дрожи пугает, даже не говоря уже про эстетику такого подхода. Вы что, ебанутые? Как более-менее большой проект может быть написан в подобном стиле?[CODE]import React from 'react';class NewsList extends React.Component { getDataFromServer() { return [ {id: 1, title: 'News item #1', snippet: 'Lorem ipsum dolor sit amet'}, {id: 2, title: 'News item #2', snippet: 'Lorem ipsum dolor sit amet'} ]; } renderItem(item) { return ( <article key={item.id}> <h2>{item.title}</h2> <p>{item.snippet}</p> </article> ); } render() { let items = this.getDataFromServer().map(this.renderItem); return ( <div>{items}</div> ); }}export default NewsList;[/CODE]
>>650381А вопрос немного не о том. Зачем работающий сайт перепиливать на другую технологию, если он и до моды на всякие моделивьюхиконтроллеры работали? Что за сайт кстати? Инфо портал?
>>650410Лол. Эти кукареки со стороны ангуляра, который, признавши обосрамс первого, было решено полностью переписать.
>>650383Сайт на пыхе. Я привык ебошить на iis и мне так удобней. Создал солюшн в VS, в нем накидываю сайт. Потом после окончания таска, перекидываю все, что не относится к инфраструктуре дотнета и студии.
>>650410А нахуя ты мешаешь разметку и код? Ты что, ебанутый? Для кого импорт файлов сделали?>пропадет так же внезапно, как и появилсяСомневаюсь.
Всем доброго вечера! Прошу помощи.Хочу состряпать расширение для хрома, но мне не хватает понимания/знания некоторых вещей. А именно:1. Как правильно юзерскрипты должны хранить настройки/текстовую инфу? Чтобы читать/писать их можно было находясь в любом домене.2. Возможен ли вообще доступ к ФС? Судя по поискам, вроде нет.3. Возможно ли по событию, инициировать, как бы загрузку файла? То есть скрипт генерит файл, а потом по клику етц, браузер его загружает в папку загрузок.4. Как организованы органы управления, которые видно всегда на странице? Как у куклы, например.Естественно уже пытался гуглить, но даже искабельный запрос не получается сделать.
>>650433> СомневаюсьНе сомневайся
>>650493Алсо, второй ангуляр ещё даже не релизнулся, и в продакшене его нет
>>650493Тащемта быстрый рост практически всегда ведёт к быстрому падению. Плавное повышение гораздо долгосрочнее. Посмотри на раби - был резкий скачок, все рекорды по популярности, а потом резкое падение и где он сейчас?
>>650500>>650493Ну вот когда релизнется, тогда и поговорим.Там не так много нового, на самом деле, поэтому когда люди поймут, что нихуя принципиально не изменилось, и снова нужно учить всякую ненужную хуйню типо #const *ngFor и прочее говно, то и хайп пройдёт.
>>650433Тащемта это не разметка, а dsl для создания элементов vdom'a. Если это говно писать на Typescript или Scala, будет компайлтайм проверка валидности тегов и аттрибутов, чего в ангуларе не будет никогда.
>>650400Что тебе в пыхе не нравится?
Ниже приведен пример. Нужно вызвать переменную a в funArt, но вот проблема, она undefined. Знаю причину, но хотелось бы иметь возможность исправить подобное поведение.https://jsbin.com/yesezeluwa/edit?html,js,output HTML5---------<button type="button" onclick="funcArt()">JS-----------function funcName () { var a = "Sometimes text";};function funcArt () { alert(a);};
>>650906Лел, так она глобавльная или внутри функции?
>>650906var a;function funcName () {a = "Sometimes text";};function funcArt () {alert(a);};
Господа, я снова выхожу на связь с вопросом о дизайне кода.У меня есть приложение, в котором присутствуют условно два модуля. В соответствии с принципами проектирования, каждый модуль изолирован от другого и выполняет только одну задачу и ничего не возвращает, тащемта. И есть главный модуль, условно - app starter, который отвечает за выполнение в определенной последовательности этих двух модулей.Так вот, нужно, чтобы 'app starter' получал состояние выполнения каждого из этих модулей и, по запросу, возвращал пользователю.---Будет ли корректно выглядеть такой код:https://jsbin.com/tepizu/2/edit?js,consoleВ 'app starter' объявляется общий объект данных и передается в инициализаторы модулей. По мере выполнения набора инструкций каждый модуль пишет в переданную ссылку на объект статус.Это грязный трюк, лол, или норма?
Аноны, я перекатился к вам из (а точнее, параллельно / дополнительно) пейтона. UI я там писал в киви, и процесс был для меня крайне приятен. Целую неделю (!) разбираюсь с js. Прочитал основы js, jquery и bootstrap. Написав пару аппов, пришел к пониманию, что я делаю что-то не так, ведь на js пишут все и всем (?) нравится, а я после пары строчек чувствую себя словно только что покопался в навозе. Долго думал, пришел к двум выводам: 1) Код на js выглядит ужасающе, но я понимаю, что я только начал – может, проблема в этом. Смотрел на coffeescript и проч. – мило, но еще один слой над js, к которому нужно привыкнуть. Не знаю, стоит ли. 2) Структура приложения – точнее, её отсутствие. Также отчасти из-за отсутствия опыта. Погуглил; вероятно, мне нужен angular или аналоги. Просветите за аналоги (reactjs+flux, meteor, ember, backbone, angular2).
>>651012>перекатился к вам из пейтона>после пары строчек чувствую себя словно только что покопался в навозеЧто тебя заставило почувствовать такой контраст?Просто интересно, за что каждый ренегат старается поносить JS, при этом, не озвучивая причины такого поведения.
>>650492И тебе доброго утра!1. В грисманки/темперманки юзерскриптах это делается с помощью GM_setValue/getValue, в экстеншенах что-то типо chrome.storage.sync.set/get(), но я настоящие расширения писал давно и только под лису, так что говорить могу только за обычные юзерскрипты.2. Обычные юзерскрипты не умеют, для экстеншенов гугли "%browsername% extensions file system access".3. По "javascript generate and download file" говорят вполне возможно, хотя на вид костыльно.4. Хтмель скрипта вставляется прямо в хтмель страницы. Для "видно всегда" выставляется большой z-index и position: fixed/absolute. Еще вид поднастраивается для каждого отдельного сайта, т.к. часто возникнут конфликты, где сайт задаст общее css правило которое распространится на твои элементы или что подобное.
>>651032>грисманки/темперманки юзерскриптах это делается с помощью GM_setValue/getValueЯ всегда настройки записывал в куки, так как не знал, каким образом применять настройки для всех страниц, которые будут открываться в последствии, спасибо.А выставлять настройки как? GM_config спрашивает настройки каждый раз, когда я захожу на страницу, для которой работает юзерскрипт.
>>651043Имею в виду выставлять настройки не в коде, а мышкой на странице. Я создавал с помощью menuitem дополнительные опции в контекстном меню, нажатие на которые изменяло настройки.
>>651043Про GM_config без понятия, не пользовался.>>651048Мне стандартные средства не особо нравятся, я обычно настройки показывал внутри своих хтмлей. Но если у тебя их мало или скрипт почти не гуевый, то и они сгодятся.
Забегайте в уютную конфочку в телеге:https://telegram.me/joinchat/AFkjiQbZ-ih1sNDznEmoxQ
>>651020Анон, но ведь я описал это в целых двух пунктах, при этом в каждом указал, что по меньшей мере часть вины на мне. На js я пишу плохо, но мой русский вполне читаем. Так что имел смысл дочитать пост, анон, или не отвечать; впрочем, настрой возможных ответов мне уже ясен.
>>651012JS влевый, не пизди. Пишу на питоне, js, крестах и еще штуках на 5 разной муйни. Кофе не трож, иначе так и не научишься. За архитектурой смотри todomvc на разный фреймворках (поновее).
>>651085Ты просишь порекомендовать тебе инструменты, но не поясняешь, для каких целей, не конкретизируешь критерии.Если ты собрался пилить клиент-сайд с упором на UI, то тебе вполне хватит связки из любого CSS фреймворка и, скажем, RactiveJS для двустороннего биндинга данных и вида.
>>650907Внутри функции. Но хотелось использовать ее глобально
>>651142Ты какой-то странный.
>>651142Ты же даже функцию определяющую эту переменную не вызвал, ёба! Явно делай window.a = 'text' или неявно без var, но это некрасиво.
>>650939Ивенты и колбэки попробуй
>>651209>Ивенты и колбэки попробуйБеда в том, что у меня эти два модуля написаны на промисах.Или мешать промисы с колбэками это комильфо?
>>651225Нет.
>>651229Ну вот возьмем тогда ивенты. Они триггерятся у меня в модулях, к примеру, выполняя действия внутри промисов. С этим понятно. Но чтобы передать статус выполнения этих действий пользователю, необходимо точно так же передать на вход модуля что-то - будь то объект, массив etc. коллбэки мы отсеклиИспользовать ссылку на объект при инициализации модулей совсем плохо, да? Меня просто привлекло свойство объекта, позволяющего передавать ссылку на него. Следовательно, нет необходимости возвращать что-либо из функций и, соответственно, все функции-обладатели ссылки на объект шарят те же данные.
>>651249Они слишком много так данных шарят. Может глобальный ивент диспатчер сделать и сабскрайб/паблиш у него. Ну или нет.
>>651265Понял, анон, тебя.Создать в модуле-стартере 'app-start' лиснер и передать его в дочерние модули.В дочерних модулях привязать его к изменяемым данным.А если управлятор через веб работает, то отдавать данные можно будет их по мере готовности после лонг полл реквеста.Спасибо, анон!
Антоши, дайте какой-нибудь гайд по реализации чата между двумя пользователями на ангуляре. Вообще не знаю как подступиться к задаче.
Подскажите, как реализовать интерфейс игры морской бой на js?Поле 10х10, на нем по клику размещаются корабли. ПКМ - корабль удаляется, ЛКМ - переворачивается.Мне не готовый код, а хотя бы что изучить, на что обратить внимание.
>>651503Двухмерный массив 10х10, хтмл отображает этот массив в человекопонятной форме.
пацаны, какой фраемворк на ноде взять, чтобы все было удобно? Типо django
>>651530Нода уже не фреймворк?
>>651539Конечно нет, собирать самому все модули для каждого пердежа, типо общение с базой это прошлый век
>>651530Экспресс похож на джанго, хотя некоторые вещи типа URL роутера придется создать. Sails похож на рельсы.
>>651539И никогда им не была. Нода - это программная платформа.
>>651543>типо общение с базой Поставь ОРМ.
>>651547Вот экспресс прям совсем не зашел:( Чуть не помер
>>651550Тогда тебе Sails - то что нужно.
>>651557Спасибо!
>>651547>Экспресс похож на джангоОхуенные истории ИТТ.
>>651557Удваиваю. После пыхи замалафился от него.
>>650323Да.
Делаю обмен всех данных на сокетах вместо ajax, даже формы через сокеты отправляются. Какие подводные?
>>651937Забудешь закрыть где нибудь сокет и сам себя задудосишь
>>651956О чем ты? Сокет-соединение всегда открыто
>>651509Спасибо, гений-"Как создать ААА mmorpg?"-"Да просто, пишешь качественный движок, нормальные модельки, текстуры. Вот и все. Не забудь о пиаре"
>>651962Вместо отрицания лучше спросил как удобнее отобразить массив на страницу.
что скажите про курсы попова javascript
>>652039Он там опять в цикле ажаксом данные получает?
Рейт ми:https://jsfiddle.net/hamx3yew/шрифты говно
>>652139Разве после результата вычисления по нажатию на любую другую цифру, результат не должен меняться на выбранную цифру?
Аноны, есть несколько вопросов про богоподобный Node.js.1) Есть ли в ноде что-то схожее с тыртырпрайзом в Java? Пытаются ли её сделать стандартом для корпоративной разработки? Пока смог нагуглить только strongloop.2) Покажите образцовый репозиторий и/или мануал как правильно разбивать структуру бекенда на файлы, пока что пишу всё в одном основном файле и это - пиздец.3) Покажите годный мануал по таск раннерам (системы сборки?) типо gulp/grunt. Пока вообще не понимаю зачем и где их используют.
>>652147> Есть ли в ноде что-то схожее с тыртырпрайзом в Java? Пытаются ли её сделать стандартом для корпоративной разработки? > Пока смог нагуглить только strongloop.Да, это strongloop> Покажите образцовый репозиторий и/или мануал как правильно разбивать структуру бекенда на файлы, пока что пишу всё в одном основном файле и это - пиздец.Ты на экспрессе пишешь? Дели сам проект на модули и раскидывай по папкам или бери фреймворки. Скажи свою задачу, я накидаю какие фреймворки лучше всего подходят.> Покажите годный мануал по таск раннерам (системы сборки?) типо gulp/grunt.Сейчас в тренде webbackТуториал: http://webpack.github.io/docs/tutorials/getting-started/Скринкаст: https://www.youtube.com/playlist?list=PLDyvV36pndZHfBThhg4Z0822EEG9VGenn> Пока вообще не понимаю зачем и где их используют.Чтобы собирать кучу файлов, которые ты раскидал по папкам в один app.min.js
>>652154> webbackwebpack
>>652143Должен :3https://jsfiddle.net/hamx3yew/1/
>>651937Будет много юзеров - памяти не хватит на сокеты.
>>652154Спасибо. Ссылки записал, вечером посмотрю что там. Пилю на express пока, да. Не знаю как точно описать задачу, да и проект уже дописан, я скорее собираю инфу на будущее. Какие преимущества у express? А есть пример разделения проекта на модули на гите где-нибудь?
>>652177Если на express пишешь, можешь взять божественный http://sails.io/ , это надстройка на express'ом с кучей плюшек и архитектурой искаробки> Какие преимущества у express? Самый развивающийся фреймворк с огромный коммьюнити> А есть пример разделения проекта на модули на гите где-нибудь?Да любой express-проект на гитхабеВот, например https://github.com/madhums/node-express-mongoose-demo
>>65217510к коннектов - это 100 мегабайт
>>652183От души.
>>652183>это надстройка на express'омТы ебанутый? Это такой же фрейм, как экспресс, а никакая не надстройка.
>>652260> Sails is built on Node.js, uses Express for handling HTTP requests...
>>651265>Может глобальный ивент диспатчер сделать и сабскрайб/паблиш у него. Ну или нет.Нашел watch.js Надо будет попробовать заюзать его, похоже на то, что нужно.Но если серьезно браться за дело, разумнее таки будет взяться за 'harmony proxy'.
Какой фреимворк использовать для тестирования ноды с последующей очисткой базы? Встроенный в Django после себя сразу очищал базу, удаляя всё созданное во время тестирования. Есть такой на ноду или нужно всё вручную вычищать?
Подскажите, что выбрать для решения подобной задачи. Есть файл, json, к примеру, в котором указаны пары ключ-значение. Будет одна HTML-страница, в которой один input. По мере того, как я ввожу что-то в input, выводятся результаты по ключам (из файла). Например, ввёл "a", отобразились все значения ключей, начинающихся на "a". Ввёл "ab", запрос уточнился, результатов стало меньше. Подозреваю, что такие задачи очень просты для реализации на каких-нибудь фреймворках. Куда копать?
Други, подкиньте названия функций для работы с буфером обмена.
>>652590Спасибо, что позволил погуглить за тебя.http://jsfiddle.net/4wZ2L/8/
>>652177в гит репо экспресса есть папка с примерами, пример с разделением на модули там тоже есть
>>652597Глянь сюда: https://github.com/zenorocha/clipboard.js
>>652624Спасибо, брат!
>>652590http://wsnippets.com/live-search-with-json-and-jquery/
>>652638>>652618Не знал, что так просто гуглится, спасибо. Извиняюсь, за беспокойство по пустякам.
Аноны, подксажите, как в стрикт моде получить имя функции изнутри функции? arguments.callee.name не катит. Только вызывая другую функцию, которая обнаружит caller'а?Нужно для логгирования, скопировать/вставить однотипный код во все функции...
>>650905Ну типа в зекаче сказали, что пхп говно, а не 95% пхп-кодеров.
>>650905http://habrahabr.ru/post/142140/>>652647arguments.callee.toString().match(/function ([^\(]+)/)[1]
Аноны, скажите, подойдет ли JS для изучения в качестве первого языка? Одно НО, в идеале хотелось бы заниматься бэкенд-разработкой, а в интернетах пишут, что Node.js срань и вообще не очень перспективно.
>>652673> Аноны, скажите, подойдет ли JS для изучения в качестве первого языка?Программирование надо научинать учить с дроча алгоритмов, а не выбора языка > а в интернетах пишут, что Node.js срань и вообще не очень перспективноТопуп кекус. Больше доверяй даунам в интернетах, пикрел
>>652677>Программирование надо научинать учить с дроча алгоритмов, а не выбора языкаПланирую учить язык / дрочить алгоритмы одновременно. Или это мертвый путь?>пикрелПроблема в том, что в моем миллионнике работа на JS связана только с фронтендом, в двух вакансиях с node.js требует ультрасиниоров с пятью годами опыта.
Антошки, помогите сделать функцию:Делаю CRUD, есть REST сервер, web на ангуляре, задача в том что мне на сервер нужно послать json объект в котором содержится массив других объектов, но сейчас посылается не массив а только один объект.Вот код: <script src="http://ideone.com/e.js/AmkaPo" type="text/javascript" ></script> Там кусок хтмл и контроллер.Суть в том что это раскрывающийся список и по клику на элементе списка он добавляет мне в свойства объекта ОДНОГО пользователя из списка, а мне надо чтобы по клику он мог добавлять их несколько в массив.Я скопировал и контроллер на всякий случай, просто плохо разбираюсь в ангуляре, хз как это реализовать.Помогите пожалуйста.
>>652809Может нужно добавить атрибут multiple в select?
>>652840Ты уверен? У меня просто понимание html вообще практически нет, знаю только как таблички делать и классы ксс расставлять.Ок, тогда такой вопрос: есть формочка, туда пользователь вводит всякие данные, из них собирается json и отправляется на мой сервер. Как мне сделать так чтобы в json незаметно от пользователя добавлялось поле? Ну то есть к формочке как здесь >>652809 еще добавлялось поле currentUser например?Антошки, выручайте.
>>653013Ну при отправке просто добавляешь это полеjson_data['user'] = currentUserВ чем проблема?
>>653017Все, почти разобрался. У меня есть такой кусок кода в контроллере:$scope.save = function () { $scope.isSaving = true; if ($scope.entry.id != null) { Entry.update($scope.entry, onSaveSuccess, onSaveError); } else { Entry.save($scope.entry, onSaveSuccess, onSaveError); } };Я туда просто вставлю $scope.entry.user = currentUser;и теоретически должно заработать.Спасибо, антош, извини за глупые вопросы, просто с js вообще никогда не сталкивался.
>>650246 (OP)Мы снова выходим на связь и готовы ответить на самые ваши глубокие вопросы по поводу политики и концепции вещей, не многие поймут и не многие подозревают о чем это - постараюсь рассказать подробно и просто - с пруфами10 RANDOMIZE20 DIM DNA[2000]30 LENGTH=1040 POSITION=150 M=RND60 IF M<.5 THEN M=0 ELSE M=170 DNA[POSITION]=M80 RESULT=090 FOR I=1 TO POSITION100 IF DNA=0 THEN RESULT=RESULT-1 ELSE RESULT=RESULT+1110 NEXT I120 IF RESULT<0 OR RESULT>10 THEN GOTO 50130 POSITION=POSITION+1140 IF POSITION<LENGTH THEN GOTO 50150 PRINT "CODE:"160 FOR I=1 TO LENGTH170 PRINT DNA" ";180 NEXT I
>>653037Ты тот днепрокун с прошлого треда?
>>653041Очень сложно, до свидания
>>653047нет, я из днепра но в вашем треде отписываюсь в первый раз.
>>653047я тут
>>652809>crud rest web controllerПонабрался модных слов, но по ходу нихуя не знаешь.
>>652809Прежде чем на хипстер стих ангудярах такое реализовывать, научись на яваскрипте писать такое просто и лаконично.
Пиздец, ананасы. Пишу на js 2 года, ебашил всякие формочки, калькуляторы и дерьмо на ангуляре.Сейчас начал работать с графикой и охуел от того как много математики в расчетах анимации и геометрии фигур.Учите математику, если не хотите всю жизнь api писать.
>>653394А где может понадобиться работа с графикой?
>>652691> Планирую учить язык / дрочить алгоритмы одновременно. Или это мертвый путь?Дело в том, что жс событийно-ориентированный язык. Он выполняет инструкции ассинхронно. Новичка это может очень сильно путать
Послушал этого анона, и во время чтению кое-что понимаю, но не представляю, как буду что-то пытаться писать сам. Понимаю, что у меня начнет что-то получаться только, когда начну писать сам код, надеюсь я не ошибаюсь что начал свой путь в джс именно так?
>>653407Везде где пригождается canvas и webGL: Визуализация данных, графические редакторы, игори, еба анимация. http://www.littleworkshop.fr/renaultespace/
>>653484https://www.heroforge.com/http://potree.org/wp/demo/
>>653486http://willbeatsnoise.com/
Аноны, а реально ли сделать штуку на джаваскрипте наподобие шара, которому задаешь вопрос и он выдает вариант ответ "да/нет" ?
>>653549Да
>>653549Нет
>>653549Возможно
>>653549Вот примерhttps://jsfiddle.net/mr93r2p7/
>>653604что-то не работает
>>653643https://jsfiddle.net/rprt0390/2/
Как проверить доступность асинхронного хранилища? Для простоты на примере chrome.storage, пожалуйста. И нужно ли это делать? И если нужно то как? Я имею ввиду не только поддержку браузером, но и тест на запись-извлечение.
>>653721Какого асинхронного хранилища? О чем ты вообще?
>>653721>Как проверить доступность асинхронного хранилищаТак же, как и сингулярную объектную модель.
>>653731Джва спинлока этому господину.
Поцоны, не могли бы вы мне помочь? jquery + ajaxПишу некий бар-информер для сайта, который бы показывал список друзей онлайн. Необходимо постоянно проходиться по ссылкам (в переменной links) некоей функцией (watcher), результат которой будет выводится собственно на экран. В настоящее время я сделал костыль(последовательное программирование) который запрещает асинхронный запрос, ждет окончания всех запросов, промежуточные данные сохраняет в переменную, и только потом выводит данные.Браузер жутко тормозит, и из-за этого я даже не могу остановить таймер. Как я понял, нужно полностью перейти на асинхронный шаблон чтоб этого избежать. Но я нихуя не понимаю в этих коллбеках, деферерах.Немогли бы вы мне указать на явные ошибки, и показать структуру программы к какой мне необходимо стремиться. (какие приемы использовать, как организовать промежуточное хранение, коллбек функции). Если не сложно ссылки на примеры как это реализовать, или хотябы ключевые слова, по которым я это могу загуглить. http://pastebin.com/zd7PDr4q
>>653764Колись, откуда спиздил код? Сделай async:true в аякс запросе (нафиг вообще фоллс то? Если хочешь, чтобы последовательно один за одним запросы шли, сделай рекурсивный вызов ( в get_callback сделай i++; ajax_get(links ;. Ну и проверки-проверочки ). Ещё у тебя results массив у тебя бесконечно увеличивается, через полчасика, если страничка активно обновляется , будет пиздос.
>>653764> Называет функции "get_", а они нихуя не возвращают.Ты че?Вообще у тебя с именами пизда.
>>653764Алсо:> пишет на жс> снэйк_кейс
>>653728Ну есть приложение (chrome extension), есть данные и есть хранилище. Нужно сохранять данные в хранилище (chrome.storage). Хранилище работает асинхронно. То есть если я делаю chome.storage.local.set({key: val}), то оно может только через пол часа запишет. В api нашёл метод onChanged, но что-то засомневался оправданно ли делать столько телодвижений. И подумал может анон знает какую-нибудь good practice для этого случая?
>>653793Вон в предыдущем треде один аж целую борду написал снек_кейсом и ничего.
>>653800А что плохого в снеккейсе?
>>653794Там же колбэк вторым параметром, ти чиво.
>>653820Не в этом дело. Сам по себе он гораздо лучше.
>>653428>Дело в том, что жс событийно-ориентированный язык. Он выполняет инструкции ассинхронно. Новичка это может очень сильно путатьТо есть вероятность, что я начну биться головой о стену и страдать крайне высока? Ок, а во что тогда вкатиться, чтобы избежать таких проблем?
>>653826Ща везде асинхронщина, корутины/горунтины/гринлеты/петли-событий. В жс она родная и более-менее понятная, так что не рыпайся.
>>653788get callback - в смысле обрабатывает http get>>653793что такое снейк кейс?>>653781в начале watcher переменная обнуляется же.>results = []в каком месте у меня утечка памяти то?
>>653833> get callback - в смысле обрабатывает http getВот и я о чем, еба.> что такое снейк кейс?snake_case, camelCase, PascalCase, kebab-case/lisp-case
>>653832Ну я по примерно понял по статьям, что это нынче тренд или что-то в этом духе.А что за рельсы скажете? Так-то приятен глазу синтаксис руби и в целом по началу казалось, что я бы хотел вкатиться в, но потом глянул, что материалов по JS для новичка вроде больше и вообще.не стукайте за ту хуйню, что я несу, просто хочу разобраться и уже начать заниматься
>>653428Пиздец. Путять язык и рантайм.
>>653857Начни с JS, потом если захочешь на Руби серверную часть писать будешь.
>>653857>>653904Руби умирает, посоны. Медленно, но верно
>>653867Ну мог бы я написать, что это интерпретатор ассинхронный, тебе бы легче стало?
Подскажите, как сделать, что бы поле textarea увеличивалось по мере того, как пользователь в нем пишет? При этом нужно чтобы он сам не мог изменять его размер. (т.е. resize: none установлен).
>>653921>мог бы я написать, что это интерпретатор ассинхронныйи это было бы снова мимоR U N T I MEUNTIME
>>653935Среда исполнения != интерпретатор?
>>653928http://www.jacklmoore.com/autosize/
>>652154А вебпак и прочие сборщики вообще используют на сервере? Я думал они больше для фронта.
>>653916Этого двачую. Если не нравится нода, то бери питон. А руби мертв, учить его нет смысла.
>>653941Нет. В интерпретаторе можно писать и синхронный код онле. А можно пользоваться библиотеками с асинхронными API. Вот скажи, питон синхронный или асинхронный? Или Си? Данный вопрос не имеет смысла, если мы не обсуждаем конкретные вызовы конкретных API.
>>653943Ух ты, спасибо.
>>653948Мне вообще C# нравится.
>>653951Значит учи его. Можешь и TypeScript навернуть, такой JS в стиле шарпа.
>>653857Рельсы это веб фреймворк/библиотека для руби, просто довольно популярная стала, как ангуляр в джаваскрипте, например. Руби, хоть и не пишу, но новичку советовать не стану, там, слыхал, очень популярно метапрограммирование и финты ушами — еще сильнее запутаешься.
А еще подскажите плиз, вот такой код увидел:section > header > .note { font-size: 3rem;}Что делают ">", я такой значок в css первый раз вижу.
>>653968Прямой потомок. Без > выбирались бы все (по всей глубине) <header> элементы внутри <section>.
>>653970Понял, спасибо.
>>653781>Сделай async:true в аякс запросеможно тогда просто $.get() писать?>сделай рекурсивный вызовтак?http://pastebin.com/3FpeiAtF>Ну и проверки-проверочкипо-подробнее можно?там опечатка вместо links - lins, но мне лень новую пасту
>>653986Лень вникать, но кажется у тебя там то ли вечная рекурсия, то ли одна функция пытается посмотреть на чужую переменную (temp_links.length).
Всем спасибо, аноны. Сажусь за "Eloquent Javascript". >>653857-кун
>>653986>>654010Бля ещё опечатку нашел. Вот правильная. http://pastebin.com/Cg02WVQY>то ли вечная рекурсияif (tmp_links.length)вот в этом месте же проверяется>пытается посмотреть на чужую переменнуюона глобальная же, я её без var объявлял
>>654026>она глобальная же, я её без var объявлялВредных советов начитался?
>>654040всмысле?
>>654042Неявное объявления глобальной переменной в дебрях кода, при помощи спорной фичи языка это worst practice.
>>654026Короче переделал код под рекурсию => опять браузер тормозит. Может есть ещё какие решения?
Алсо, ещё вопрос: я запрашивая страницу (выделена прямоугольником), а в ответ начинает куча всякой хуйни лезть, как от этого избавиться? Сайт на клайдфларе, к которому я обращаюсь.>>654071-кун
>>654078пик забыл
>>654079это картинки летят, ебанат
>>654085можно как-то ограничить запрос? только что html возвращал?
>>654091какой "запрос"? если ты в браузере смотришь страницу, то браузер автоматически все необходимые ресурсы подтягивает (css, js, шрифты, картинки).
>>654096запрос $.get()
>>654101значит ты ответ в свою страницу встраиваешь и браузер ревестит все остальное.если ты только в консоль напечаешь, например, то ничего лишнего запрашиваться не будет.
>>654108> ревеститреквестит
>>654101Если ты не делаешь append в DOM, то html остается html'ем, и дополнительные запросы не происходят. А если ты приаппендил, то будут запрошены все ресурсы, на которые есть ссылки.
>>654112>>654108Я один и тот же долобоеб с вот этим кодом >>654026я никуда не вставляю ответ, а обрабатываю callback функцией.
>>654116 $(data).find('div.info span.rank span:last').attr('class');Ну мб jquery это делает, что сделать поиск по DOM_дереву.
>>650246 (OP)Подскажите нормальный логгер для node.js.Обмазываюсь winston'ом - это же говнище. Похоже на него надо навесить ещё 100500 модулей, чтобы он нормально работал.Где файлы вроде debug_20160101.log? Где нормальные категории без изъёбств?Где нормальные конфиги наконец? В общем, я уже потратил кучу часов, но так и не довёл его до состояния Log.Net или log4j.
>>654133порт log4j жи есть. еще bunyan
>>654124ага, закомментировал поиск, перестал подгружать. Сейчас попробую через регулярку тогда.
>>654139Не обязательно регуляркой, можно обычным поиском строки, регулярка дохуя тяжеловесная.
Аноны поясните хуле немчура втирает какую то математику и массивы, вместо того как делать няшные анимации и фишечки, где про это глянуть?https://www.youtube.com/watch?v=Ukg_U3CnJWI
>>654156
>>654156почему конструкция вида [\n.]+ не работает? Или это сайт уебанский?
>>654178Внутри квадратных скобок точка это просто точка, там тебе об этом указали.
>>654178З.Ы. чтобы точка включала \n - есть флаг s, без флага лучший вариант для поиска всех символов - [\S\s]*
>>654191спасибо, уже составил >/<span class="rank">[\S\s]+?<span class="(\w+)">/g
Есть RGB данные о каждом пикселе и ширина и высота изображения. Какие есть модули для того, чтобы создать изображение из этих данных?
>>654301Canvas.
>>654174Хм, а какой объем текста?
>>654326document.body.innerHTML.length в консоли посмотри, я прямо на этой странице запускал.
>>654331Разницы почти и нет.
>>654304Без канваса. Только изображением.
>>654360Шо, бле, без канваса? Делаешь елемент, дампаешь туда свои данные, захватыааешь скрин. Или ты на ноде?
Node js - это годнота или зашквар?
>>654393Ты сам-то кто по масти?
Вопрос по архитектуре приложения.На ноде сервачёк имеющий два роутера: гет /form отдаст форму, а пост /post-form обработает её. Соответственно имею два мидалвара (контроллера). Первый (гет) подготовит данные (сходит в базу и т.д.) для рисования формы. Во втором мадалваре мне нужно вернуть ошибки или показать направить на страницу с успехом лол.Так вот, а как вернуть эти ошибки в ту же форму? Т.е. чтобы из второго (который для поста) роута рендернуть форму нужно дублировать функционал первого (запросы в базу сделать).Плохой я писатель кароч.
>>654425/post-form должен печатать форму, только уже с ошибками. Только это колхоз и 2005Уже околостандарт формы ажаксом слать. И писать проще, и по юзеру по трафику легче
>>654425Хуле не запихнуть в роут /tvoya-sranaya-forma и отдачу формы, и прием данных? Распознавать факт приема данных (чтобы запускать валидаторы) можно по post-ключу form_status=1 или типа того. А вообще в этой вашей ноде должен быть какой-нибудь пакет, в котором будут реализованы базовые валидаторы, csrf-защита форм и прочая поебистика. Сам в ноде не шарю.
>>654425Херню какую-то ты пишешь по-ходу.Тебе не нужно заного рендерить форму, всё что нужно во втором роуте, это возвращать ошибку (или успех), а на фронте только после успешного результата переходить дальше по роуту на страницу "успеха", или хендлить ошибку, если она есть. Бекенд не должен за это отвечать, по идее, только код ошибки присылать. Что-то типо того.Если я правильно понял твой вопрос.
>>654433>>654428У меня форма не аяксом уходит, я там файлики отправляю.>>654431Наверно так и сделаю.
>>654459>У меня форма не аяксом уходит, я там файлики отправляю.Херово тогда. Ну ладно, делай как знаешь.
>>654476А есть сплслюыотправки файлов типа аяксом? Кроме костыля с ифреймом.
>>654483>сплслюыотправкиспособы отправкиКак я такую хуйню написать смог?
>>654363На ноде.
>>654484http://stackoverflow.com/a/8758614/1308583 Тут предлагают отправлять файлы через FormData
Аноны, помогите плиз. Делаю вот проект с использованием jQuery и Material design lite: https://jsfiddle.net/nxe1pc4y/3/Проблема в том, что в поле для ввода, которое сделано вручную, боковое меню работает, а вот в заметках, которые добавляет скрипт- нет. (Значок меню не отображается почему-то, так что его можно найти по буквам "me" в углу заметок)Вероятно дело в следующей строчке:componentHandler.upgradeElement(button);Которая присутствует в примере ( https://codepen.io/anon/pen/Wrmbro )Я не особо понял как она работает, но если её добавить в код, заменив соответственно button на note(или на что-нибудь еще), то вылетает ошибка.
>>654530http://jsfiddle.net/Bateman/nxe1pc4y/5/
Сейчас переписал свой скрипт >>653764 , вроде все работает нормально. 1) все переделал на рекурсии,2) ajax запросы только асинхронные,3) регулярки вместо jquery'вского поиска по DOMРезультат: страничка больше не подвисает.Спасибо, вот этим господам >>653781 >>654124 за дельные советы.правда появились утечки памяти
>>654431Я шлю multipart данные аяксом.На ноде, помимо экспресса, стоит multer, для упрощенной обработки принятых бинарных данных.В этом роуте, после проверки условий, возвращается и ответ.
Бля, это >>654741 было адресовано >>654425
>API ведения логов веб-консоли (console.log, console.info, console.warn, console.error) был отключен скриптом на этой странице.Как эту консоль ебучую включить? Из аддонов у меня стоит greasemonkey, и adblock.
>>654800https://stackoverflow.com/questions/8212373/firefox-web-console-disabledТак-то хуево, что такие функции можно оверрайдить.
>>654814и где там решение? не стоит у меня ни какого firebug.
>>654821Извини, я думал ты сам с руками.https://stackoverflow.com/questions/7089443/restoring-console-loghttps://stackoverflow.com/questions/20460685/how-do-i-restore-console-log-function-that-has-been-disabled-by-a-website
>>654618Спасибо огромное!
>>654822
>>654830Бля, используй трюк с айфреймом. Должно работать.
Поставил Атом для работы с кодом. Не понимаю, как в нем работать. Объясните, прошу. Пишу код, а нихуя не происходит, нет кнопки run или еще чего-то такого.Да, я туповат, можно этот момент пропустить.
>>654832спасибо, заработало.
>>654834ты же код пишешь, а исполняется он сервером или браузером
>>654844Поясни, няша, что мне сделать, чтобы я мог спокойно себе упражняться, решать задачки - и сразу же видеть результат, чтобы нажал run (а у меня к примеру там всего одна строка alert("test"); ) и чтобы оно отработало.Я только базовый курс прошел, понимаю мало еще.
>>654826Блядь, там еще и каждый элемент меню надо апгрейдить, иначе ВОЛН нету.
посоны такой вопрос, для чего юзают Redis?как я понял для кеширования баз данных?
>>654865Ты пишешь что-то вроде: http://pastebin.com/wA3abicMПотом открываешь этот файл в браузере.Хотя в атоме, наверное, можно как-нибудь и проще.
>>654865пиши в brackets, или вообще в codepen.io
>>654865>codepen.ioЛучше в JSBin
>>654865F12 -> consolehttps://repl.it/http://labs.codecademy.com/
>>654686Ну ещё раз поглядишь на свои переменные и найдёшь утечечку, молодец что всё сделал.
>>654874Если упрощать, то это большая куча, висящая в оперативной памяти. Память быстрее диска в любом случае, так что можно кешировать что нибудь, хранить данные сессии. если рисковый, то можно вообще всё там хранить. Но если у тебя проект для себя с 1000 уников в день, то можешь даже не париться, даже мускул тормозить не будет.
>>654873Волны?А можешь вообще объяснить про componentHandler.upgradeElement() и почему ты добавил именно button.get(0) и mylist.get(0)?
>>655070Ебаный спам лист.
>>655102Попробовал добавитьcomponentHandler.upgradeElement(node.get(0))после предыдущих двух или вместо них, визуально не вижу разницы, но если предыдущие удалить- то перестают меню работать.И еще вопрос, если переписать код используя ООП, т.е. заметки как объекты создавать, то необходимость делать "апгрейд" все равно останется?
>>655130А вот еще нашел метод:componentHandler.upgradeAllRegistered();С ним тоже работает, но как я понимаю, будет быстродействие хуже?
>>655130Там upgradeElementss, s, Карл. Ооп здесь не причем, если ты добавляешь элементы динамически на страницу - их нужно апгрейдить.
>>655148Такс, странно, если componentHandler.upgradeElements(node.get(0))добавить то перестает работать независимо от наличия первых двух. Зато с upgradeAll меню вместе с рипл-эффектом работает.
Антошка, подсоби советом. Начал изучать JS на http://learn.javascript.ru/, и мне нужно определиться с темой диссертационной работы для магистратуры, есть ли какие-то мысли, как я могу совместить приятное с полезным? Какую темку можно выбрать, связанную с js и вебом в общем?
>>655199Напиши платформу для блогов в стиле хабры.
>>655199Если ты в теме, что такое "сцена", то можно написать неплохую CMS платформу для релизов (к примеру, mp3, x264, warez etc...), которую, помимо всего прочего, можно будет и продать.В свое время один парниша написал такую CMS для сайта astro.nom.es на рельсах.Релизы чекались на pre-таймы, нюкинг и проч, извлекались нфошки.Интересное коммьюнити было, да.Идею можно расширять в разные направления, такие как: интеграция с приватным FTP, заливка на сидбокс.
Еще вопрос по динамически добавляемым элементам. Если я добавляю элементы с помощью функции и хочу для этих элементов задать функцию-обработчик события, то обработчик должен задаваться внутри функции? Потому что если задавать внутри основной функции, то он не обрабатывает динамически добавляемые.http://jsfiddle.net/nxe1pc4y/11/
>>655257То бишь элементы li в меню при наведении мыши должны окрашиваться желтым, но так получается только в вручную созданных элементах.
>>655264http://jsfiddle.net/nxe1pc4y/12/Там note надо было, а не node. Обработчики, да, надо вешать либо внутри функции создания, либо на body (добавил в пример)
>>655257Дак вроде вот жеж:http://ru.stackoverflow.com/questions/375834/%D0%9A%D0%B0%D0%BA-%D0%BF%D1%80%D0%B0%D0%B2%D0%B8%D0%BB%D1%8C%D0%BD%D0%BE-%D0%B4%D0%BE%D0%B1%D0%B0%D0%B2%D0%B8%D1%82%D1%8C-%D1%81%D0%BE%D0%B1%D1%8B%D1%82%D0%B8%D1%8F-%D0%BA-%D0%B4%D0%B8%D0%BD%D0%B0%D0%BC%D0%B8%D1%87%D0%B5%D1%81%D0%BA%D0%B8-%D1%81%D0%BE%D0%B7%D0%B4%D0%B0%D0%B2%D0%B0%D0%B5%D0%BC%D1%8B%D0%BC-%D1%8D%D0%BB%D0%B5%D0%BC%D0%B5%D0%BD%D1%82%D0%B0%D0%BCмимоверстала
>>655216>>655232Это конечно круто, но разве новичок с этим справится?
>>652666>arguments.callee.toString().match(/function ([^\(]+)/)[1] Вся суть джяваскрипта>>650905>что во вкусе говна не нравится?
>>651503>>651962)) http://lihaoyi.github.io/scala-js-games/
>>655199Приди к своему научнику, озвучь свои планы и услышишь много нового.
>>655474он сказал предложи сам, вот я и обратился с советом, в js то я совсем новичок.
>>6551991. Хорошая магистерская должна не предлагать что-то революционно новое, а в первую очередь провести полное или подробное исследование существующих решений.2. js-движки - исследование производительности в разных задачах, например https://habrahabr.ru/post/276617/ , предложение по улучшению. Если твои предложения будут достаточно хороши и ты сможешь пропихнуть их в репозиторий - отлично за диссертацию обеспечена. Задача актуальная, а вот с научной новизной могут быть проблемы, сам уже придумай что сказать.
>>650504а то что куча стартапов успешно запилили на руби и вышли в плюс -- не щитается?Очевидный даун, даже не постигший основный смысл программирования -- СОЗДАНИЕ ПРОДУКТА БЛЯДЬ
>>655584ng-butthurt
>>655584И при первых же признаках популярности переписали движок на другой язык, ибо руби не может в хайлоад. Твиттер как пример. Руби подходит только стартапам из двух школьников, все кто крупнее - выбирают другой язык, либо страдают и потом всё таки меняют его.
Существуют ли графические интерфейсы базы для ноды, вроде phpmyadmin?
>>655296>>655318Спасибо, буду разбираться. Жаль вчера инет выключили.
>>655493Игрушку сделай типо змейки или "2048". Там ебли с формами меньше будет.
>>655584> а то что куча стартапов успешно запилили на руби и вышли в плюс -- не щитается?Вышли в плюс, а потом переписали на нормальный языкРуби подкупает только быстрой разработки, но с хайпом js и появлением всяких Sails ему совсем пизда
>>655649http://www.codeandyou.com/2015/07/list-of-mongodb-gui-management-tools.html
Анон, не пойму, как использовать Proxy?Почитал, вроде фича не новая, бразуер - хром последний из стабильной ветки, а в консоли, при попытке выполнить код var proxy = Proxy.create(handler, proto);выкидывает 'Proxy is not defined'.Что за шляпа?
>>655940'последний' is not a number.Когда 49 установишь - приходи еще раз.
Посоны, понадобилось вот в Ionic Framework вкатиться срочно, кто сталкивался, кто что посоветует? Я, конечно, пока пару минут потратил на поиски годного туториала, но понял, что на хабре статьи древние все кроме одной, на официальном сайте нет упорядоченного и годного туториала для новиса, а лишь видосы по разным кускам и частям сего фрейма. На тыТтрубу только полезу сейчас.
>>655830Не, я не про монго, а про SQL базы.
>>656070Поставь пыху и юзай pma
>>655827> с хайпом js>JS>HYPEOi! Allow me to retort you - Fuck you scumbag
>>656073/disallow
>>656104/sudo allowF
Такой вопрос, parent() с использованием селектора только непосредственных родителей может выбирать? Вот пример: http://jsfiddle.net/5g7r4mhq/2/А иначе мне приходится использовать строчки вида:$(this).parent().parent().parent().parent()Как-то некрасиво.
>>656157Может $.closest() подойдет?
>>656164О, то что надо. Чая этому господину.
>>655296Попробовал по-разному сделать, твой вариант самый рабочий. Можешь пояснить, чем event.target отличается от this? И почему нельзя писать $('ul li:last').contains($(event.target))?Еще попытки:http://jsfiddle.net/nxe1pc4y/14/Если определять обработчик внутри функции, то работает только с элементами, создаваемыми функцией. Я так понимаю, на скорость работы тоже плохо влияет.Если с помощью $('parent_static').on('event', 'children_dinamic', handler);то работает только с последним добавленным элементом.Сори, что так много вопросов. Я для себя делаю, хочу не чтобы лишь бы работало, а разобраться как сделать лучше/красивее/быстрее.
>>656068NOONE??
var cyka = alert('ololo');Как с помощью цикла while сделать так, что бы переменная "cyka" повторялась 20 раз, а после этого цикл закрывался?
>>656679Ты хочешь, чтобы у тебя 20 раз выскочил алерт через переменную cyka?
>>656684Да-да. И что бы через цикл while.
>>656686https://jsfiddle.net/xxxwww/b5xLugLw/
>>656692Я так тоже умею. Ты немного не понял, мне надо, что бы в алерте содержался текст ololo, а не обратный отчёт, и это выводилось 20 раз.
>>656708Что выводилось то?
>>656708Обнови страничку, итератор был для наглядности
>>656728Спасибо.
>>656452http://jsfiddle.net/Bateman/nxe1pc4y/16/Там надо не :last, а :last-child. Думаю все же лучше повесить разные классы на элементы меню, а не псевдоселекторами ебаться.event.target - элемент на котором произшло событие, а this там смотрел на body. На самом деле анон выше годно написал про .on с фильтром по дочерним элементам, в таком случае this смотрит на li.Алсо, починил тебе лэйболы.
>>656068Есть годные книги по Ionic-у в издательствах Packt и Manning, можешь нагуглить.
>>656821Аа, теперь понятно почему только последнее меню работало. И с event.target тоже понял, но это далеко не так удобно как с on. За лейболы спасибо, рано или поздно пришлось бы их доделывать. В общем добра тебе, анон.
>>656872ok thx
А есть какой-нибудь js shell? Чтобы прям в родной соснольке быдлокодить. Насоветуйте самый лучший если их несколько. А то в devtools шрифт милипиздрический, если в маленьком окне - надоело щуриться.
>>657112node.js
>>654950Пикрелейтед означает что я заигрался с рекурсиями, лол? Придется все таки на событийно-ориентированный шаблон переписывать.Алсо, установил я этот firebug, как с помощью него найти утечку?
>>657744Просто %перепиши говнокод% подставь костылик - замени рекурсию на settimeout
>>657756>settimeout Может на setInterval? Примеры с setTimeout используют опять ту же рекурсию.https://learn.javascript.ru/settimeout-setinterval#%D1%80%D0%B5%D0%BA%D1%83%D1%80%D1%81%D0%B8%D0%B2%D0%BD%D1%8B%D0%B9-settimeout
>>657769Именно рекурсивный вызов setTimeout. Ты подписываешься на событие event loop браузера, и как таковой рекурсии внутри джаваскрипта у тебе не будет, как не будет и разрастания стека вместе с твоей ошибкой. Попробуй. setInterval - для другого.
Здарова всем! Верстальщик-ньюфаня в треде. Курю продвинутый интенсив от академии и короче делал д.з. за 7-8 урок продвинутого (ну где js)Там задавали мол сделать чтобы кнопки "+" и "-" работали.Потом чтобы когда увеличиваем количество взрослых и детей добавлялось на каждого по 3 поля (ФИО).Затем решил сделать как они рассказали чтобы отправлялось типа AJAX'ом форма и при выборе картинок отображались их превьюхи и можно было их удалить.Можете посмотреть че там с моим кодом на js - сильно ужасен?http://jsbin.com/xayoyicufu/edit?js,outputЗаранее большое спасибо за ваши советы/ответыP.S. html/css можно не смотреть на коленке быстренько слабал фиксированно по их скринам.
>>657838Точно ньюфаня? Код весьма неплох. Я бы полгода опыта дал точно.
>>657848В верстке и js ньюфаня. (скурил базовый интенсив, сверстав 4 статичных макета, сейчас пилю респонсив вот изучая продвинутый, потом засяду за базовый интенсив по js и кантора)До этого закончил вузик на прикладного математика, где толком нихуя полезного не рассказали (было чутка с++ (про ооп вскользь), фортрана и ms sql и тонны математики блядь).
>>657852Ну главное опыт в программировании есть. А сменить инструмент (язык) - несложно.
>>657848>>657855Ладно, спасибо, если более-менее норм, буду тогда докуривать продвинутый дальше.Если кто еще че скажет - почиткаю тоже. Все-равно к вам захожу время от времени, хотя больше в верстка-треде сижу. Когда сяду за js поплотнее к вам переберусь.
>>657856А где там собственно твой код? Я ща как раз тот блок пересматриваю, так у тебя все оттуда слизано, даже названия переменных.
>>657857обработка кнопок - мой код, добавление полей - мой код. (это и было дз если че)Что касается части ajax и работы с превью картинок - делал как они рассказывали
>>657856Тут еще и верстка тред есть, лол. Для интереса пролистал нулевую, похоже он очень глубоко.
>>657861Он в /wrk
>>657859Да да точно, вспомнил уже. Навскидку, я бы использовал делегирование вместо бесконечных проходов циклами по массивам кнопок.
>>657864Ок, значит почиткаю про это
Поцаны, как найти все вхождения подстроки, чтоб хранили свой индекс? В первом случае находит все вхождения, но не показывает индекс, во втором показывает индекс, но находит только первое. Чет я туплю.
>>657929Вот ещё в догонку.>Можно повесить обработчик событий практически на любой объект:А если мне не нужно использовать объект? Просто нужно произвести какой-то код, в ответ на событие, насколько валидна такая запись?
ES6 это просто каноничный пример "эффекта второй системы". Напихано столько бесполезного говна, я ебал. let, const, классы - все это абсолютно не нужно. А компилировать ES6 в js - какой вообще ебантяй придумал что это хорошая идея? Получите все отсосы динамической параши плюс головная боль компиляции - два по цене одного, просто заебись. Все эти напиханные новые свистоперделки никогда не будут работать совместно консистентно (да еще в разных браузерах). При нормальной разработке языков каждая блядь малюсенькая фича обсасывается со всех сторон и все равно в итоге случаются эпические отсосы. Хотелось бы чтобы эта поебень никогда не взлетела как то предыдущее говное, когда хотели запихать такую же кучу говна и еще типы. Но вряд ли, уж больно большой момент вся эта поебень похоже набрала.
>>658037Это только начало
Платина, наверное, но всё же спрошу.Какие есть для js редакторы/ide с нормальным автодополнением? Чтоб подсказывало не только кейворды, но и функции из внешних скриптов.Кроме WebStorm и NetBeans.
>>658037>Но вряд ли, уж больно большой моментПо-русски это называется инерция.
>>658108>По-русски это называется инерция.Только если ты ебантяй безграмотный. Можно с большой инерцией сидеть на жопе ровно как жабка например.https://en.wikipedia.org/wiki/MomentumПросто я угораю по теорфизу, и меня не наебешь.
>>658086>функции из внешних скриптовПрям из cdn'а, ага. Статический анализатор то не завезли.
>>658037https://kangax.github.io/compat-table/es6/ -- свистоперделки уже работают во всех современных браузерах, бро (кроме модулей, тут и спецификация довольно загадочная, хз как их вообще имплементировать нативно, плюс при сборке можно из модулей выкинуть ненужное, в браузерах так не сделать). В принципе можно уже даже писать без бабеля и только перед заливкой на сервер код компилировать для пенсионеров, последний некоммерческий проект так и запилил. Про "классы не нужны" двачую, а большинство остальных фишечек очень сладкие. Да и вообще ты говоришь так, будто тебя обнаженные валькирии с плетками заставляют писать на es6, старый добрый JS то никуда не делся тащемта.
>>658117>по-русски>дает ссылку на английскую викиЧурка, иди нахуй.
>>658200Таблетки выпей>>658195>эти бескрайние красные поляНу охуеть как поддерживается
>>658201Но надеюсь что так все и останется.
>>658195Проблема в том, что еще чужой код приходится читать, а там скоро вообще все на эс6 будет походу.
>>658037Потому что он ориентирован на сервер. На фронтомакак всем плевать.
из Dlang-хаты спрашивают: когда там в браузерах запилят интерпретатор байткода? Грозились вот недавно же (всего-то лет 5 назад) что-то типа NaCl или WebAssembly (или что там после них придумано было?) запилить
>>658220Стандарт на байткод завезли? А то придется как с самим жс'ом - компилировать отдельно под каждый браузер.
>>657992>>657929Почему меня игнорируют?
В upwork команду из 3х анонов нужен фронтендер. На данный момент пилим тестовый проект (SPA CRM). Больше инфы в телеграмме @irrationality
>>658351> А то придется как с самим жс'ом - компилировать отдельно под каждый браузер.Что ты несешь, деган?
>>658220Передай, пусть не выебываются, а делают как все — пилят компиляцию из язычка в жс
>>658482Да я про полифилы и ие7, чтобы писать кроссбраузерно, нужно сначала немношк поебаться, потому что все хуй клали еа стандарты.
>>658534То, что ты поддерживаешь некроговно, которое убил сам разработчик, это твои проблемы, а не жса
Как так получается, что инструменты, наподобие ASM.js, на выходе дают более оптимизированный код, нежели инструменты оптимизации для Vanilla JS? Прозреваю, что секрет во всяких плюшках типа two-pass optimisation, статических анализаторов и прочего.Есть ли сопоставимый по эффективности инструмент для чистого жс?
>>658660Браузер распознает вызовы asm.js и использует для них быстрые реализации (использование unboxed типов вместо объектов и т.п.)
>console.log((1 / 3)3);>1Это он как так сообразил? Почему не 0.999...?И если раз он такой умный, то почему с console.log((1 / 49)49); уже не осиливает?
>>658669С разметкой обосрался, там должно быть console.log((1 / 3) 3), ну и аналогично с 49.
>>658673Бля. Одна то звёздочку он как парсит? Умножить короче.
Как удобнее в jsdom по страницам шастать?Например, описали стартовую страницу через jsdom.env, в коллбэке вводим логин, кликаем по кнопке. Как получить новую страницу и что-то выполнить на ней, когда она загрузиться?
>>658700загрузится
>>658700Для таких задач есть PhantomJS, CasperJS и вебдрайвер к ним - SpookyJS.
>>658705Мне казалось, что они слишком тяжеловаты для простых задач. Или это не так? Сколько они памяти будут использовать?
>>658715>Сколько они памяти будут использовать?На моей днищевпске с 512 мб летают. Но не суть.Вот тут что-то такое разбирали:https://stackoverflow.com/questions/6263004/post-a-form-using-jsdom-and-node-js
>>658718Поред вопросом я конечно гуглил, и на эту страницу не меньше 3 раз, лол. Тут он загружает реквестом, но в таком случае не удастся именно просто "кликать" по всяким кнопкам, а выкавыривать следующий url руками.Не такая большая проблема, но можно как-то поудобней сделать, все для этого есть. У тебя фантом параллельно работает? Можно парсить сотни-тысячи страниц одновременно?
Поясните за новый синтаксис экспорта/импорта. export var test = 12 экспортирует переменную test. export deafult function hui() {} экспортирует функцию hui. А можно ли сделать export default var test = 12? У меня IDE пишет ошибку.
>>658797https://esdiscuss.org/topic/why-is-export-default-var-a-1-invalid-syntax
>>658944Спасибо!
Что скажете по поводу курса? И вообще по codeschool?https://www.codeschool.com/mean
Посоны завтра тех собес на этот евентhttps://softserve.ua/en/university/it-academy/napryamki-navchannya/angular-boot-camp/подкиньте идей что подучить?
>>659044Ангельский уже собеседовали? Или после технического будет?
А есть ли среди анонов метеорщики? Думаю вот насчет него, какие подводные камни? Проект планируем что то вроде CRM с элементами соц сети. И еще страшно монго.
Ошибка Uncaught SyntaxError: Unexpected token }Хули ему надо-то блять?
>>659233Бля, увидел. Ебаный иф отнял у меня 25 минут жизни
>>658117https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D0%BF%D1%83%D0%BB%D1%8C%D1%81
>>658659Это пример же был, откуда такие проекции. Естественно это не проблемы жса, он же просто язык. Ведь все современные браузеры поддерживают es2015 в полном объеме?
Почему классы в ES6 такие уёбищные? Вот хуле я должен писать this.field, чтобы обратиться к полю внутри метода? Почему нельзя просто field? Почему я должен вызывать метод внутри класса как this.someMethod(), а не просто someMethod(). И какого хера нет возможности объявить private поле/свойство/метод? Хуле я что должен через нижнее подчёркивание теперь всё писать, типа "это private, чуваки, видите '_', вот это трогать нельзя".
>>659333> Ведь все современные браузеры поддерживают es2015 в полном объеме?Dahttp://kangax.github.io/compat-table/es5/
>>659336Потому что ничего не изменилось с их приходом. Как раньше писал так и сейчас пиши.
>>659336>Почему классы в ES6 такие уёбищные?Не более, чем синтаксический сахар над давно известными всем конструкциями.Обвиняли ES в отсутствии классов, насмехались?Получите и распишитесь.>this.someMethod(), а не просто someMethod()>Почему нельзя просто field?Потому, что краеугольный камень ES - скопинг и контекст. С точки зрения этих понятий, такой подход не вызывает вопросов.>Хуле я что должен через нижнее подчёркивание теперь всё писатьДолжен, да не обязан. Это один из 'workaround / approaches' в виду особенной, прототипной концепции языка.Здесь представлен еще один из вариантов создания приватных объектов (экспорт только публичных)https://scotch.io/bar-talk/4-javascript-design-patterns-you-should-know
>>659339Вот еще один в названиях запутался.
>>659336Ловите ПХПепера!
В апворк команду к трем анонам нужен фронтендер. На данный момент пилим тестовый проект (SPA CRM). Подробности в телеге: @irrationality
Аноны, прочитал learnjavascript первую часть и прошел первую часть codeschool, но все-равно как-то в тумане немного считаю понимания этого языка. Может я не правильно, что-то делаю? Видел в шапке, что надо будет змейку сделать, но не представляю как это возможно сделать.
>>659439бесконечный цикл - "движение" змейки, есть некий массив хранящий части змейки, за каждый такт добовляется новый элемент(где голова), и удаляется последный(где хвост), повесь на кнопки обрабочик - будет тебе "управление".
>>659439Начни с более простых задач.Например, написать скрипт, который генерирует поле (матрицу) с заданным размером, произвольно выставляет препятствия на этом поле, точку старта и финиша, и сам генерирует кратчайший путь между двумя точками.Вариантов решения такой задачи множество, гуглятся они по кейвордам "maze runner".
>>659451Ещё могу посоветовать статьи типа "Пишим рогалик с нуля", например эта http://rlgclub.ru/wiki/%D0%9F%D0%B8%D1%88%D0%B5%D0%BC_%D1%80%D0%BE%D0%B3%D0%B0%D0%BB%D0%B8%D0%BA_%D0%BD%D0%B0_Javascript/%D0%A7%D0%B0%D1%81%D1%82%D1%8C_1
Антош, а для нуба какая из этих двух книг годнее? "Head first Javascript" или "Eloquent Javascript"?
>>659213Попробуй. Метеор вроде годнота, но не трогал.
>>659544
Анончики, помогите написать простейший userjs. Нужно изменить имеющуюся на странице ссылку. При этом ссылка должна содержать часть урла самой страницы. Асло ссылка в скрытом диве (display: none), в идеале этот див при наведении на кнопку отображать (display: block !important).
>>659791Навыками то какими обладаешь?
>>659795Могу открыть блокнот и скопипастить туда кусок кода из мануала. Я хуже червя-пидора, я знаю.
Есть у меня идея для сайта на jQuery. Задать элементы на странице- как объекты и определить для них методы. А добавлять их чтобы можно было тоже методом, использую селектор $ т.е. создавались они в том объекте, который выбран с помощью $Например: $('.container').createElement()А потом создавать его содержимое методами:element.addTitle(); element.addContent() и т.д.Но затрудняюсь, как это реализовать. Если для создания конструктора и определения методов еще имею представление, то создание с помощью query-селектора для меня не понятно. Поясните, плизнубо джун
>>657112Mozilla js shell внезапно. Я при помощи него задачи на алгоритмы и структуры данных решаю. https://developer.mozilla.org/en-US/docs/Mozilla/Projects/SpiderMonkey/Introduction_to_the_JavaScript_shell
Кто как думает, в каком формате лучше хранить ориентированный граф с расстоянием между вершинами? Потом естественно над ним операции производить.
>>657112соснуль можно вынести в отдельное окно и шрефты тоже настраиваются (скорее всего)
>>659804Ты решил ангуляр на жквери написать? Зачем?
>>660043Вот блин. Ну ладно, не буду тогда фигней страдать.
>>659796Берешь жидквери, находишь ссылку, меняешь ей атрибут, вешаешь обработичк на кнопку, в нем показываешь див.
Появилось немного свободного времени. Думаю его использовать, чтобы подтянуть чистый js. Что посоветуете: прочитать книгу (good parts на примете), курсы какие-нибудь пройти, мб задачи порешать? Или вообще по алгоритмам или компутер-саенс почитать?
>>660232https://github.com/getify/You-Dont-Know-JS
>>660236Звучит заманчиво, еще и "с пылу и жару". Надеюсь моего ангельского на это хватит.
>>657929бамп
>>660292Ты заебать нас тут решил? http://stackoverflow.com/a/2295681/1308583
>>660319спасибо
>>659903бамп епта
http://jsfiddle.net/5g7r4mhq/5/Чому седьмая строчка не работает?
>>660366Ти чиво, матрица смежности.
>>660390Додвачевался. Прочитал>матрица омежности
>>660378Тому что надо mylist[0], lastChild - свойство дом элемента, а не жиквери объекта. display не через атрибут ставится, это цсс свойство.
Посоны, пытаюсь осилить БЭМ и i-bem.js. Это вообще нормально: дохуя JSON в data-bem атрибутах?
>>660406Спасибки.
>>660232По джсу чистому читни Джона Резига "Секртеы джс-ниндзя". Этот тот же толстяк, что жикфверя написал. Я прочел половину - пока заебок, здорово меняет взгляд на написание кода, ну и для себя нашел пару триков хороших.
>>660390меня нахуй пошлют за двумерный массив
>>660757>Матрица смежности и списки смежности являются основными структурами данных, которые используются для представления графов в компьютерных программахНи тебя, ни их не исправить.
Можно ли как-то ограничить размер объекта/массива? Чтобы если задано ограничение 50, то при достижении размера, например, 51, первый элемент удалялся.Есть что-то такое? Может либа какая? Я уже заебался ифы писать для каждого добавления
>>660842Разве нельзя реализовать добавление элемента через функцию, в которой будет одно if условие по проверке mass.length и перестроению массива?
>>660855У меня оче много массивов и объектов
>>660860ну тогда функция принимающая и нужный массив и новый элемент?
>>660863Но мне и объекты нужно. Слишком костыльно это выглядит вообще.Нагуглил то, что нужно, но оно для нодыhttps://www.npmjs.com/package/cappedarray
>>660867а что нельзя объект в функцию отправить? Это же по сути ассоциативный массив
>>660842ДЕКОРАТОРЫ
Читал, что когда функция вызывается не как метод объекта, то this привязывается к глобальному объекту и что это ошибка в дизайне языка.Использование 'use strict' как-то влияет на this?
>>660917Да, this будет undefined
Я проснулся.
Чего интересного можно сделать на ноде для опыта?
Бочку
>>661061Шахматы
>>661061Харкач
Учусь)
Этой осенью я пойду на первый курс, так что хотелось бы уже уметь что-нибудь до начала учёбы.Учебных материалов и курсов целая куча, недолго и запутаться. Но пока решил начать с HTML/CSS, затем JS с jQuery на codeschool.com. Сразу вопрос: курсы на CodeAcademy лучше или хуже, чем на Code School? Параллельно буду читать книжки из ОП-поста. Потом планирую заняться PHP и попробую хоть немного вдуплить в работу с БД и системное администрирование.Это нормальный набор скиллов? Стоит ли включить в него Ruby?
>>650246 (OP)Обоссал JS-макак, вместо того чтобы править стандарт эти петухи будут городить 100500 строк кода, только чтобы сделать себе костыль и потом будут любоваться лагающим куском говна с 3мя кнопками на всю страницу и дурацкой плавающей менюшкой, бить кулаком в грудь и говорить "вот как же всё заебато сделано, целых 5 фпс на мозиле с core i7, и всего 5 секунд на загрузку"
>>661141Срикошетил струю в диванного дауна, которому лишь бы покукарекать о том, в чем он нихуя не шарит
С чего начать изучение DOMа? Есть какие-то ресурсы, которые не просто расскажут что это, но и покажут с чем кушать?
>>661560learn.javascript
>>661560С кухни, потом спальни, туалет, ванна, комнаты.
>>661608С туалета начинать всегда надо.
Как передать массив в функцию поаргументно?Сейчас приходится писать func(mas[0], mas[1], mas[2]). Но проблема в том, что я не знаю заранее размер этого массива
>>661751а не проще передать всю, а внутри уже делить его
>>661752Это функция res.json() экспресса, не хотелось бы ковырять сам экспресс
>>661751func(...mas)
>>661757Тогда массив передастся как аргумент, а мне нужно элементы массива передать как аргументы
>>661759Нет, не передастся. Он именно разложится по-аргументно там, и если у тебя вариативная функция, как я понял, там, то она будет юзать эти аргументы.
>>661760Как она разложится? Просто массив отправляется
>>661763Ты в курсе что делает спред оператор, вообще?
>>661763Значит у тебя там массив в массиве, нужно его выровнять сначала, либо два раза спред делать, но это уже костыль какой-то, сделай просто ...(_.flatten(mas))
>>661765Нет же, у меня просто массив, в нем при ошибке два элемента - первый хттп-код, второй ошибка. А при успешном ответе элементов гораздо больше>>661764Ваш оператор не оператор
>>661766>Ваш оператор не операторТы что в 2016 году на ес5 пишешь? ПиздосТогда тебе только через apply можно закостылить, func.apply(null, mas)Вообще советую разобраться в базовых знаниях, чем ковырять ноду
>>661766>Нет же, у меня просто массив, в нем при ошибке два элемента - первый хттп-код, второй ошибка. А при успешном ответе элементов гораздо большеТы ебанутый? Сука даун тупой. Если у тебя просто массив, то хули ты гонишь на спред, который к тому же у тебя не работает? Мразь поганая.
>>661767Этот оператор не поддерживается v8, то есть официально не поддерживается в ноде, зачем ты мне его советуешь?>>661769Я сразу сказал, что у меня массив
>>661774>Этот оператор не поддерживается v8, то есть официально не поддерживается в ноде, зачем ты мне его советуешь?И что? Сложно бабель подключить?Сука, даже спасибо не сказал за apply, вот блять советуй вам тут теперь.
>>661776.apply то, что нужно. Спасибо
>>661751Передавай через .apply()
>>661832Ты че сука слепой? Уже подсказали это
Бамп.>>661138
>>661850В чем твой вопрос?
>>660842Добавить в их прототипы функцию, как порекомендовал анон тут: >>660855И добавлять через функцию, проверяя .keys.
>>661857Нормальный ли набор скиллов я составил. Может, я что-то упустил?
>>661954Для первого курса не нужно знать все что ты написал, тебе это там преподавать будут. Если шило в жопе- по компьютер саенс или алгоритмам почитай. А лучше всего бухай и туси все лето, потому что потом ебала начнется.
>>661954На первом курсе у тебя будет куча всяких математик, а не программирование.Учи что тебе нравится, а в вуз для галочки ходи
http://pastebin.com/4vHk2TFDЧяднт? Почему срабатывает только последний фильтр, а как сделать это правильно?Вариант не выёбыватбся и взять лазижс\лодаш\етц не предлагать, у меня слишком древнее окружение, в котором даже полифилы не работают из коробки, кек.
>>661766ну res.json не принимает два аргумента больше, эта фича deprecated. че то ты там не то делаешь короч
>>662014Какой экспресс? 4?
>>662010Сам нашел. Проебался в глаза и потерял вызов функции.
>>662029c 4-й версии да
>>662058Ну я ещё на третьем, на sails пишу
>>650246 (OP)Почаны, есть смысл перекатываться из питон-дева во фронт-эндера, скорее даже полностью в этот ваш MEAN ?Так то серверные проблемы мне решать относительно легко, а вот клиентские дела - на очень базовом уровне умею, а верстку и дизайн не умею совсем.Хотелось бы в будущем быть йоба фул стеком.
>>662451МЕАН - это больше сервер, чем клиент. Если у тебя нет лютой ненависти JS, как у некоторых питонистов, то перекатывайся. Хотя вместо ангулара я бы посоветовал взять реакт.
>>662496А есть годная книга по реакту?
>>662540Реакт это супер маленькая либа, которая учится за вечер. Книга там нах не сдалась
>>662496> Хотя вместо ангулара я бы посоветовал взять реакт.Почему? Второй ангуляр куда перспективнее
>>662547Очень спорно. Да и это разные вещи совершенно, ангуляр лучше с эмбером сравнивать, например.
>>662544> которая учится за вечерИ каким образом ее лучше учить? Мимоньюфаг
>>662560По оффициальной документации.
>>662582Ниудобна
>>662451так и сделал, на сервере flask а на фронт мне react понравился, поглядываю на riotjs. А вообще есть транспайлеры из питона в жс, там можно в list comperhension и вообще все фичи питона, как освоишься в жс бери один из https://github.com/jashkenas/coffeescript/wiki/list-of-languages-that-compile-to-js#python и не будешь горя знать
Есть тут аноны, которые умеют в Meteor.js? Вопрос такой, мне на сервере нужно отслеживать изменение в размере массива в коллекции, и при разных его значениях вызывать разные функции. Учитывая, что коллекции реактивные, должно быть какое-то красивое решение с трекер.авторан или чем-то подобным, но у меня нихрена не получается.
Анон скажи мне , чем заменился $emit (который раньше был в socket.io) ??? для вызова функции на сервере ? мне нужно просто сгенерировать событие из другого модуля, для дальнейшей обработки.
>>662979http://socket.io/docs/migrating-from-0-9/#shortcutsгугл жи есть
Продолжаю свой ленивый велосипед, но есть один момент который мне люто мозолит глаза. Тысячи сравнений с null.Eсть код вида $$([obj, ..., obj]).find(foo).filter(bar).take(10);Код ленивый, внутри оно всё замыкается на один внутренний метод. Т.е. последний вызов(take) превращается во что-то вроде:for(var i = 0; i < 10; i++) ret = filter(find(get(), foo), bar);Так вот, на любом из этапов данные могут внезапно закончится: входных мало, фильтр всё зарежет и т.д. Сейчас у меня в таких случаях просто прокидываеться наверх null. И, соответственно, если во входных данных внезапно будет null то всё пойдет по пизде. У меня хоть нулов быть и не должно, но всё равно неприятно. Какие есть еще варианты? Бросать исключения? И, в случае с исключением - как будет с производительностью? Не будет ли одно исключение в конце работы медленней чем 9000 сравнений null на каждом этапе и для каждого элемента?
>>662995Ты что-то слышал о промисах?
>>663002Почти ничего. Разве там не те-же исключения под капотом?
>>663005Ты рано думаешь о производительности.
>>663005Не знаю что под капотом, но, кажется, промайсовский .catch то, что тебе нужно
>>663006Да нет, я про то что если там те же исключения, то я и сам бросать их умею, и не вникая в промисы. Вопрос то в том лучший ли это(исключения) вариант?>>663007Нативных промисов у меня точно никаких нет, а те кустарные реализации паттерна которые сходу гуглятся на тех-же исключениях.
>>663012Может я чего-то не понимаю, но исключение это должно быть каким-то очень редким событием. Как это может влиять на производительность?
>>663018Ну вот я и спрашиваю, сильно ли оно повлияет если я его сделаю чуть менее редким, бросая вручную.Грубо говоря сейчас на вход я даю массив из 1000 элементов, на него вешаю 5 фильтров. В моей текущей реализации это приведет к тому что каждый из элементов в каждом из фильтов будет сравнен с null. Т.е. если всё пройдет через все фильтры то за время работы 5000 раз отработает "if(val == null) return null" В качестве альтернативы у меня вариант сделать один if(sourceData.length == 0) throw false в одном только последнем шаге, дергающем исходные данные, ну и ловить его на первом шаге, а в промежуточных фильтрах будет и так ясно что либо всё ок, либо исключение всплывает выше. Одно исключение на обработку всей цепочки.Ну или может кто подскажет какие есть еще варианты.
Время тупых вопросов.Чем отличается открытие html напрямую браузером и запуском через сервер. Работает ли и насколько по разному js в этих случаях?Статей покидайте, можно и на англ.Заранее спасибо.
>>663053Браузер не знает, откуда у него страничка взялась- он сразу собранный html код читает.
>>663055Могут быть проблемы с приблудами завязанными на доменное имя.Например с локал стораджем.
>>662992да нету там этого , сам уже методом тыка нашёл , не знаю best way или нет но вот io.sockets._events.sessreload(sid);
А куда дели последнюю строчку?-A что потом?Я итак уже гений! https://2ch.hk/wrk/res/473873.html
Стремящийся в треде. Какие типичные задания выполняет жс-девелопер? Какие задания наиболее интересны?Алсо, мне вот, например, нравится жс-анимация, визуализация. То есть жс больше привлекает как эстетический инструмент. В каких сферах это наиболее востребовано? Или везде рутина с кнопочками, менюшками, слайдерами?
>>663370Тебе в СSS3 - тред. Кнопочки, менюшечки слайдеры гармошечки и анимации это CSS.
>>663370Можешь игорями обмзаться, если не хочешь кнопочки фронтендщикам полировать.
>>663370Three.js если хочешь графоном обмазатся.
>>663387А что за игори? Можно пример?
>>663403Шутеры гонки файтинги тетрисы, симуляторы, игор не видел что-ли?
>>663403Даже хрень с охуенным сюжетом можно устроить, упарывай webGL Three.js для трехмерной графики или canvas и еще что-то для двухмерной.
>>663410А браузер потянет? У меня даже какое-то простое вращение планеток подвисает.
>>663419http://threejs.org/Потянет, по запускай примеры с гугла ещеhttps://www.chromeexperiments.com/webglТехнология развивается, сетевые игры на ней уже есть.https://www.urbangalaxyonline.com/
>>663419Браузер нормальный ставь Chromium, если старое железо то могут быть проблемы, но старое железо сейчас мало у кого, а технологию будут оптимизировать.
>>663431Firefox - лучший браузер.
>>663460Маня, плисhttp://caniuse.com/#compare=firefox+44,chrome+48
Господа, какой лучше IDE под JS выбрать для начинающего? Есть хорошие бесплатные среды?
>>663477Я быдло с сублаймом.
>>663477Atom.
>>663480>>663488Спасибо.
>>663466Что сказать-то хотел? У них обоих "no" и "partial" по половине пунктов. Но хромой при этом с гуглозондом, и интерфейсом для слабоумных. Да, у фф нынче тоже. Но хромой начал это первым!
>>663510Охуительные у тебя половины. Причем, у хрома куда более важные плюсы, чем у фф. Всё, что у фф зеленое можно выкинуть, и ничего особо не изменится. А в хроме есть Shadow DOM, Custom Elements, Touch events и прочие, без которых уже будет грустно> Но хромой при этом с гуглозондомХромиум> интерфейсом для слабоумныхПо-моему интуитивно понятный интерфейс - это только плюс
>>663525>ХромиумДак и там зонды через билд находят. Сам нагуглишь?>По-моему интуитивно понятный интерфейс - это только плюсЯ и говорю - для слабоумных. Как еще называть тех для кого браузер с более чем тремя кнопочками непонятен?
>фф>хромсорта говна.>Всё, что у фф зеленое можно выкинуть, и ничего особо не изменитсяу хрома тоже. лучше бы сделали чтобы вкладка от простейшего видео не падала прежде чем какой-то хуйней меряться.
Можно ли начинать с JavaScript как первого языка программирования?
>>663550Можно. JS или C# - самые подходящие языки для начала. Главное не трогай питон или раби, а то привыкнешь и не сможешь писать на нормальных языках.
>>663557> нормальных языках.поссал на маньку, первым научился в питон, со скрежетом осилил убогие кавычки и курли бракетс в жс, получаю как боженька за стек django/flask+react/angular js ваще не юзаю python транспайлеры вся хурма...
>>663575поддвачну полубога python for live
>>663575>пишет на языке для обучения>считает себя крутымОкей
>>663575>>663579Ещё и засеменил себя. Ну самому-то не смешно?
Это как-то не смешно даже..
>>663609Как будто этот ваш пистон чем-то лучше...
>>663609>>663610В чем дело?
>>6636112 == 3
>>663611Погрешности плавающей точки.
>>663613Где тут точка >>663609?
>>663614В js вообще все числа с плавающей точкой, просто нули обычно отбрасывается.
>>650246 (OP)Где взять легкие задания, что бы набить руку? Чисто учебные примеры.
Здравствуйте. Ребят, в чем дело?Первая часть кода (до строчки var dat = new FormData(); ) выполняется исправно - в mySel1 с сайта загружаются данные.При отправке же запроса POST выдает ошибку на последней строке - "невозможно присвоить innerHTML от неопределенного объекта или равного null". Вероятно ошибка в выделенном значении (по всей видимости оно неопределенно), ибо когда я его явно указываю, то запрос выполняется.Как в dat.append передать выбранное значение селекта?
>>663610Пиздёж. инб4: ынтырпрайз, продакшн, 2.6!
>>663620Чо-т я в глаза ебусь, прошу прощения.
Посоны хто внятно может пояснить замыкания?
>>663619Все, сам разрулил. Нужно код добавления данных в FormData() внести в ончейндж.
>>663533Двачую, гугло интерфейсы хуйня.
>>663734Потому что они удобные, а тебе нужен интерфейс эксплорера?
Объясните почему пикрелейтед регулярка так криво ищет фразы?Почему "проиграл с подливой" она ищет не цельно, а отдельно, а во втором примере вообще "проиграл" не находит? ig же стоит. Чего я не понимаю? Как написать правильно?
>>663738У тебя в регулярке "проиграл с", как она тебе "проиграл" найдет?
>>663741Блядь, точно, дошло, добра.
>>663738Скобочки не учили использовать?
Поясните за ember.js. Лучше ангуляра?
>>663768Смотря по каким параметрам. Как по мне, ангулар лучше
>>663768Точно лучше первого ангуляра.Со вторым пока что не так ясно.
В этой либе что, нет умножения?https://github.com/MikeMcl/bignumber.js/
Помогите нюфагу. К примеру у меня в хтмл есть <div> - просто прямоугольник красного цвета. Моя задача сделать так, чтобы по клику их становилось 2.Как это делается? Пиздец блять, две ночи плохо сплю, тупо нихуя не могу придумать.
>>663888Обрабатывай клик и добавляй ещё один элемент, в чем проблема?
>>663894Пиздец. Очевидно же, что проблема во мне. Я нюфаг. Ну я знаю onclick, но как сделать, чтобы появился новый div я не знаю.Нюфаг же.
>>663888Посмотри продвинутый интенсив от htmlacademy 7-8 урок. Все разжевано
>>663910Да, и еще я сам ньюфаня считай что, сделал бы как-то так (тут на вновь созданные тоже можно кликнуть и они плодятся)Сделал только из того что было рассказано в этих двух видосахhttp://jsbin.com/niqagofapi/edit?html,css,js,outputЖду критики
>>663932Бля, не та версия, ща
>>663935вот http://jsbin.com/wexugepawa/edit?html,css,js,output
>>663937Норм
>>663937Спасибо, лучей добра.
>>663477Я юзаю пизженый ВебСторм, мне норм.
>>663546>у хрома тоже. лучше бы сделали чтобы вкладка от простейшего видео не падалаВот это двачую. Хромой самый ебланский в плане стабильности браузер из 3-х столпов(опера, лиса, хромой), постоянно падает сука, туда не пускает, сюда не пускает, а самое главное, что даже пидор не говорит, что за беда и почему я не могу зайти на какой-либо сайт(когда сертификаты не те, молча сука рубит и говорит - нет такой страницы, а ты блядь гадай, что за беда такая). Про сеттинги хрома я вообще молчу, я дико прозрел, когда нашел енкодинги во вкладке фонтов, это просто пздц. В общем, для малохольных браузер, единственный плюс по отношению к фф - лучше оптимизирован и на некропеках работает получше чем фф, тот чуть оперативы не хватает - сразу крашится.
>>663480 сублайм для илиты
>>650402С каких пор React стал фреймворком, да ещё и MVC?
>>664055> некропеках работает получше чем фф, тот чуть оперативы не хватает - сразу крашится. Пиздеж. Довольно долго просидел на пекарне с 500мб оперативы, ни единого краша, даже при уходе в глубокий своп. Хотя в хром и правда работал пошустрей.
>>664121Сижу на ноуте с 4 гигами и фф часто вылетает, чего хром не делал
>>664130Ну и причем тут память?
Ребята, у меня тут проблема: https://jsfiddle.net/pehqrna8/1/ (см. консоль) Мне нужно найти совпадения из массивов значений strJson.match.foo (а также .bar/.baz — каждого) в каждом объекте массива filterJson.with по полю name, например, filterJson.with[0].name. Я решил это при помощи O(n^4)-лупов (с for не получилось, возможно, потому, что я дебил — ошибку на одной из итераций выдавало, какую не помню уже), но это жуть тотальная, на один объект filterJson уходит 140мс, а таких будет много. Извиняюсь за кашу в примере, но, если разберётесь, подскажите, пожалуйста, как это улучшить.
>>664049Эх, совесть же замучает... Но тоже испытаю.
Нужно запилить небольшой юзерскрипт, что бы нажал кнопочку "g", и любая страница проскроллилась полностью вниз. Нажал кнопочку "f", и любая страница проскроллилась полностью вверх. Возможно это несколько нахально с моей стороны, вот так вот вкатываться в тред и просить помочь запилить, но я вряд ли осилю, нужна помощь анона. Анон, помоги! Этож вроде не сложно, а конкретную информацию я нагуглить не могу.
>>664169лень пиздец(не могу сегодня заставить себя что-то делать.
>>664256Анончик, если ты мне это действительно напердолишь — я и до завтра подожду. Главное напердоль! Браузер без этого сложно юзать.
>>664141Я подумал, что можно просто выдрать один раз из обоих объектов необходимые элементы, выделив их в два массива, и по ним пройтись. Я уже неправильно сделал, что итерирую по strJson каждый раз, хотя он меняться не будет, завтра попробую.
>>664263На фрилансру(или чо там нынче в моде) за пару бакосв тебе напердолят.
>>664286Там регистрироваться же нужно!Да и на пару баксов я буду кушать три дня, а тут задача вроде довольно простая, я представляю как это сделать, но в саму реализацию не могу, так как не пишу на js. Вот может кому-то не лень будет, поможет.
>>664263Для браузера скрипты я не писал еще. Хз, мб завтра сделаю.
>>664307Это же тоже самое, что и для сайта, просто итоговый скрипт нужно вставить в какой-нибудь greasemonkey и сделать глобальным. Потому я думаю, что это не очень сложно, не хотелось бы идти на фрилансы всякие по такой причине.
>>664169http://pastebin.com/mZZAV9qM
>>664344Правда если по уму то еще и e.target проверять надо, чтобы во время печати в инпутах экран не ебался. Но лень.
>>664344Тащемта работает, но есть две проблемы:1. В инпутах действительно всё ебётся, и это пиздец. Можно хотя бы намёк на то как это исправить?2. Юзерскрипт вроде включён, но не работает, нужно руками в сонсоле прописать, тогда норм. Случайно не знаешь чего так?А в целом годно, я не понимаю почему авторы всяких Vimperator'ов не могут запилить всё так качественно, без хуйня и задержек. Спасибо.
>>664373Таргет проверить надо, говорю же. Ладно, вот: http://pastebin.com/pGA83Mk8А вот почему не работает - хз, у меня в ff\greasemonkey все нормально.
Может, кстати, ты просто страницы не прорефрешил, чтоб скрипт к ним подцепился после установки?
>>664373>я не понимаю почему авторы всяких Vimperator'ов не могут Ставь VimFx. Shift+g - скролл вниз, gg - скролл вверх. Всё работает быстро.
>>664399Ты точно правильно скрипт сделал? У меня как пидорасило, так и пидорасит.UPD:Это на луне не работает, на лисе таки работает, спасибо, пойду думать как это на луну "портировать".>>664403Рефрешил, но не подхватывалось. А уже подхватывается. Что изменилось? Не знаю, но работает и ладно.>>664413Я им и пользуюсь, но там по дефолту НОВЫЙ УЛЬТРАПЛАВНОМОДНЫЙ СКРОЛЛ 2016, который тоже тупит, а если FimFX накатить на PaleMoon, на которой я сейчас сижу, то тут вообще задержка жёсткая.
>>664426Лол, теперь и тут работает, я скоро ёбнусь с этим вебом.
В общем, 3 недели назад начал изучать программирование. Выбор мой пал на этот язык. Нашел в интернете разных заданий для новичков.Вот одно из них:Напишите программу, создающую строку, содержащую решётку 8х8, в которой линии разделяются символами новой строки. На каждой позиции либо пробел, либо #. В результате должна получиться шахматная доска.Сделал вот так как видно ниже, но вот возник вопрос:На сколько это говнокод? Догадываюсь, что есть куча других способов, которые на много короче и лучше и правильнее... var cell = 8;var s = cell * cell;var result = ""; for (var i = 1; i <= s; i++) { //создаем строку с нужным колличеством символов для всей доски. if ((result.length) % 2 !== 0) result = result + " "; else result = result + "#"; //разбиваем большую строку на необходимое колличество рядов. for (var m = cell; m <= s; m = m + cell + 1) { if (result.length == m) result = result + "\n"; }}console.log(result);
П Е Р Е К А ТЕ https://2ch.hk/pr/res/664561.htmlР https://2ch.hk/pr/res/664561.htmlЕ https://2ch.hk/pr/res/664561.htmlК https://2ch.hk/pr/res/664561.htmlА https://2ch.hk/pr/res/664561.htmlТ https://2ch.hk/pr/res/664561.html
>>664523> На сколько это говнокод? Догадываюсь, что есть куча других способов, которые на много короче и лучше и правильнее... Не такой уж говнокод, просто нужно оформить всё это в виде функций, а не простыни кода, чтобы можно было удобно переиспользовать это в случае необходимости
>>664523Сойдет. Быдлокод выглядит так:var result = "";for (var i = 1; i <= 8*8+8; i++) { result += !(i%9)?"\n":!(i%2)?" ":"#";}console.log(result);
>>664523Если в задании речь о строках, то показывай своё знание строк, чтобы все ахуели как ты можешь.
>>664691Я правда тут хуйню написал, которая всё не так делает, ну да ладно.
Больше говнокода богу говнокода!var r="";for(var i=0,c=1,s=[" ","#","\n"];i<72;i++,c=1-c) r+=i%9?s[c]:s[2];console.log(r);
>>664583>>664705А почему это быдло-код?
>>664708Чем сложнее написан код, тем сложнее его поддерживать. На олимпиадах может с тебя и охуеют, а вот в продакшенах тебя подкараулят после работы.
>>664708Нечитаем. Из ынтерпрайза за такой код гонют ссаными тряпками.
>>664709>>664710Понятно, спасибо.