Этого треда уже нет.
Это копия, сохраненная 7 мая 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
37 Кб, 1052x1052
29 Кб, 624x800
161 Кб, 3567x1863
150 Кб, 1132x836
JavaScript #39 #714644 В конец треда | Веб
Ссылка на прошлый тред: >>710292 (OP)

Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.

Часто задаваемые вопросы:
https://github.com/xxxwww/js-thread/blob/master/Wiki/faq.md

Список материалов для изучения:
https://github.com/xxxwww/js-thread/blob/master/Wiki/learn.md

Список инструментов и направления JS-разработки:
https://github.com/xxxwww/js-thread/blob/master/Wiki/tools.md

НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
#3 #714659
>>714644 (OP)
Что за хуйня на 4ом пике? Ангуляр вышел в 2010.
>>714660
#4 #714660
>>714659
Тут про второй ангуляр
111 Кб, 988x654
143 Кб, 1278x903
meteoro-fil #5 #714674
СНОВА REACT + meteor
ПАцаны, проблема!
в метеоре при использовании react-komposer
проблема только в одном - когда пытаюсь вытащить из монги коллекцию, реакт выдает чо-то там в ошибке, но коллекция вытаскивается как видно(я ее в консоль.лог засунул)
Обычный массив вставляю - все ок,но из монги выдает ошибку
#6 #714681
>>714674
Что-то не рендерится. Может ты какую-то хуйню передаешь в компонент вместо данных. Или данные в неправильном виде
>>714691
112 Кб, 1016x791
42 Кб, 1273x936
#7 #714691
>>714681
если я просо массив объектов передаю, то все норм как видно , но если из монги вытаскиваю, то выдает ошибку(хотя в консоле видно что передается массив, только что потом с этим массивом его в исключение кидает хуй знает
>>714693
#8 #714693
>>714691
Может рендеринг начинается прежде, чем данные успевают прийти?
>>714698
#9 #714698
>>714693

>if(subscription.ready())


если я не ошибаюсь эта строчка ждет данные

аноны, а что вообще можно использовать аля meteor-react-data ? как оно меня заебало, вчера мучался с react-meteor-data,решил пересесть, ну вот сегодня весь день ебусь с react-komposer
>>716916
#10 #714700
Котаны, дарова. А есть ли под эту вашу ноду какой либо стандарт разработки веб-приложений по типу MVC или MVP?
>>714703>>714895
#11 #714703
>>714700
Вообще что то уж очень сыровато как то всё это выглядит на сервере. Какой то набор библиотек, отсутствие какого стандартного набора решений. Есть ли смысол делать перекат с ПЫХА?
>>714705>>714895
#12 #714705
>>714703

> Есть ли смысол делать перекат с ПЫХА?


Если не знаешь зачем делать перекат, то точно нет смысла
#14 #714713
Итак, антоши. Хочу написать парсер музыки вэ ка, чтобы загружал все аудио со страницы в клик. Последовательность действий:
1) Создаю локалочку на nodejs;
2) Туда подгружаем скрипк вэ ка JS API;
3) Запиливаем непосредственно скрипт для загрузки (мне еще предстоит узнать, как это сделать)
4) профит?
>>714717
#15 #714717
>>714713
Только идиоты юзают ограниченное open api
Используй свободу standalone api с прямой авторизацией притворяясь официальным клиентом
>>714720
#16 #714720
>>714717
Тогда мне надо десктоп приложение писать?
>>714725>>714763
#17 #714725
>>714720
Нет
>>714726
#18 #714726
>>714725
Ладно, я уже загуглил. Примерно понятно стало. Спасибо.
#19 #714763
>>714720
И как ты интересно подразделяешь приложения взаимодействующие с удаленным сервером, на десктоп и недесктоп?
#21 #714840
Посоны, вознамерился стать из JQUERY DEVELOPER ангуляро-макакой. Так понимаю, что читать и писать в БД клиентский джаваскрипт не может. Нужно изучить что-нибудь серверное, что с минимальными потерями времени позволит мне работать с БД и API разных других сайтов. Что посоветуете?
есть небольшой опыт в RoR, изучал по книге Хартла, но не совсем понял, как формировать JSON и отправлять клиенту по запросу.
>>714870
62 Кб, 609x850
#22 #714863
Читаю learn.javascript.ru, DOM, свойства дом-объектов, вся хуйня... Я три главы читаю, забываю что было в предыдущих, когда уже будет годнота, за кторою платят деньги, выпадающие менюшки, свистелки-перделки?
#23 #714864
>>714863
Толстяк.
#24 #714870
>>714840
Вот откуда вы лезете в клиент-серверную разработку, если даже не понимаете устройства клиент-серверного взаимодействия. А понимали бы, не было бы таких идиотских формулировок

>читать и писать в БД клиентский джаваскрипт не может

>>714871
#25 #714871
>>714870
По делу есть что сказать?
>>714873>>714875
#26 #714873
>>714871
Нет
#27 #714875
>>714871
По какому делу?
Я могу тебе сказать, что клиентский js прекрасно пишет в клиентскую БД, и читает из нее же, прекрасно.

А из твоего вопроса

>позволит мне работать с БД и API разных других сайтов


следует, что ты еще даже не jquery макака

Ухпди из программирования. Ты тут не нужен.
>>716079
55 Кб, 600x580
25 Кб, 828x579
91 Кб, 800x600
#28 #714877
>>714863
я до событий 4 месяца шел, а ДОМ объекты дрочил где-то месяц точно
сейчас ощущаю себя на пикрелейтед и это только начало
>>714886
#29 #714886
>>714877
Пиздец вы.
Достаточно же просто освоить саму концепцию js. А дальше любое апи любого окружения будь то нода, BOM, DOM, CSSOM или что угодно еще, изучается простым справочником, по ходу дела.
#30 #714891
>>714886
Это приходит после энного языка программирования и после эмной технологии, скорее всего.

мимопроходил
#31 #714895
>>714700
MVC - стандарт веб разработки под ЛЮБОЙ язык, будь то нода, руби, пхп, питон, шарп или другое.
>>714703

>отсутствие какого стандартного набора решений


Что? Express, Passport и другие составляют из себя стандарт. Что тебя не устраивает?
>>715283
#32 #714897
>>714710
Неплохо. Только сделай, чтобы не нужно было ставить А, а @ ставилось между каждой строчкой.
>>715009>>715150
#33 #714923
>>714674
написал в утонувший тред

>У тебя там Date object, в строку его переведи, потому что так реакт его так не нарисует

>>714941
#34 #714941
>>714923
2 дня мучался, спасибо тебе, анон!
37 Кб, 604x420
#35 #714958
>>714886
Чувак, концепцию ловить можно годами. Что писать и что учить что бы на работу взяли?
>>715004>>716084
#36 #715004
>>714958
Ничего, пока концепцию не постигнешь.
Зачем ты нужен такой, не мыслящий, а лишь гвозди забивающий?
>>715045
#37 #715009
>>714897
а это классная идея, ща обмозгую
#38 #715045
>>715004
И что читать что бы ближе подобраться к концепции?
>>715261
#39 #715074
>>714886
Наоборот - разобраться в веб технологиях (HTML, CSS, протоколы) гораздо сложнее, чем выучить +1 язык программирования.
>>715083>>715086
#40 #715083
>>715074
Ну-ну. Выучи мне питон (чтоб стандартная библиотека от зубов отскакивала и код писал сцуко идиоматичный), или кресты (уровнем выше обезьяны с гранатой), или скалу/хачкелль.
>>715088>>715098
#41 #715086
>>715074
Вот этому ведро чаю. Это какой то клубок яростно ебущих друг друга технологий.
>>715339
#42 #715088
>>715083
Если знаешь Си - за неделю можно. В вебе сука каждую неделю новый фреймворк появляеться.
>>715117>>715342
#43 #715098
>>715083
Кресты или скала - да, сложны. А вот питон прост до безобразия.
>>715119
#44 #715117
>>715088
Так и js/css/фреймворк можно за день. Чтоб писать нормальный код шо ту хуйню нужно долго надрачивать, что эту.
#45 #715119
>>715098

>Кресты или скала - да, сложны


Нет, нужно просто понимать лежащие в основе КОНЦЕПЦИИ. Тогда и фреймворки легко идут (нормальные, не наркоманские).
#46 #715122
Я, конечно, ретард, но уже час не могу решить простейшую задачу: создать массив со случайными числами и нулевые переместить влево (вправо) с сохранением порядка остальных. с сортировкой все понятно, но она порядок меняет. как это сделать?
#47 #715132
>>715122
нулевые влево:
arr.sort(function(i, j) { return !i ? -1 : !j ? 1 : 0 })
нулевые вправо:
sort(function(i, j) { return !i ? 1 : !j ? -1 : 0 })
>>715140
#48 #715140
>>715132
порядок чет не сохранился все равно(
был массив 1, 0, 3, 2, 0, 3, 0, 4, 0, 8, 9, 5
стал 0, 0, 0, 0, 1, 3, 3, 4, 2, 8, 9, 5
>>715162
#49 #715143
по задумке он должен стать 0,0,0,0,1,3,2,3,4,8,9,5
>>715147
#50 #715147
>>715143
sort(function(a, b) {return !b ? -1 : 0})
>>715151
#51 #715150
>>714897
доработал
сохранил старый функционал и добавил твою идею
http://embed.plnkr.co/FJJuBLso5vgVAUJZ5POQ/
#52 #715151
>>715147
тоже не то. вот так весь день и ебусь - ни черта не получается, хотя казалось бы идея проста как два пальца(
>>715189
#53 #715162
>>715140
Ага, забыл что в жс сортировка не устойчивая :(
ну вот тебе набросал по быстрому функцию, правда возвращает новый массив вместо сортировки на месте, но дальше думай сам

function zerosLeft(arr){
var zeros = [];
var newArr = arr.filter(function(i){ return !i ? (zeros.push(0), false) : true });
return zeros.concat(newArr);
}
#54 #715165
Короче явапримат вкатился.
Нужно вебморду запилить. Бэкенд с рестом есть. Хоть джейсон хоть хмл.
Нужно рисовать графики.
Чтобы няшные. Чтобы выделением по нему можно было менять время и ставить вычисляемые срезы.
Допустим взять ангуляр и наполнять его данными, а чем графики рисовать?
Может готовое решение есть или компоненты какие
>>715171>>715316
#55 #715167
>>715122
Используй .splice(). Дальше думай сам.
>>715187
#56 #715171
>>715165
Если ты никогда раньше не работал с фронтом - даже не думай брать ангулар. Будешь пару дней ебаться с концепциями, а потом загоришься и объявишь весь фронт парашей. Неоднократно такое было. Больно уж специфичная штука. Возьми jQuery и нагугли к нему плагинов для графики, по запросу в гугле jQuery plugin charts.
Графики случайно не candlestick нужны?
>>715177
#57 #715177
>>715171
Я хз что такое кандлестик.
Видимо чото из трейдинга?
Мне надо отрисовывать состояние процесса во времени.
Хотя графики как на разных трейдерских сайтах я не против взять.
Главное чтобы попроще.
>>715207
#58 #715183
А ну и про ангуляр я заикнулся по причине того что не хочется аяксом гонять мегабайты.
Лучше чтобы на фронте было отображение моделей и после первичного наполнения дальше работа шла с моделью и лишь в случае изменения границ в сторону увеличения шла догрузка данных
#59 #715187
>>715167
splice удаляет, вставляет и прочую мишуру наводит. неужели нет простого кода для такой примитивной инструкции? я в ахуе с js...
>>715192
#60 #715188
Короче хочется какой то фронтенд с собственным хранилищем данных на клиенте. Ну и обвязкой в виде виджетов.
Страничку подложку саму будет обычный jsp генерить, а дальше уже чтобы жс работал
#62 #715192
>>715187
Это простейшая задача математики лол.
Даже проще пузырьковой сортировки.
Лень пэку включать. Но и на скале и на груви и на чистой яве накидать это дело пяти минут
>>715203
#63 #715203
>>715192

>


да, чувак, согласен, и от этого себя еще тупее чувствую
#64 #715205
>>715189
лол, js сортировка ебанутая совсем, ибо накидал точь-в-точь - у не меняется ничего. ну то есть сортирует, но не так, как надо все равно. это просто пиздец(
#65 #715207
>>715177
С трейдерскими свечами (candlestick) очень геморно. Найти нужный модуль, зменить вид под себя, добавить динамическое изменение - там много сложностей. А вот простой график линей или барами - проще некуда.
#66 #715215
Короче, это пиздец какой-то. Знаю, детский сад, но как все-таки в массиве переместить одни элементы, сохранив при этом порядок других? То есть если есть массив, к примеру,[1,0,2,0,3,0,4,0,5], то переместив все нули в начало, получить [0,0,0,0,1,2,3,4,5]? Сколько не пробовал, порядок не сохраняется. Вроде бы нули сдвигает, но хоть один 0 где-нибудь да затесается или какие-нибудь элементы поменяют место не так, как надо. Что делать, я заебался.
#67 #715219
>>715215
Иди проспись.

var start = [1,0,2,0,3,0,4,0,5];
var finish = [];
start.forEach(function(item) {
if(item == 0) {
finish.unshift(item)
}
else {
finish.push(item)
}
});
console.log(finish)


Вернёт [ 0, 0, 0, 0, 1, 2, 3, 4, 5 ]. Набросал за три минуты. Наверняка есть решения лучше.
>>715402>>715509
#68 #715224
>>715215
А вот решение через сортировку, без создания дополнительного массива. Затратил пять минут.

var arr = [1,0,2,0,3,0,4,0,5];
arr.sort(function(a, b) {
if(a == 0) {
return false;
}
else {
return a > b
}
});


Вернёт также [ 0, 0, 0, 0, 1, 2, 3, 4, 5 ]. Я тебе сходу назвал два решения. Ты вообще пытался?
>>715509>>715603
#69 #715231
>>715509
#70 #715236
>>715122
https://repl.it/CEwJ/1
Всё просто без шифтов и сплайсов.
>>715509
281 Кб, 2048x1536
#71 #715241
Посаны поясните за пре и пост процессоры.

Есть допустим SASS, LESS, Stylus и PostCSS.
Я раньше использовал LESS, но сейчас решил перейти на Stylus и добавить туда PostCSS. Суть такова, я пишу код на Stylus и после загружаю его через Webpack, использую плагин PostStylus и туда добавляю все нужные расширения мне, которые обрабатывают мой файл стилей и компилирует его в css.

В итоге, я:
1) пишу код на Stylus, который заметно удобнее
2) получаю все фичи пост процессора с обработкой кода через его модули, автопрефиксеры, всякие cssnano

Отсюда вопрос - PostCSS преподносят как замену препроцессорам, почему? Если препроцессоры нужны для удобного написания, а он дает в основном обработку кучей модулей уебанский sugarSS для него в расчёт не берем, это ужас какой-то а не синтаксис
>>715254>>715458
#72 #715254
>>715241
Ну для начала, было бы неплохо прочитать шапку. Я тебе даже подскажу - Часто задаваемые вопросы, вопрос третий сверху.
>>715256
#73 #715256
>>715254
В верстка треде сидят ньюфаги, которые все никак psd шаблон не нарежут, а у меня тут серьезное дерьмо с кучей автоматизации и моднявыми фреймворками. Особенно postcss, где надо свои расширения писать. Какой смысл спрашивать о жс инструменте в верстка треде - для меня загадка.

Впрочем, думаю что и тут 99% безработных не смогут ответить на мой вопрос нормально. как обычно
>>715258
#74 #715258
>>715256
CSS - это просто таблицы стилей. ТАБЛИЦЫ СТИЛЕЙ блять. Это цвет кнопочек, не более. Какое это нахуй имеет отношение к программированию? Какой смысл вешать фреймворки на это, если написание CSS занимает меньше 5% от всего времени разработки проекта?
#75 #715261
>>715045
Ловить её годами
#76 #715262
>>715258
Ты из 2005 пишешь?
#77 #715263
>>715258

>цвет кнопочек


А так же шрифты, размеры, анимация, смещения, выравнивание, классы, позиционирование, границы..
С таким же успехом весь веб это не программирование.
ЕТО ЖЕ САЙТИКИ НА ЯЗЫКЕ ДЛЯ НАПИСАНИЯ АЛЕРТОВ, НУ ЧТО ТАМ МОЖЕТ БЫТЬ СЛОЖНОГА???.
Упоротая утка блять, не тебе решать что есть тру а что не тру программирование.
#78 #715264
Как лучше работать с докером, ноду, монгу, редис размещать отдельно в каждый контейнер или все в один контейнер?
#79 #715283
>>714895
Стандарт то он стандарт, только не стандарт а паттерн проектирования. И если в РНР (Yii/Yii2, Symfony, CI), руби(rails) или пайтоне(django) есть абсолютные соглашения о файловой структуре, о том где какие файли должны лежать, и что в них должно находиться то в отношение ноды я такого не обнаружил, возможно конечно плохо искал. Вот по этому немного не охота вкатываться в новою команду - нужно будет тратить время на обсуждение и утверждение очевидных вещей. Но если этого времени не потратить - будет пиздец.
>>715285
#80 #715285
>>715283

> Стандарт то он стандарт, только не стандарт а паттерн проектирования. И если в РНР (Yii/Yii2, Symfony, CI), руби(rails) или пайтоне(django) есть абсолютные соглашения о файловой структуре


Всё, что ты перечислил - фреймворки,на ноде mvc-фреймворки тоже есть.
Кажется, самый популярный mvc-фреймворк – sails.js
213 Кб, 1287x801
#81 #715304
>>715263

>шрифты, размеры, анимация, смещения, выравнивание, классы, позиционирование, границы


Ебать, да вы газетчики просто, не более, инсрументы немного поменялись, добавились новые модели взаимодействия с читателями, и рано или поздно программисты напишут для веб-газетчиков свой кваркэкспресс, останется только мышкой кликать подключая нескучные стили да анимации, лол.
мимоизкрестотреда
>>715345>>715921
#82 #715316
>>715165
http://www.highcharts.com/ вот норм для графиков
#83 #715339
>>715086
Это самые простые технологии.
Проще некуда.
#84 #715342
>>715088
При чем тут технологии в виде html\css\js и фреймворки?
>>716085
#85 #715345
>>715304
Уже давно есть.
Пользуются им мудаки. Потому что верстка на печать, и верстка в код - это разные вещи.
В первом случае нет понятия - оптимизицая.
25 Кб, 828x579
91 Кб, 800x600
55 Кб, 600x580
#86 #715371
НАЧИТАЛСЯ ДВАЧЕЙ
@
РЕШИЛ НАЧАТЬ ИЗУЧАТЬ ПРОГРАММИРВОАНИЕ
@
СНАЧАЛА ЧУТЬ-ЧУТЬ ПОЛУЧАЛОСЬ
@
ПОТОМ СТАЛО ВСЕ СЛОЖНЕЕ И СЛОЖНЕЕ
@
ТЕПЕРЬ КАЖДОЕ ЗАНЯТИЕ ЧУВСТВУЕШЬ СЕБЯ ТУПЫМ ДЕБИЛОМ И ГОВНОМ
@
ВСПОМИНАЕШЬ, ЧТО ДО ТОГО КАК НАЧАТЬ ПРОГРАММИРОВАТЬ, ЧУВСТВОВАЛ СЕБЯ ПРОГРАММИСТОМ БОЛЬШЕ, ЧЕМ СПУСТЯ ПОЛГОДА ЕЖЕДНЕВНОГО ЗАДРАЧИВАНИЯ
>>715489
#87 #715375
>>715258

> Это цвет кнопочек, не более.


Это лэйаут страницы, не менее.
48 Кб, 600x450
#88 #715397
"OO JS - best practice eva" ? true : false
>>715404
#89 #715398
>>714674
Loss script,даун Там в самом значении элемента ошибка была
#90 #715402
>>715219
Ох лооол
#91 #715404
>>715397
очевидный false
JS язык функциональный, заточен под работу с функциями, богомерзкий ООП просто обрезает часть из его охуенных возможностей.
>>716113>>716120
50 Кб, 677x742
#92 #715435

> meteor create MeteorTest


> cd MeteorTest


> meteor npm install --save react react-dom material-ui


Догадываюсь, что нужно версии пакетов указать.
npm может как-то сам это делать, использовать последние возможные пакеты с учетом зависимостей?

То же что и на пике, на всякий
http://pastebin.com/xDzpDaJ7
42 Кб, 600x783
#93 #715451
>>714644 (OP)
pizda = {};

pizda.prototype.ololo = function () {alert ('zalupka')}

mypizda = new pizda;

mypizda.ololo();
>>715452
#94 #715452
>>715451
Подскажите за прототупы. Что я сделал не так?

1) Создал объект.
2) Прототипнул в объект функцию.

3) Создал объект (т.е. конструктор сработать должен был и у mypizda должна была появится функция)
>>715476>>715485
#96 #715476
>>715452
pizda = function(){};

pizda.prototype.ololo = function () {
alert ('zalupka')
}

mypizda = new pizda();

mypizda.ololo();
>>715492
#97 #715485
>>715452

>т.е. конструктор сработать должен был и у mypizda должна была появится функция


Он возможно и должен был, да только конструктора ты не создал. Ты просто создал объект. Затем вызвал его как конструктор. Вообщем хуйни наворотил.
какого хуя у тебя такие дебильные названия pizda zalupka, ты шестой класс оканчиваешь?
>>715495
65 Кб, 600x582
#98 #715489
>>715371

>ТЕПЕРЬ КАЖДОЕ ЗАНЯТИЕ ЧУВСТВУЕШЬ СЕБЯ ТУПЫМ ДЕБИЛОМ И ГОВНОМ


>@


>ВСПОМИНАЕШЬ, ЧТО ДО ТОГО КАК НАЧАТЬ ПРОГРАММИРОВАТЬ, ЧУВСТВОВАЛ СЕБЯ ПРОГРАММИСТОМ БОЛЬШЕ, ЧЕМ СПУСТЯ ПОЛГОДА ЕЖЕДНЕВНОГО ЗАДРАЧИВАНИЯ



Двачую это.

Особенно охуеваю от всяких ВРЕМЯ РАЗВОРАЧИВАТЬ УЮТНЕНЬКИЙ БОЙЛЕРПЛЕЙТ, ВРЕМЯ СТАРТЕР КИТОВ, а там:
1) React + Redux + router
2) Node.js + Koa + Karma
3) MongoDB + Mongoose
4) Babel, Gulp, Browsersync, Webpack, PostCSS, GraphQL, Jade, SASS
5) ко всему этому просто ХУЕВА ТУЧА всяких МОДУЛЕЙ

Почему? Потому что иди нахуй, вот почему.
>>715957>>715965
#99 #715492
>>715476

спасибо.

Но ПОЧЕМУ если написать

pizda = {'vkys': 'kislenka'};

работать перестанет?

Я же чере прототип добавляю функцию? Чё она не добавляется?
>>715496
#100 #715495
>>715485

почему у объекта через прототит не добавляется нихера?

Всегда что ли нужно что б работать с прототипом захуяривать пустую функцию?

pizda = function(){};
>>715500
#101 #715496
>>715492

>Я же чере прототип добавляю функцию


Нет, ты этого не делал.
>>715512
4 Кб, 274x274
#102 #715500
>>715495
Ты ничего не добавлял.
>>715512
#103 #715509
>>715231
>>715224
>>715219
>>715215
Шифты, сплайсы, промежуточные массивы, пиздец. Как будто это всё бесплатно. Если уж олимпиадка, то держите: https://repl.it/CFFx/0 . Задача становится проще, когда вы не нули налево переносите, а когда вы все числа, не равные нулю, направо переносите. Делается это за O(n). Потом за линейное время обнуляете левую часть.

>>715236
У тебя не сильно лучше, алгоритмическая сложность оче нелинейная и оче большая.
#104 #715512
>>715496
>>715500

схуяли позвольте спросить так происходит?

Написано вроде что у объектов есть прототипы.

Я и пишу

моймилыйобъект.prototype.свойства = ...

что же он не робит
>>715521
#105 #715513
>>715509
Алсо, я не знаю JS. Просто мимо проходил вчера, но лень было вам в ротешники нассать, скажем так.
#106 #715521
>>715512
Все верно, есть.
Но ты не пытаешься получить доступ к прототипу объекта, а вызываешь несуществуещее у объекта свойство с именем prototype

Схуяли? Я не знаю нахуя ты пытаешься добавить что-то в undefined. Выпей препаратов там, иди еще что.
>>715534
#107 #715534
>>715521

ну и в чём весь секрет?
как получать доступ к прототипу?

везде писать pizda = function(){};

прежде чем использовать прототип или ещё что-то?

как нужно-то?
#108 #715539
>>715534
Лол. Скажи-ка мне сначала, зачем тебе прототип?
#109 #715540
>>715534
Тебе уже объяснили, что ты дебил. Сначала присвой значение полю prototype, а потом дёргай уже свойства этого прототипа. Хотя, ты явно не понимаешь, что делаешь. Почитай ещё статьи.
>>715541
#110 #715541
>>715540
как оно присваивается?
>>715542
#112 #715559
>>715542
блядь

1) Создали
var animal = { eats: true};

хуянямуйня
function Rabbit(name) {
this.name = name;
}

2) Тут вообще хуйпойми что. Назначаем прототипу функцию. Логически получается что теперь prototype =(равен) animal. Вот как так?
Rabbit.prototype = animal;

var rabbit = new Rabbit("Кроль"); // rabbit.__proto__ == animal

alert( rabbit.eats ); // true

тоже самое что и я пишу.

1) Создали
pizda = {};

2) Закинули в прототип в ололо - функцию. Тут всё заебок. ololo - это функция. Но не работает
pizda.prototype.ololo = function () {
alert ('zalupka')
}

mypizda = new pizda();
mypizda.ololo();
#112 #715559
>>715542
блядь

1) Создали
var animal = { eats: true};

хуянямуйня
function Rabbit(name) {
this.name = name;
}

2) Тут вообще хуйпойми что. Назначаем прототипу функцию. Логически получается что теперь prototype =(равен) animal. Вот как так?
Rabbit.prototype = animal;

var rabbit = new Rabbit("Кроль"); // rabbit.__proto__ == animal

alert( rabbit.eats ); // true

тоже самое что и я пишу.

1) Создали
pizda = {};

2) Закинули в прототип в ололо - функцию. Тут всё заебок. ololo - это функция. Но не работает
pizda.prototype.ololo = function () {
alert ('zalupka')
}

mypizda = new pizda();
mypizda.ololo();
>>715565
#113 #715565
>>715559
Мне тебя жаль.
>>715611
#114 #715575
>>715263

>не тебе решать что есть тру а что не тру программирование


CSS теперь тру-программирование. Уже вижу, как появляются написанные на CSS сервера и программируются ардуинки.
>>715594
#115 #715578
>>715263

>Упоротая утка блять, не тебе решать что есть тру а что не тру программирование


CSS не Тьюринг-полный -> CSS язык стилей, а не программирования ->ты идёшь нахуй.
>>715594>>715619
#116 #715594
>>715575
>>715578
Речь про препроцессоры CSS шла, а не про сам CSS, поехавшие
#117 #715596
>>715509

>алгоритмическая сложность оче нелинейная и оче большая.


Ага, да косяк, виновен, ну я же ночью писал, в полусне на автомате, ну и не для себя, лол, про обнуление потом уже мысли стали приходить.
Но один хер по скорости шифтам даст пососать.
А ты видимо из С или кресто-треда, лол.
>>715728
#118 #715603
>>715509
Что не так с этим >>715224 решением?
>>715728
#119 #715611
>>715565
так чем отличается

pizda.prototype.ololo = function () {

от

Rabbit.prototype = animal;
>>715624
#120 #715619
>>715578
Вообще-то. В css уже завезли переменные и функции.
#121 #715624
>>715611
Всем.

если у тебя pizda это {}
а Rabbit это функция

То, у твоей пизды вообще нет свойства prototype
потому что прототип твоей пизды Object.prototype
а если ты свою пизду получил из какого-то другого конструктора, то узнать что у нее там прототип можешь запросив ее прототип Object.getPrototypeof(pizda)

У твоего Rabbit если это функция, в свойстве prototype хранится объект, который будет расширятся, в случае если ты используешь своего рэбита как конструктор. Rabbit.prototype это не прототип объекта Rabbit, это вообще другой объект, который будет прототипом для new Rabbit
А у самого Rabbit прототип Function.prototype если не перегружен опять же. Посмотреть можешь через Object.getPrototypeOf(Rabbit)
#122 #715627
Не знаю, туда ли я пишу. В общем вопрос.
Кто-то написал и скинул простой скрипт автобамп, который можно ввести в адресной строке и он будет работать:

javascript: setInterval(function(){document.getElementById("button1").value = "бамп"; document.getElementById("button1").click();}, 100000); alert("Готово!");

Короче, мне понравилась эту тема. У меня есть множество сайтов, где мне надо совершать однотипные действия: нажатие кнопок, переход поссылкам, обновление страниц и прочие в таком духе.
Все это я так понимаю можно реализовать через адресную строку без лишнего софта. Прошу анона подсказать в каком мне направлении рыть, чтобы понять как автоматизировать повседневные действия на сайтах, как иды кнопок и прочих элементов находить. Изучать полностью джаваскрипт у меня нет желания, только для такой фигни хочу поизучать
#123 #715635
>>715627
Увы, но чтоб писать на жс, тебе нужно выучить жс
>>715648
#124 #715637
>>715627
Смотришь id и классы в браузерном инспекторе.
Полностью учить не надо - достаточно базу по DOM и BOM и js базу ты по ходу знаешь, учишь походу дела - вбивая вопросы в гугл - типа "dom перебрать элементы по классу" - если знаешь ингриш - то на стэковерфлоу есть простые вопросы на ответы для нубов. Далее самое годное для напердоливания интернетов под себя - писать расширения для хрома - очень простой API.
>>715648
sage #125 #715640
>>715627

> в каком мне направлении рыть


Работа с DOM элементами
#126 #715648
>>715635
да там пара функций, справочник открыл и вроде ясно что к чему

>>715637
а чего начинать?
>>715656
#127 #715656
>>715648
C реальной задачи.
В браузер, которым пользуешь поставь расширение для инжектирования скриптов - типа тамперманки для хрома или грисманки для лисы,
туда и пиши свои опытно конструкторские разработки, попутно роясь в справочниках, не стесняйся подсматривать, читать чужие скрипты - это хорошо обучает.
На этом можешь и успокоиться, а можешь
начать хром экстенжн апи изучать - там куча сэпмплов и всё разжевано - берешь с функционалом похожим на то, что тебе нужно и модифицируешь попутно куря маны - так и научишься. Хотя если тебе чисто работать с DOM а в браузере всё устраивает, больше грисманик тебе не надо будет.
>>715661>>715803
#128 #715661
>>715656
Но ты имеешь ввиду код, который будет работать чисто через адрес. строку, верно?
#129 #715663
>>715661
Это будет тоже самое, что через адресную строку, только удобнее. Поставь проверь на своем примере, только javascript: убери и задай в расширении парматры для скрипта - типа на каком сайте срабатывать и тп
>>715671
#130 #715665
>>715661
И не стесняйся тревожить гугл
https://habrahabr.ru/post/39214/
>>715671
#131 #715671
>>715663
А про imacros что скажешь?
Мне просто понравилась идея без лишнего запускать голые скрипты.

>>715665
В гугле только про яваскрипт в html.
>>715676
#132 #715676
>>715671

> В гугле только про яваскрипт в html.


Это тоже самое
#133 #715728
>>715596

> А ты видимо из С или кресто-треда


Ruby/Go-хипстота, в раннем сосничестве не вылезал из ассемблера, ну и олимпиадки гонял в универе, чтобы за мои проёбы не я отмазывался от деканата, а моя кафедра. Ничего особенного, короче.

>>715603
Сортировка. Реализация алгоритма сортировки в разных интерпретаторах JS разная и, как правило, алгоритмы там гибридные, но, в целом, сложность их O(n*log(n)). У меня же O(n), где n — сумма длины массива и количества нулей в нём.
#135 #715764
>>715758
С разморозкой.
#136 #715798
Angular при получении данных через сервис/фабрику автоматически JSON в объект, выдавая ошибку и падая, если сконвертировать не удалось. Как отключить автоконвертацию JSON?
>>715802
#137 #715802
>>715798
Ты хочешь передавать данные не через json? Не надо
>>715906
#138 #715803
>>715656
зачем что-то ставить, если можно просто в консоли запускать любой код?
>>716119
#139 #715808
Объясните, почему в модуле checkPassword this работает, если ее записать в переменную, а напрямую this.loginOk/Fail() не работает?

https://jsbin.com/nilogapohe/edit?js,console
>>715818
#140 #715818
>>715808
Потому что скоупы.
Так будет работать.
https://jsbin.com/joqirovupo/1/edit?js,console
#141 #715906
>>715802
Нет, я передаю через JSON, но он не может их нормально прочитать. Если я передаю данные типа
{"a": 12}
То он при автоконвертации выдаёт ошибку, так как почему то не воспринимает их как строку. Приходится передавать как
'{"a": 12}'
После чего в получившейся строке отрезать первую и последнюю кавычку и парсить заново.
>>715924
#142 #715921
>>715304
Есть жи, Adobe Muse называется. На выходе получается неподдерживаемое говно с абсолютным позиционированием. Годится только для каких-то йоба-лендингов с графеном, их действительно проще мышкой делать.
#143 #715924
>>715906
Что-то у тебя с кодом не то, агнуляр сам такого не делает
#144 #715943
господа, какой фреймворк аналог рельс, sailsjs?
>>715970
#145 #715957
>>715489
Ой бля, жиза какая.
Раньше метеор норм был, так теперь его тоже в это дерьмо превратили.
#146 #715965
>>715489
Ну пиздуй в джаву или спецназ, там можно десятилетие дрочить энтерпрайз на антикварных тухнологиях если тебе СЛОЖНА
>>716026
#147 #715970
>>715943

> sailsjs


Да
>>715994
#148 #715994
>>715970
благодарю
#149 #716026
>>715965
Я бы с удовольствием, да лень учить её, и платят там больше, ололо. Взял спринг и похуячил с абстрактными фабриками говяжьих анусов.
#150 #716078
Есть масса различных элементов и два возможных состояния у каждого. Нужно, чтобы это состояние рандомно генерировалось и не менялось в течении часа. Состояние каждого элемента не должно храниться в системе, а должно генерироваться по необходимости. Как это сделать? Пока есть идея такая - на основе номера часа и номера дня (чтобы каждый день новое и не повторялось в одинаковые часы каждого дня) и названия элемента сгенерировать случайное число от 1 до 10, если меньше 5 - то первое состояние, если больше - то второе. Но как сгенерировать число на основе другого числа? Или как ещё можно генерировать неизменное состояние (одно из двух), так, чтобы оно было одинаковым весь час?

Приведу пример. Есть элементы А, В, С. И два состояния - 1 и 2. Допустим, в 20:00 часов при запросе их состояние вернётся А-1, В-1, С-2. Если сделать запросы в 20:05, 20:22, 20:45 и так далее, что вернётся всё равно А-1, В-1, С-2. Но если сделать запрос в следующий час, например в 21:03, то вернутся другие состояния для элементов, например А-2, В-1, С-1. Они не должны храниться где то, а должны именно генерироваться. Как такое сделать?
>>716187
#151 #716079
>>714875

>клиентский js прекрасно пишет в клиентскую БД, и читает из нее же, прекрасно.


Cho?
>>716167
#152 #716084
>>714958
Концепция шманцепция. Хочешь денег - иди в 1С.
#153 #716085
>>715342
И там и там кое-что надо просто запомнить.
#154 #716097
>>715509
Отличный алгоритм.
#155 #716106
>>715509

>Шифты, сплайсы, промежуточные массивы, пиздец. Как будто это всё бесплатно.


Мало есть проектов, где необходимо это учитывать. Памятью можно пренебречь.
>>716189>>716328
#156 #716107
>>715258

>написание CSS занимает меньше 5% от всего времени разработки проекта


Процентов 15%.
#157 #716113
>>715404
Мне нравится создавать объекты с названием whateverManager, который умеет то, что необходимо в данный момент. Делаешь калькулятор - хранишь объект calc, типа того. Я не знаю, что там за паттерны ООП применяются в js INB4: var x = {}; //singleton, но я их не юзаю.
>>716141
#158 #716119
>>715803
>>715661
Затем, что кликнуть правой кнопкой по иконке расширения удобнее, чем делать это через консоль каждый раз.
#159 #716120
>>715404

>JS язык функциональный


Вообще нет.

>богомерзкий ООП


Но с этим согласен.

ООП ненужное говно, которое в 99.9% бесполезно и только усложняет код, не принося ничего полезного.
>>716123
3 Кб, 341x24
#160 #716123
>>716120
Объекты это хорошие неймспейсы для функций.
#161 #716141
>>716113
Вот кстати двачую этого.
Сам пока учусь, только недавно дошел до ООП, и еще в смятении, но кажется стиле делает код тупо читабельнее чтоли.
Сразу ясно, что вызывает, какие у него методы, что где лежит, что с чем взаимодействует. Но это с одной стороны.

С другой, когда пишешь по этой схеме, такое чувство будто что-то теряешь. Все время так и хочется вернутся к жонглированию функциями, юзанью переменных на полную, прямым колбекам и прочей красоте. Это же так удобно, и по своему красиво, хотя код получается макаронинами, особенно если сравнивать с уютненькими конструкторами.

Так что лучше все таки? Может кто-то более опытный подскажет. Как принято писать ИРЛ?
>>716142>>716153
#162 #716142
>>716141

>но кажется разработка в компонентном стиле


самофикс
#163 #716153
>>716141

>Все время так и хочется вернутся к жонглированию функциями, юзанью переменных на полную, прямым колбекам и прочей красоте. Это же так удобно, и по своему красиво, хотя код получается макаронинами, особенно если сравнивать с уютненькими конструкторами.


>


Тебе ничто не мешает это делать через свойства объекта, а лапша из колбеков это однозначный вред, если есть возможность обернуть в промисы хотя бы.
#164 #716167
>>716079
indexeddb и подобное имеются в виду наверн
>>716168
#165 #716168
>>716167
А как синхронизировать?
>>716179
#166 #716170
#167 #716172
я правильно понимаю, что нод.джиэс может заменить пхп?
>>716173
#168 #716173
>>716172
В том, что касается обработки соединений, node.js > php.
>>716178
#169 #716178
>>716173
нод > пхп > фронтэнд ?
ну то етсь если мне надо работать с бд, то без пхп не обойтись?
>>716181
#170 #716179
>>716168
С чем?
>>716182
#171 #716181
>>716178
http://docs.sequelizejs.com/en/latest/
https://github.com/tj/node-migrate
Не знаю, дало это тебе что-нибудь.
>>716194
#172 #716182
>>716179
Что там хранить - нагенеренные объекты или куски кэша?
>>716188
#173 #716187
>>716078
Ты дебил, что ли? Пишешь простейший рандомайзер или хэш-функцию, подаёшь на вход текущий час (new Date().getHours()) — и всё.
#174 #716188
>>716182
Кеш или состояние, да
>>716198
#175 #716189
>>716106
Я с тобой согласен, но удивительно, что все как один начали предлагать отвратительные решения. В конце концов, это тот случай, где оптимальное решение ещё и самым читабельным является.
>>716193
#176 #716193
>>716189
Продемонстрировать знание функций на собеседовании - вот кейс.
>>716202
#177 #716194
>>716181
ого
сложна
я пока не дорос
>>716196
#178 #716196
>>716194
https://github.com/felixge/node-mysql
Можешь начать отсюда.
>>716203
#179 #716198
>>716188
Чем плох localStorage?
#180 #716202
>>716193
Это очень плохой кейс.
#182 #716205
>>715534
Вот тебе копипаста:
Ну вот тип есть конструктор
function Person(name) {
this.name = name;
}
Мы хотим, чтобы все объекты созданные этим конструктором могли что-то делать, если записать в конструктор что-то типа
this.sayHi = function() { alert('Hi, my name is ' + name + '!'); };
то результат будет достигнут, но у каждого нашего экземпляра будет своя точная копия этого метода занесенная в свойство, а копировать одну и ту же инфу объектам которым она нужна - не эффективно. Здесь вступает в дело объект prototype. Prototype - это прежде всего свойство конструктора, а не экземпляра, важный момент. Мы заносим свойства, которые нужны всем экземплярам Person в его прототип
Person.prototype.sayHi = function() { alert('Hi, my name is ' + name + '!'); };
и теперь каждый экземпляр созданный этим конструктором имеет доступ к методу:
var d = new Person('Dick');
d.sayHi();
Но, важный момент, в самом объекте не появляется свойства sayHi, магия заключается в том, что при создании объекта new Person('Dick'); получается объект вида { name: 'Dick', __proto__: { sayHi: function() {...} } },
т.е. каждый экземпляр получается ссылку на прототип своего конструктора в скрытое свойство __proto__, а при вызове вида d.sayHi(); интерпретатор ищет метод sayHi в объекте d, если не находит его, заходит в __proto__ объекта и ищет функцию там (если его нет и там, то заходит в __proto__ объекта __proto__ и так далее, тип цепочка прототипов). Про то как реализуется наследование не буду писать, потому что шаблонов наследования куча и у всех свои ньюансы. Если понял меня, то перекури соответствующие главы на learn.javascript.ru еще несколько раз для закрепления и потом читай Шаблоны JavaScript из гайда этого треда, там много про варианты реализации наследования.
#183 #716212
#184 #716225
Вечер в хату, JavaEE 5+ лет кун.
Хочу объять Node.js, с чего начать?
>>716227
#185 #716227
>>716225
С шапки. Книги и сайты.
#186 #716236
Аноны, выучил HTML, CSS, основы JS. Дальше планировал учить php, но почему-то мне уже не хочется, так как мне нравится фронтэнд. Так вот что мне учить дальше и где найти работу (можно нонпрофит) для получения практического опыта? Потому что когда у меня есть реальный проект я могу сутками сидеть его делать, а когда просто читаю рандом статьи/книги все время отвлекаюсь и продуктивность обучения крайне мала.
>>717160
#187 #716240
Что-то я совсем туплю.
Как на этом вашем JS написать вот такое http://ideone.com/NuaB1f ?
>>716268
#188 #716268
>>716240
'use strict'
let a = [];
for (let i = 0; i < 10; ++i) {
if (!(i % 2)) a.push(i);
}
console.log(a)

Для range массива сейчас модно что-то вроде этого:
Array.from({length: 5}, (v, k) => k);
Array.from(Array(10).keys());
Такого способа, чтобы в range динамически без цикла, что-то на ум не приходит.
>>716365
#189 #716284
>>714644 (OP)
Почему, когда я присваиваю перменной значение, оно не присваивается?
В чём может быть причина? Я что-то слышал, про ссылку, которая сразу же удаляется.
>>716286
#190 #716286
>>716284
Покажи код
#191 #716328
>>716106
Дак вот почему интернет превратился в тормозное говно, а браузерам железо нужно будет скоро как, игрулькам с 3D и физикой. Каждая макака думает что памятью можно пренебречь ведь его то небольшое творение погоды не сделает, в итоге на каком-нибудь фликре грузиться >9к таких вот поделий пренебрегающих макак, пиздос.
>>716388
#192 #716365
>>716268

> Такого способа, чтобы в range динамически без цикла, что-то на ум не приходит.


Ага, вот это. "Модный" способ близок к тому, что я и хотел. В учебниках как-то это всё мутно объясняют. Благодарю.
#193 #716388
>>716328

>>9к


Сколько у тебя открыто вкладок - 200? Сколько это сожрет оперативы и процессорного времени? Не так много.
>>716395
#194 #716395
>>716388
Ну вот из-за всяких макак браузер и начинает жрать 1.5+Гб. Мне столько, простите, жалко. А ещё флеш туда вхуярит ублюдок какой-нибудь и всё, процессор тоже в рабстве.
>>716409
#195 #716409
>>716395
1.5 Гб при открытых 200 вкладках. Это не так много, на моем средненоуте 12 Гб оперативы, не вижу смысла ориентироваться на тех, кто не может докупить плашку оперативы на 2 Гб.
>>716412>>716422
#196 #716412
>>716409
Лолшто? У меня хромиум 6 гигов отжирает на 50 где-то
>>716418
#197 #716418
>>716412
Хром на 30 вкладках ест не больше 200 Мб. Что с тобой не так?
>>716422
#198 #716422
>>716409
Нет, не при 200. Это при наличии в браузере ~70, однако именно загружены там максимум 5-15, и ещё много постоянно открываются/закрываются.

>средненоут


>12Гб


Ну такой себе средненоут. У меня вот на рабочем 4Гб, 5 из которых отжирает система и корпоративный софт. Представляешь, какая это боль в интернете сидеть? инб4: работать надо.

>>716418
Ну это от вкладок зависит. Открыть пару десятков башоргов - никаких проблем. Но 200Мб это уж слишком мало, что-то ты лукавишь. Хром разве не плодит отдельный процесс для каждой?
>>716426
#199 #716426
>>716422
Если проблема будет именно в утечке памяти или тормозах, то это решается при следующей итерации, тратить время на доп. оптимизацию там, где это даст прирост, которым можно пренебречь, не есть хорошо.
41 Кб, 1000x1000
React ALARM!!! #200 #716436
Нубский вопрос по реакту:
Как рендерить компонент на основе input? Типо есть форма и есть мой компонент который к примеру вводимые символы переводит в верхний регистр.

Если есть анон готовый ответить еще на некоторые вопросы буду безмерно благодарен (с меня пиво если ДС). Можем по скайпу иди телеграмму поболтать.
>>716443>>716577
#201 #716443
>>716436
Input должен писать в стейт, а твоя йоба читать из стейта. КО
>>716454>>716457
#202 #716454
>>716443
Ссылку можно или типо того. Нихрена не понял. Реакт 3 часа экспириенс.
#203 #716457
>>716443
@ooyert, если не сложно
>>716475
#204 #716468
анон, пилю сейчас модуль на js и мне понадобилось получать selected опцию выпадающего списка при событии change
сейчас пытаюсь передать event объект в модуль и уже внутри получить выбранную опцию.
вот код.
>>716469
#205 #716469
>>716468
мля, забыл. Вот код
https://jsfiddle.net/g8b1o7jh/
>>716472
#206 #716472
>>716469
уже сам разобрался. Использовал $(event.target).find(':selected')
#207 #716475
>>716457
Котаны, выходите на связь!
>>716494
#208 #716494
>>716475
Это не доска знакомств.
>>716524
#209 #716524
>>716494
Это доска для ебли твоей спидозной мамаши.
>>716538>>716555
#210 #716538
>>716524
Тоже на реакте пишешь?
#211 #716555
>>716524
Андрюх, ну ты че такой агрессивный?
#212 #716577
>>716436
Хочу сделать мини электрон, но наверняка уже есть что-то такое. Может кто-то находил, хотя вряд ли, здесь в основном позёры. Программистов 3 человека.
#213 #716579
Приходишь в кантору, которая ищет node.js разраба. Расписываешь какой охуенный сервер можно написать на java. Они тебя нанимают - пишешь сервер на java.
>>716584
#214 #716584
>>716579
Но ведь джава не лучше ноды
>>716598
#215 #716598
>>716584
Лучше, потому что:
- Перформанс: в бенчмарках netty и jetty оставляют ноду глотать пыл.
- Библиотеки: испытанные в проектах гугла и амазона библиотеки Apache, вместо васянский поделок с npm.
- Девопс: JVM изначально более прозрачна для мониторинга и позволяет распространять приложение в виде одного большого jar-ника.
>>716601>>716870
#216 #716599
На packpub нахаляву раздают
Mastering JavaScript Design Patterns
#217 #716601
>>716598
Съеби в свой петушатник
#218 #716612
О, react кунцы, есть вопрос по best practice.

Допустим есть приложение из блоков: шапка, контент, футтер. В целом все 3 блока зависят от текущего адреса, но адрес может менять так же текущее состояние контента (например контект содержит компонент с табами и при переключении табов меняется адрес, чтобы сохранить стейт при обновлении страницы), не изменяя остальные части приложения.

Собственно вопрос знатокам: как лучше организовать подписку на изменение адреса? На сколько я понимаю идеалогия реакта в том чтобы просто каждый раз вызывать рендер глобального компонента, а дальше реакт сам разберётся что менять в DOM, но как бы редер всего дерева компонентов нихрена не бесплатный же, и полне может занять ощутимое время, и видится мне это не очень хорошо когда нужно поменять только один небольшой фрагмент контента.
>>716678>>716879
#219 #716620
В чем смысл импортировать css в js файлах? Что это дает? Или подскажите как это хуйня называется чтобы я мог нагуглить зачем.
60 Кб, 601x604
#220 #716665
>>714644 (OP)
Извиняюсь заранее за бан в гугле: я вот знаю немного яваскрипт, немного сиквел, хтмл+ксс, естественно. Как мне вместе это объединить? Допустим, я пишу приложения на скрипте где нужно сохранять результат в sql, как мне это реализовать? e.g. например какая-нибудь ответ к которому можно будет вернуться?
>>716882
#221 #716678
>>716612

>но как бы редер всего дерева компонентов нихрена не бесплатный же



Не занимайся преждевременной оптимизацией, по-настоящему дорогая операция - это работа с DOM браузера. Но именно до настоящего DOM доходит только то, что на самом деле изменилось, никакого полного перендеринга нет на самом деле, Риакт писали умные чуваки — будет сравнение нового и старого VDOM (JS это делает шустро), и применение только diff'а. Если ты не наговнокодил в своих render-методах, все будет гуд.
>>716688
#222 #716688
>>716678

> Если ты не наговнокодил в своих render-методах, все будет гуд.


Приложение может быть большое, в тысячу компонентов например, на каждый компонент создаётся объект, это всё рендерится, подменяются стили чем-то вроде react-css-modules. Короче есть подозрение что 500+ мс на всё про всё уйдёт.
>>716692>>716695
#223 #716692
>>716688
Ну проверяй в shouldComponentUpdate что стейт текущего компонента поменялся, и на самом деле требуется перерендеринг, делов то.

https://facebook.github.io/react/docs/advanced-performance.html

Или используй стейтлесс функциональные компоненты.
#224 #716695
>>716688

>на каждый компонент создаётся объект



Объект создается один раз, кури жизненный цикл
#225 #716726
Во что вкатываться в react или в ангуляр?
>>716728>>716734
#226 #716728
>>716726
А что ты хочешь делать?
>>716729>>716730
#227 #716729
>>716728
получать много денег
>>716737
#228 #716730
>>716728
разве они не сорт оф сейм щит?
>>716736>>716737
#229 #716734
>>716726
Что ты больше любишь - когда всё готовое из коробки, но ничего не изменить, или когда конструктор и ты собираешь идеальный вариант для себя, но тратишь время?
>>716739
#230 #716736
>>716730
Ни разу.
#231 #716737
>>716729
Тогда в бекенд иди

>>716730
Нет. Первое - конструктор, второе - монолитный стартер-пак
>>716740
#232 #716739
>>716734
скорее второе, ибо бесит когда со старта создаётся куча непонятной хуйни, с которой я должен взаимодействовать
>>716742
#233 #716740
>>716737

> тогда иди в бекенд


Но ведь тогда придётся учить какую-нибудь джаву
>>716741
#234 #716741
>>716740
Нода жи есть
>>716746
#235 #716742
>>716739
Тогда реакт.
#236 #716746
>>716741
так-то с одной ебучей нодой и ванилой не берут, везде нода идёт как довесок к ангуляру\реакту\етк
>>716748
#237 #716748
>>716746
У нас да, а на западе ещё как берут
104 Кб, 802x785
#238 #716771
Анон, поясни за синтаксис этого куска кода

http://pastebin.com/BMUQjs5e

зачем после for код оборачивается в скобки, а потом еще и в анонимную функцию, и самое интересное, зачем в конце стоит в скобках переменная (i)
>>716776>>716792
#239 #716776
>>716771
Чтобы внутри функции значение i осталось такое же какое было во время итерации цикла
>>716850
#240 #716792
>>716771
man IIFE
>>716850
#242 #716870
>>716598
На java будешь делать дольше.
#243 #716879
>>716612
Виртуальный дом быстрый, не ссы.
#244 #716882
>>716665
Это невозможно.
95 Кб, 807x702
#245 #716884
котаны, такой вопрос, есть один Object, мне нужно отслеживать состояние и исходя из изменения значений выполнять некоторые функции
есть нормальный механизм для этого?
гуглится Object.observe но он пишут мёртв
>>716886>>716926
#246 #716886
>>716884
Переопределением состояния через сеттер/геттер.
>>716889>>716892
#247 #716887
Ребят, читаю по созданию юзерскриптов эту книгу http://commons.oreilly.com/wiki/index.php/O'Reilly_Commons, но она устарела, ссылки с которыми работают юзерскрипты из примеров битые. Что почитать по теме можно?
>>716890
59 Кб, 600x451
#248 #716889
>>716886
спасибо, няша, нашёл вот это
http://frontender.info/native_javascript_data_binding/
во 2 части вроде то что нужно
>>716909
#250 #716892
>>716886
правда там отслеживается DOM, а мне это не нужно, нужно чтоб на изменение поля срабатывала нужная функция
>>716936
#251 #716909
>>716889
defineProperty, ни разу не юзал еще.
#252 #716916
>>714698
Blaze. Пока у реакта нормальной поддержки в метеоре нету.
#253 #716926
>>716884
гугли паттерн проектирования - observer
>>716934
54 Кб, 604x426
#254 #716934
>>716926
спасибо, няша, буду изучать :3
#255 #716936
>>716892
getter\setter
Proxy
>>717082
#256 #716950
Что лучше изучать, браузерный или серверный JS?
>>716951>>716952
#257 #716951
>>716950
js одинаковый везде.
Браузер и не браузер - это окружение.
>>716959
#258 #716952
>>716950
Браузерный, на нём как раз 95% работы на жс.
#259 #716959
>>716951
Во что лучше сразу вкатится в JS? Я себя знаю, лучше смотреть видео уроки, повторять за автором и пытаться разобраться в коде, чем читать теорию и нихера не понимать. Так пистон выучил.
>>716961
#260 #716961
>>716959
Берешь любой видеокурс на рутрекере крупный. Есть жс буткемп 10гб, где пишут фронт и бек на ноде, тренер годный, он сейчас в юдасити работает.

Есть ещё хтмлакадеми интенсив, не смотрел, но вроде хороший.
Для теории хватит на 95% Кантора и mdn, там очень годно всё описано и без воды. Качай любой из этих и смотри ресурсы, покатит под пивас.
>>716969>>716972
#261 #716969
>>716961
Спасибо
#262 #716972
>>716961
Ебать. Втдеокурсы.
А чо книжек уже мало?
>>716981
#263 #716981
>>716972

>Я себя знаю, лучше смотреть видео уроки, повторять за автором и пытаться разобраться в коде



Ну тебе они точно не нужны, ты же читать не умеешь.
7 Кб, 230x219
#264 #717002
Анон, какой идеальный API роутера ты для себя видишь? У меня получилось накидать что-то вроде

[CODE]
router.map((route) => {
route('/id:id').to('someId');
route('/page/:id/:id2').to('someAnotherId');
route('/posts', (route) => {
route('/').to('postsIndex');
route(':id', (route) => {
route('/').to('postView');
route('/comments').to('post comments');
});
});
});[/CODE]

В .to() правда будут передаваться не строки, а инстансы роутов которым будет передан контроль.
>>717028
#265 #717028
>>717002
react-router
208 Кб, 700x897
#266 #717041
Блять я читаю этот learn.javascript и у меня возник вопрос, единственое что я вынесу из этого учебника это знания что такое DOM-дерево, а все для сайтов прийдется писать на jquery? Может сразу паралельно дрочить juery?
>>717047
#267 #717047
>>717041
Почему же?
После появления document.querySelector и fetch с промисами он не особо нужен.
>>717069
65 Кб, 497x484
#268 #717069
>>717047
А есть что либо по типу задачника, только для реалных задач, а то эти переборы массивов меня и питоне заебли. У меня с каждым языком так, начинаю учить, синтаксис выучу, напишу пару хеловордов, все пизда, бросил. Я только в пару макетов сверстал, вот и все мои законченые поекты.
Или накидайте задач с которыми сталкиваються реальные разработчики.
>>717076
#269 #717076
>>717069
Ну напиши реальный проект какой-то, купи домен, опубликуй, что ты как маленький.
>>717081
#270 #717081
>>717076
Все как обычно, лол.
89 Кб, 600x619
#271 #717082
>>716936
спасибо за подсказку анончик :3 дело пошло, архитектура йобаприложения моего благодаря тебе стала менее говённой :3
#272 #717096
Там вашего брата убили а вы и не знаете
https://2ch.hk/po/res/15449299.html (М)
Помяните хоть
>>717097
#273 #717097
>>717096

>Джавасрипт


>программирование


Туда ли ты зашёл, петушок?
>>717102
68 Кб, 450x514
#274 #717102
#275 #717158
Читаю доки к пасспорту. Что за странное объявление экспресс-приложения? Вместо

var app = express();
app.set(...);
app.use(...);
module.export = app


Там объявляется вот так:

var app = function(app, config) {
app.configure({
app.set(...);
app.use(...);
});
});


Почему так?
#276 #717160
>>716236
Неужели ничего не можете подсказать, анончеки? :(
>>717165
#277 #717165
>>717160

> можно нонпрофит


Контрибьють в опенсурсные проекты. У тебя очень тупой вопрос, ответа он не требует.
>>717173
#278 #717173
>>717165
Нахуй мой макакокод в опенсорс проектах?
Мне бы найти команду где бы я получал опыт работая бесплатно, но если что мне б подсказали где делаю неправильно и т.д.
>>717187>>717195
#279 #717187
>>717173
Бля, это и называется опенсорс, ебучий ты даун
>>717189
#280 #717189
>>717187
Ебать ты агрессивный, тебе что бабы не дают?
>>717192
#281 #717192
>>717189
Нахуя мне бабы, если я могу кодить? Ты тупой штоле?
#282 #717195
>>717173
Нахуй ты нужен? Польза ведь нулевая, а жопку тебе подтирать придется.
>>717209
#283 #717209
>>717195
Печально это, эх.
Придется самому себе придумывать задания для обучения.
>>717235
#284 #717235
>>717209
Ломись в джуны, крупные конторы могу позволить себе тянуть новичка в надежде на профит в будущем.
#285 #717354
На чем я быстрее напишу spa, на react или angular 2, учитывая, что я с ними не знаком?
>>717604>>717609
#286 #717355
>>714644 (OP)

>jstherightway.org - Огромный англоязычный гайд. Есть книги, статьи, список фреймворков и многое другое. По сути, этот текст - краткий аналог этого гайда.


ОП ты в курсе что по ссылке из фака похаканый сайт?
>>717359
#287 #717359
>>717355
Лолд, ещё неделю назад все работало.
Надеюсь, восстановят
#288 #717363
>>714863
Так ничему не научишься
"Я познал только то, что сделал"

Устройся на работу, наври что знаешь дохуя, покажи ужой код.

По ходу дела, когда получишь задание - гугли его решение, все уже придумано до нас, надо только скомпоновать куски

И да, тебя скорее всего уволят, но ты реально чему-то научишься

Отдохнешь и снова в бой
#289 #717427
анон, такой вопрос по тегу select. Как вызывать обработчик события даже в том случае, если выбранная опция не поменялась?
https://jsfiddle.net/jwzvh5x2/
вот тут по дефолту выбран 1 вариант в списке. Как сделать так, чтоб обработчик вызывался, если я ткну на список и оставлю 1 вариант выбраным?
>>717466
#291 #717506
>>717466
по-моему так проще всего
<select>
<option selected hidden>1</option>
<option>1</option>
...
>>717507
#292 #717507
>>717506
Работает только 1 раз. И зачем засирать разметку?
>>717510>>717514
#293 #717510
>>717507
В смысле один раз? И в смысле засирать, это блядь теги html, их для этого и придумали
>>717538
#294 #717514
>>717507
и блядь в скрипте:
$('select').on('change', function(event) {
alert('changed');
});
>>717538
#295 #717538
>>717510
Ну ему нужно другое поведение. Я ему написал другое поведение. Он не просил другую разметку. Потом тут ты добавляешь логики для бекенда, которая ему нахуй не нужна. Надо еще выводить лишний тег. Может у него уже есть компонент который распечатывает селект, его придется менять. Если ему понадобится чтобы скрипт срабатывал после того как он 2 раза подряд выберет "2".

>их для этого и придумали


Не для того их придумали, чтобы ими все засирать. У него в этой модели данных 4 опшена, ты предлагаешь добавить пятый костылем.
>>717514
Нихуя же по сути не меняется. Смысл этого события в изменении.
>>717546>>717547
#296 #717546
>>717538
Криво написал.

> Если ему понадобится чтобы скрипт срабатывал после того как он 2 раза подряд выберет "2".


Это к

>В смысле один раз?



>Смысл этого события в изменении.


А ему надо отследить, событие когда ничего НЕ меняется в том числе.
#297 #717547
>>717538
твой вариант не слишком хорош, ибо работает крайне избирательно. Например, в хроме, обработчик не вызывается, если его навесить на option. Даже если в option прописать класс/id и навесить обработчик на этот класс/id то он всё равно не вызовется
>>717560
#298 #717551
Что-то мне подсказывает, что проще сделать кастомный селект и не ебаться с этой парашей.
#299 #717556
Как изучить ваш сучий ес6? Я устанавливаю какой-то react-2020-smoothy-starter-kit, запускаю эту хуиту, вижу что оно работает и... всё, нихуя не понимаю как. Раньше я горел от тупости жабоскрипта, теперь от сложности.
2 года назад всё было уже не так ужасно, но достаточно просто. А сейчас это какой-то зоопарк пакетов с названиями одно охуительнее другого.
>>717568
#300 #717560
>>717547
Ну тогда, да. Мое решение хуевое. Можно еще просто клик по селекту ловить, вроде везде работает.
>>717562
#301 #717562
>>717560
а вот это уже работает. По крайней мере в хроме
#302 #717568
>>717556
Я нихуя не понял. Как связаны es6 и какие-то "сложные" библиотеки? И нахуй тебе его "учить"? Ты это говно все равно не будешь использовать. Всякие там операторы типа let, будут еще лет 5 некроссбраузерны. А методы массивов все уже очень давно есть во всяких андерскорах и лодашах и работают там быстрее нативных.
>>717576
#303 #717576
>>717568
Просто хочу начать фронтовый проект на новых модных технологиях, а чет нихуя не выходит, даже не знаю с какого краю к этой куче подходить. Ощущение такое, что надо бы самому этот starter-kit собрать, чтоб разобраться че куда.
>>717582
#304 #717582
>>717576
Да реакт воще говно. Юзай backbone, lodash и epoxy.js
>>717596>>717611
#305 #717585
Поставил нетбинс.
Зашел в вкладку настройки Html/js
И охуел
bower,grunt,gulp,karma
Суука ? что это за ебала? это ВСЕ нужно или одно из них?
Нахуя такая мешанина тулзов???
>>717596
#306 #717596
>>717582

>backbone


>2016


Ты серьёзно? Может ещё нокаут?

>>717585
Зачем вообще нетбинс?
>>717602>>717603
#307 #717602
>>717596
Ну надо же с чего то начинать?
Нетбинс достаточно легкий и быстрый.

ЛУчше скажи зачем так много разных утилит и все ли они нужны?
>>717614
#308 #717603
>>717596

>нимодна. Пасаны в коворкинге латте попернутся, когда узнают.

>>717661
#309 #717604
>>717354
Бамп вопросу
>>717607
#310 #717607
>>717604

> spa


Что это?
>>717608
#311 #717608
>>717607
Single Page Application, одностраничный сайт с динамически заменяющимся контентом.
>>717625
#312 #717609
>>717354
Примерно одинаково.
>>717613
#313 #717611
>>717582

> epoxy.js


Ерохины пролезли в погромирование?
#314 #717613
>>717609
А для чего модулей больше?
>>717616
#315 #717614
>>717602

>ЛУчше скажи зачем так много разных утилит и все ли они нужны?


Если не знаешь, зачем, то тебе они не нужны.
>>717621
#316 #717616
>>717613
Каких модулей?
>>717617
#317 #717617
>>717616
Готовых компонентов, всмысле
>>717629
#318 #717621
>>717614
Ну охуительный ответ просто.
>>717631
#319 #717625
>>717608
А ну тогда конечно же Ероху бери. Его не надо изучать в отличие от этого говна для хипстеров. Вот серьезно там весь стак либ "бери и используй" нахуй вообще кому-то эти ангуляры нужны. Ах да, гугл пиарит.
#320 #717629
>>717617
Зачем они тебе? Компоненты как раз и есть костяк приложения.
>>717633
#321 #717631
>>717621
Соурсмаппинг, транспайлинг, компиляция ts, склейка, минификация, юнит-тесты, е2е-тесты, вся эта шелуха. Если до сих пор про них не знал, значит нет кейса для применения, а значит не нужны.
#322 #717633
>>717629
Ну чтоб не писать, очевидно же. Мне нужно запилить всё как можно быстрее, поэтому нет времени на написание компонентов для рекапчи, сокетов и всяких пагинаций
>>717635
#323 #717635
>>717633
Подбрось монетку, разницы все равно особо не заметишь.
#324 #717661
>>717603
Не в этом дело, как-то негоже в 2016 году вьюхи закрывать. Пришло время закрывать вьюхи! Вьюхи сами не закроются. Закрой их, закрой их ещё раз.
>>717715
#325 #717715
>>717661
Что это значит?
>>717779
#326 #717779
>>717715
Понятно. Значит даже с бэкбоном всё хуёво.
#327 #717916
>>714674
Что за IDE?
>>717921
#328 #717921
#329 #717923
Алсо, как меня заебал реакто-метеоро-даун, нихуя не разбирается в жсе и полез в это говно, думает, что чему-то научится, лол
#330 #717924
пацаны, а у вас в сублимтексте автокомплит для джэс хорошо работает?
>>717948>>717953
#331 #717936
Хорошо ли возвращать из каждого метода объект контекста вызова, то бишь this? Ну и реализовывать цепочки вида show().add().create() и тд.
>>717939>>717945
#332 #717939
>>717936
Вернее, правильно ли, считается ли это нормальным или от этого отказываются?
>>717940
#333 #717940
>>717939
Вполне ок
#334 #717945
>>717936

> builder pattern

#335 #717948
>>717924
мы тут все в нетбинсах лендинги пишем
#336 #717953
>>717924
Там какой-то пакет нужно поставить для нормального комплита по всем файлам. На t начинается, 4 буквы, забыл название
>>717956>>717957
#337 #717956
>>717953
я не могу назвать слово сразу, буду крутить барабан
>>717959
#338 #717957
>>717953
тайпскрипт
#339 #717959
>>717956
Вы букву назвать забыли
>>717961>>717963
#340 #717961
>>717959
буква ЭЙЧ
>>717962
#341 #717962
>>717961
Ты даун? Это три буквы.
#342 #717963
>>717959
я буду крутить и перебирать массив со всеми буквами алфавита
#343 #718057

> js


> Высокая производительность


Проиграл на весь опенспейс.
https://www.techempower.com/benchmarks/#section=data-r12&hw=peak&test=plaintext&l=cu8
>>718064
#344 #718064
>>718057
300к рпс - не высокая производительность? Что тогда высокая?
>>718074
#345 #718074
>>718064
Тащемта максимальная 500к+. Falcor - тоже нодовская библиотека.
>>718076
#346 #718076
>>718074
Подозреваю, что низкоуровневая параша уровня го. Лучше лишний сервак поставить, чем собирать хедеры из байтов
>>718323
#347 #718095
я у мамы хакир, хакнул двач

var posts = document.getElementsByClassName("post-wrapper");

for (var i = 0; i < posts.length; i++) {
var answerQuantity = posts.getElementsByClassName("ABU-refmap")[0].getElementsByTagName('a').length
if (answerQuantity < 1) posts.hidden = true;
}
>>718110
#348 #718110
>>718095
И что делает этот код?
>>718141
#349 #718127
Ты СОВЕРШЕННО не понимаешь в чем суть JavaScript. JavaScript это не раби «о, привет чуваки, зацените я слепил три гема и получился блог, гыгы». JavaScript это не псевдофункциональный код питона. JavaScript это не C#, Джава или ПХП. JavaScript это язык, на котором люди могут побыть программистами-творцами — ужасными, поехавшими, ненормальными чудовищами, которыми они на самом деле и являются.

Добавили промисы, а мы смеемся. Присыпали сахаром прототипы и назвали классами, а мы смеемся.

Три тимлида прыгнули с крыши 16-этажного дома, взявшись за руки после попытки разгрести код с тридцатикратной вложенностью, а мы смеемся и просим еще. Промисы, колбэки, асинки/авайты — мы смеемся. Модульность, асинхронность, непрерывная интеграция, юнит-тестирование, key-value хранилища, два десятка фреймворков на любой вкус — мы смеемся. GitHub позволил писать приложения на десктопе, запихивая в каждый хеллоуворлд отдельный браузер — мы смеемся. Мы бездушно подпишемся под чем угодно, наши предпочтения не основаны на здравом смысле, бесцельные споры — наша стихия, мы — истинное лицо современного IT.
>>718144>>718232
#350 #718141
>>718110
проверь
>>718143
#351 #718143
>>718141
Скрывает посты, у которых нет ответов?
>>718555
#352 #718144
#353 #718179
Знаете, я сегодня выходил покурить где то в час ночи на улицу. Спустился. Темно, но людей довольно много - быдло бухает где то дальше, в темной части двора, какие то тни ходят. А воздух теплый-теплый. Такой, каким должен быть. И ощущение такое стало, что этот воздух - он близкий и родной. До этого была какая то злая фальшивка, а теперь он стал какой всегда был, пока его у тебя не отняли. Настоящий. И хоть ночь была, но вокруг всё было белоснежно яркое - не лживым солнечным светом, а настоящим. Это как настоящий полдень. И фонари с короткими лучиками света далеко тянулись. Небо неразличимое, свет похожий выхватывал только части громад домов. И я понял, что дома живые. Если приложить щёку у дому, то покажется, будто он неподвижен. Это неправда. Если содрать рукотворные картонные оковы со стены и. прижаться к камню, то можно почувствовать, как дом дышит. Стены не монолитны. В них много отверстий, зазоров и другого. Дом втягивает в себя воздух всем, чем может. Долго, часами, иногда сутками. А потом тяжело выдыхает, выбрасывая на улицу переработанный воздух. Это и есть тот воздух, который так близок нам - плесени на куске камня в космосе. Мы сами создали тех гигантов и вступили с ними в сиимбиоз. Зимой мы греем их изнутри, поддерживая в них дремлющую жизнь, как в цветке. А летом солнце нагревает камни и гигант начинает дышать. Воздух постепенно меняется, и вместе с ними расцветаем мы.
>>718185>>718189
#354 #718185
>>718179
Не продолжай.
#355 #718189
>>718179
>>718179

> Зимой мы греем их изнутри, поддерживая в них


> дремлющую жизнь, как в цветке.


> А летом солнце нагревает камни и гигант начинает дышать.


> Воздух постепенно меняется, и вместе с ними расцветаем мы.


Вы только что прочитали типичную картину мира динамикобляди.
#356 #718217
зачем люди учат jquery не зная языка? извращение
>>718225
#357 #718225
>>718217
Не нужно знать язык, чтобы использовать jquery, в этом его прелесть
#358 #718231
bump
#359 #718232
>>718127
норм расписал
#360 #718323
>>718076
Вк и Digg так не считают.
Ты хотел сказать несколько десятков серверов?
>>718333
#361 #718333
>>718323
У вк сокеты на ноде, кстати. Насчет дигга не знаю.
На го пишут очень узкие места. Вроде сервера нотификаций. Который написали и 5 лет не трогают.
А сам вк или дигг писать на го - это нужно быть отбитым, потому что очень нерационально.
>>718379
#362 #718335
Поясните, как однопоточная нода может работать на 8 ядерах процессора одновременно?
>>718343
#363 #718343
>>718335
На каждое ядро нужно создавать по процессу
>>718344
#364 #718344
>>718343
Бля, и как все это контролировать
#366 #718349
>>718344
Нахуя тебе это знать, если ты базовых вещей не умеешь?
>>718359
#367 #718352
>>718344
внезапно ipc
#368 #718359
>>718349
Наверно что бы знать, нет? В ноде нуб, вот и спросил, хули доебался?
>>718363
#369 #718363
>>718359
Ты даун, я про то, что ты даже гуглить не умеешь, пидорашка
#370 #718368
Пездец. Во всех тредах поехавшие порашники разбушевались.
>>718371>>718373
#371 #718371
>>718368
А в этом они где?
>>718450
#372 #718373
>>718368
Иди нахуй, нубяра, никогда тебе не стать разрабом
#373 #718379
>>718333
Пуш уведомления на го переписали
Ясен хуй что писать все на го не получится.

По поводу узких мест - soundcloud тому пример обратного.
Самые узкие места можно и на сях с растом писать.
На js разве что фронтенд и то, что этому фронтенду рендерит шаблоны. Вот у нас на фронтенде джанга, а высоконагруженное ядро на го.

Я вообще не понимаю, как вы пишете асинхронный код, это же пиздец неудобно по сравнению с го.
Зато на го хуй напишешь gui и я себе сейчас ломаю мозг над этой проблемой, тут уже js больше подходит.
>>718393>>718538
#374 #718393
>>718379

>как вы пишете асинхронный код, это же пиздец неудобно по сравнению с го.


не писал, но осуждаю. яснопонятно.
#375 #718450
>>718371

>пидорашка


Слег швайнокарасей и либергнили
>>718451>>718471
#376 #718451
>>718450
Сленг офк
>>718471
#377 #718471
>>718450
>>718451
Ты так думаешь, потому что ты пидорашка?
>>718652
#378 #718506
>>714644 (OP)
Как в реакте добавить свойство какое-то в элемент? Ну, чтобы не делать во время лоада каждый раз document.getElementByID('id').huita = 'huita'
#379 #718538
>>718379

>на фронтенде джанга


Как ито?
#380 #718540
>>718506
Тебе зачем?
>>718542
58 Кб, 480x599
#381 #718541
Тян поясняет как стать успешных фрондэнд разработчиком с зп 200к с нуля

http://fritzmorgen.livejournal.com/874274.html
#382 #718542
>>718540
Ты с ответов мейл ру приполз?
>>718564
#383 #718543
>>718541
Стать трапом?
6 Кб, 434x45
#384 #718544
>>718541

> fritzmorgen

>>718553
#385 #718546
[] + [] = ?
>>718551>>718557
#386 #718550
>>718541
да заебали уже на каждом шагу трубить об этом
меньше гонору - больше пользы будет
(кроме тех, кто на курсах зарабатывает конечно)
953 Кб, 848x1200
#387 #718551
>>718546
Пустая строка?
15 Кб, 608x128
#388 #718553
>>718544
тест не его, он только разместил объяву
#389 #718555
>>718143
да, чтоб смотреть только интересные вебмки
#390 #718557
>>718546
А следуя твоей логике, то должно быть?
>>718561
532 Кб, 975x1200
#391 #718561
>>718557
По-моему, всё довольно логично. У массива toString жоинит его запятыми в строку. + вызывает toString массива. Пустой массив превращается в пустую строку. Сложение двух пустых строк - пустая строка.
>>718570
#393 #718567
>>718564
Ты даун или аутист?
#394 #718570
>>718561
Если ты тот кто задал вопрос, то зачем задавал тогда.
Вопрос был похож на какой-то наброс.
Разумеется, всё логично.

Если автор вопроса не ты, то мне бы было любопытно, что по его мнению должно быть, если не строка.
#395 #718575
>>718506
Это вообще возможно сделать через реакт
>>718576
#396 #718576
209 Кб, 500x500
#397 #718580
>>718506
Сам уже нашёл, что там есть атрибут data, спасибо за помощь, пидорасы.
>>718588
#398 #718588
>>718580
но ведь как пидорас тут повел себя только ты
>>718591
#399 #718591
>>718588
Нет, не я.
#400 #718593
Пиздец, вы тут все ВКАТЫВАЕТЕСЬ что ли, хоть кто-то реально работающий есть? Задал простейший вопрос, не ответил даже про существование или не существование такой возможности никто.
28 Кб, 1017x552
#401 #718598
>>718593
Кто реально работает, тот тут не сидит. Сам подумай, зачем?
102 Кб, 802x747
#402 #718617
>>718593

>45 тpeдов мы вам перезвоним


>хоть кто-то реально работающий есть

#403 #718636
>>718506

>document.getElementByID('id').huita = 'huita'


ебан, ты что, напрямую дергаешь дом при работе с реактом?
>>718679
#404 #718646
>>718593
а нахуя мне тебе отвечать, маня?
#405 #718651
Есть какой-то готовый oauth-провайдер на ноде, чтоб можно было управлять клиентами? Бугурт, уже несколько дней ищу
#406 #718652
>>718471
Поссал на швайнокарася
>>718654
#407 #718654
>>718652
Ну и зачем ты на себя поссал?
#408 #718679
>>718636
А ещё надо?
#409 #718715
>>714863
Вообще никогда не писал на javascript, приняли на работу, всё норм.
Ни одной книги не читал вообще по нему, язык для долбаёбов, после с/c++ это просто какие-то кубики. Единственное что ебёт, так необоходимость дохуя всего изучать, не важно как это устроено, главное разобраться как пользоваться.
>>718719
#410 #718719
>>718715
Добавлю, что бекенд, и слава богу. Меня воротит от самой мысли о том, как эти фронтендщики ебуться с браузерной поддержкой и ES5.
#411 #718723
>>718719
Ты же ничего про это не знаешь, а кукарекаешь
#412 #718732
>>718719

>ES5


Добавляют строчку про бабел в бандлер, например.
#413 #718742
>>718719

>браузерной поддержкой


Пиздец, какая сила баек.
#414 #718784
>>714644 (OP)
http://void.hi-res.net/
При помощи чего рисуется такое огромное кол-во объектов без тормозов + плавный звук. Есть догадки, анон?
>>718787>>718881
#415 #718787
>>718784
Особенно поражает анимация на 3 слайде. Рисовать такие фракталы, и ни одного тормозка.
>>718790
#416 #718790
>>718787
https://www.chromeexperiments.com/experiment/void
Целая куча технологий, часть поддерживает только хром. А так красиво, конечно.
#417 #718803
Почему, когда делаешь запрос вроде этого
[code]
$.post('/method', '{}', null, 'json');
[/code]
то на стороне сервера в Content-Type всё равно стоит multipart-form-data?
>>718858
#418 #718817
Посоны, как мне отправить через сонсоль браузера файл? Вернее выбрать его с пеки.
>>718819
#419 #718819
>>718817
FileReader.
>>718825
#420 #718825
>>718819
Нене, ты не понял. Или я не понял.
Вот есть на сайте кнопка загрузить файл. Мне как-то нужно через js сделать так, будто она кликается и выбирается файл.
>>718831
#421 #718831
>>718825
Ты хочешь залезть на компьютер к пользователю и сам выбрать файл? Ты не охуел? У нас в стартапе за такие вопросы убивают нахуй.
>>718832
#422 #718832
>>718831
Пожжи, пожжи. Я хочу всего лишь написать в консоле своего браузера нечто, что выберет файл за меня, чтобы я не щелкал.
>>718833>>718834
#423 #718833
>>718832
Браузер не имеет доступа к файловой системе, не тупи
>>718840
#424 #718834
>>718832
Ты, блять, обслан.
>>718840
#425 #718840
>>718833
>>718834
Ууу точно, через multipart/form-data передавать только. Сорян ребят, совсем я запрограммировался.
>>718842
175 Кб, 440x387
#426 #718842
>>718840
Файла то нет, чего ты отправлять собрался
>>718847
#427 #718847
>>718842
Да я на петоне и спайнере пишу приложение, нужно как-то заполнить input type="file". Эмуляция браузера есть, думал через сонсольку браузера будет довольно просто заполнить этот input. Файл в папочке, естественно.
#428 #718858
>>718803
Доки говорят, что всё правильно делаю, а вот хуй! Где наебался?
>>718865
#429 #718865
>>718858
В хедере самого реквеста что стоит?
>>719133
#430 #718881
>>718784
WebGL же
#431 #719133
>>718865
Да. Беспонятия, почему так происходит.
121 Кб, 421x404
#432 #719231
NPM WARN OPTIONAL SKIPPING FAILED OPTIONAL DEPENDENCY /CHOKIDAR/FSEVENTS:
NPM WARN NOTSUP NOT COMPATIBLE WITH YOUR OPERATING SYSTEM OR ARCHITECTURE: FSEVENTS@1.0.7
>>719242>>719318
#433 #719242
>>719231
Выбрасывай шиндопланшет свой
>>719265
#434 #719265
>>719242
мимо
#435 #719318
>>719231
RM -RF NODE_MODULES
NPM INSTALL
>>719407
#436 #719319
>>714644 (OP)
Всем привет, объясните пожалуйста что такое ES6? Что вообще за ES такое? У кого либо есть план обучения, может кто-то составлял для себя? В принципе мне интересен node.js, но хотел бы взглянуть на любой план обучения, если кто-то поделится, Спасибо вам!
>>719323
361 Кб, 1280x1024
71 Кб, 672x462
REACTO-fil #438 #719324
Аноны, что-то я не моуг понять.
Разобрался с реакт, начал вкатываться в архитектуру FLUX,
наваял по гайду мини приложение,
шаг 1-2 понятны, понятно откуда берется изначальная инфа для рендеринга на страницу
но есть неразрешимые вопрсоы:
1)как задействованы диспетчеры?
2)Откуда берется аргумент payload с пика
3) Стоит ли юзать redux заместо flux?)
4)доп.вопрос объясните на пальцах как рбаотает ебаный dispatcher
ссылка на код https://github.com/Laconty/very-simple-rest-api-node.js/tree/master/app
>>719339
#439 #719339
>>719324
ваниль знаешь?
>>719363>>719380
#440 #719363
>>719339
Да не знает он нихуя, видишь же какие тупые вопросы задает.
Ещё один умник, решивший вкатится в реакт с почти нулевыми базовыми знаниями
>>719380
#441 #719368
Есть HTML страница и CSS файл к ней. Как (с помощью модуля или ещё как) автоматически добавить все стили из файла в атрибут style нужных элементов?
>>719385>>719418
83 Кб, 640x360
#442 #719380
>>719339
Ну вроде знаю, так в чем ж дело?
>>719363
посоветуешь что практичного ? сраный learjavascript прошел, freecodecamp осилил(кроме проектов последних ), еще несколько книги прочитал/пролистал, толку как видишь.. расскажи как подтянуть знания , обосрать я и сам себя могу
>>719413>>719417
#443 #719385
>>719368
Нахуя, лол? Их же специально отдельно выносят
>>719453
#444 #719407
>>719318
нехуя. на гитхабе эта параша до сих пор как баг висит
#445 #719413
>>719380

>Ну вроде знаю, так в чем ж дело?


Ну если знаешь, то зачем вопросы по коллбеки задаешь? Раз задаешь, значит не знаешь.
#446 #719417
>>719380
Отбой, я понял все вопрос и вправду очень тупой , сори
функция передается как аргумент, регестрируется в объекте listeners c уникальным id, и затем при любой функции вызванной в actions вызывается dispatch который проходит по всем зарегестрированным через dispatch.register фугкциям
#447 #719418
>>719368
postCSS зацени
#448 #719453
>>719385
Для превращения страницы в e-mail письмо. В письмах не поддерживаются отдельные или блочные стили, только инлайн.
>>719512
#449 #719489
Котаны, уже давно (пол года, чуть больше) упорно учу JS, прошел и прорешал learn.javascript.ru, сделал кучу задач начиная с нубского курса codeacademy, заканчивая калькулятором и прочими велосипедами для сайтов (сам писал слайдеры, функционал, логику).
Вот нынче еще получаю бакалавра по ит-специальности. И меня берет какое-то отчаянье - кругом требуются JQuery-"программисты", и люди-оркестры со знанием пхп. Может это только в моем мухосранске так?
Куда мне вообще метить, на какую позицию? Тупо верстаь не хочется, хочется именно программировать на JS сложные и интересные задачи. Хотя верстать я тоже умею - пять макетов разной сложности сверстал, адаптивность, автоматизация, умею читать и понимать документацию всяких npm-пакетов.
А вот пыху, JQury, Bootstrap и все прочие вообще пока еще не трогал. Стоит или нет?
#450 #719493
>>719489

>А вот пыху, JQury, Bootstrap


jQuery и Bootstrap учатся за вечер. Зачем ты туда пыху приплёл - я хз.
>>719496
#451 #719496
>>719493
В плане того, что в 90% вакансиях по запросу "javascript" висят веб-программисты со знанием пыхи. Ну, это в моем миллионнике.
#452 #719499
>>719489
если ты хорошо знаешь js и верстку, то поковырять бутстрап и jq у тебя проблем не вызовет
>>719500
#453 #719500
>>719499
Ну ладно, а устраиваться куда? Верстальщиком за еду для начала?
>>719502
#454 #719502
>>719500
а вот это уже тебе решать как бы
#455 #719512
>>719453
А как же тег style?
>>719629
43 Кб, 610x862
#456 #719521
>>719489

>уже давно (пол года, чуть больше) упорно учу JS


Пацаны, а полгода, это считается "давно учу"?
38 Кб, 636x501
#457 #719527
>>719489
Покажи несколько своих велосипедов
11 Кб, 200x200
#458 #719561
Анон, сможешь сказать, не открывая консоль, какой будет результат?

for (var i = 0; i < 10; i++) {
setTimeout(function() {console.log(i)}, 0);
}
>>719564>>719591
#459 #719564
>>719561
Было еще в 2015, уже не интересно
#460 #719591
>>719561
undefined 10 раз?
>>719597
15 Кб, 330x242
#461 #719597
>>719591
И че это за говно?
>>719725
#462 #719629
>>719512
Тоже не поддерживается.
>>719663
83 Кб, 886x718
#464 #719681
примесей вопрос

есть у меня две либы pixi и metter, одна рендерит, вторая обсчитывает. да, я нуб игродел.
объекты обеих либ имеют одинаковые по смыслу, но не всегда одинаковые по названию поля.
желаю не заниматься в каждом фрейме копированием данных из объектов энджина в в объекты рендерера, хочу накрутить множественное наследование, то есть создать пустой прототип, примешать к нему поля прототипов объектов обеих либ и кормить обе либы получающимися объектами.

проблема например в том что в одной либе угол это angle, а в другой rotation. объект, полученный в результате смешения получит оба поля. как сделать так, чтобы при обращении к этим полям объекта (при скармливании либам) через эти имена эти либы (и не только они) обращались к одним и тем же данным?
#465 #719725
>>719597
какой то счетчик эвентов ?? потому что я заметил как он меняется на 10 при запуспе скрипта, и кажду. секунду/пол увелчивается на 1
Так чё это?!
>>719728
#466 #719728
>>719725
Четырехзначное число - id таймаута
>>719862
#467 #719747
Пилю сайд-проект, нужен бэк с бд, особо тратить время на изучение нет, так как основной упор на react+redux на клиенте, подскажите самый быстрый и минимальный способ развернуть бэкенд, есть что нибудь проще и быстрее (в смысле разработки) чем nodejs+express+mongo?
Видел несолько backend as a service, firebase, backendless - но похоже я с ними буду разбираться дольше, чем с самописным бэком.
>>719790>>719901
#468 #719756
книги из шапки читать по порядку или просто выбрать любую?
>>719764
#469 #719764
>>719756
Какие? Там например есть книги по ангулару, реакту, жквери. Читать нужно про то, что ты хочешь изучить.
>>719765
#470 #719765
>>719764
интересует сам ванильный жс
https://github.com/xxxwww/js-thread/blob/master/Wiki/learn.md#Книги-про-javascript
просто 8 книг по нему думаю оверкилл если там будут постоянно рассказывать что такое переменные и примитивы.
#471 #719790
>>719747
На явеЕЕ пили.
#472 #719804
>>714644 (OP)
привет, котаны, установил MongoDB, но не получается запустить. Не видет хост и переходит в ожидание. Первая строка выдаёт hotfix kb2731. Как быть?
>>719806
#473 #719806
>>719804
Установи hotfix kb2731 или линукс.
>>719902>>720119
#474 #719814
Трогаю Redux. Поясните такой момент - когда можно делать AJAX запрос на сервер? В action нельзя, в reducer нельзя. А когда можно то?
>>719815
#475 #719815
>>719814
В экшенах как-раз таки нужно это делать, только нужно сделать миддлварю redux-think, чтобы можно было экшены в виду функций прокидывать, вот там и делаешь что хочешь.
>>719816
#476 #719816
>>719815
Понял, спасибо.
#477 #719862
>>719728
А, он 10 раз выводит 10... Это потому что сначала отработает цикл, а потом, из-за задержки сработает вывод? Но почему тогда 10 раз, а не один?
>>719910
203 Кб, 1200x784
#478 #719867
Ребята, привет. Помогите обучающемуся нубу
разобраться с несколькими моментами:

1) Правильно ли я понял, что объекты хранятся в массивах в виде
указателей на них, допустим есть массив объектов вида:
var a = [{n:0, s:"_"}, {n:42, s:"'"}, {n:9000, s:"^"}];
Допустим удаляем второй элемент, чтобы закрыть
брешь, будет ли достаточно операции a[1] = a[2],
или нужно в цикле for in по ключам копировать?

2) Абсолютно ли нормальна операция укорачивания массива
изменением length, или это какой-то полулегальный хак?

3) Правда ли что проводится подобная оптимизация памяти в JIT компилерах:
допустим объявляем массив в 20 миллионов
элементов, задаем значение первому и последнему, реально
памяти выделится лишь под два элемента?

4) Верно ли, что чтобы освободить память занимаемую элементом в массиве
в случае примитива ему достаточно присвоить undefined,
а в случае объекта null?
>>719905>>719907
#479 #719901
>>719747

> есть что нибудь проще и быстрее (в смысле разработки) чем nodejs+express+mongo?


Django
#480 #719902
>>719806
спасибо, не ожидал, что ответят на вопрос).
#481 #719905
>>719867

> 1)


Что за хуйню ты вообще несешь.

> 2)


Блять, родина вам дала Array.slice(), но нет, хочу говно жрать. Нет, так делать нельзя.

> 3)


Что ты подразумеваешь под выделением памяти элементу?

> 4)


Только если нет ссылок на созданный объект. И вообще от браузера зависит.
>>719921>>719928
#482 #719907
>>719867

>3)


На Хабре была статейка, как приведение к объекту такой хуитки вешало браузеры, т.к. все миллионы элементов реально создавались.
>>719921
#483 #719910
>>719862
Лел, в общем, желтый блинчик тебя выиграл, а это значит что ты идешь читать про замыкания.
#484 #719921
>>719905
1)Что непонятного? Указатели? Уже нагуглил - всё кроме примтивов указатели.
2)https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Array/length - тут врут?
3)Что непонятного?
4)

>Только если нет ссылок на созданный объект.


Это и так понятно.

>И вообще от браузера зависит


А вот это хуево.

>>719907
Благодарю, полезная инфа.
#485 #719928
>>719905
по поводу второго:

Самый простой способ очистить массив – это arr.length=0.

https://learn.javascript.ru/array
>>719929
#486 #719929
>>719928
При уменьшении length массив укорачивается.

Причем этот процесс необратимый, т.е. даже если потом вернуть length обратно – значения не восстановятся:
16 Кб, 238x397
#487 #719956
>>719986
#488 #719986
>>719956
Я как ньюфанчик понимаю так: при five++ из-за постфиксной формы отобржается изначальный контекст - пятерочка, а потом меняется на 6. Когда контекст поменялся то в новом контексте (шестерочки) нет свойства wtf - поэтому underfined.
>>719989>>719995
#489 #719989
>>719986
Но я еще с ооп в js не садился разбираться толком, поэтому можете тыкать носом в ошибки рассуждения
#490 #719995
>>719986
Только заметил что там есть второй раз underfined
Наверное, происходит потому, что после five++ наше five стало не объектом, а числом, поэтому свойство wtf записать не удается
>>720007>>720056
#492 #720056
>>719995
You are under arrest for underfined undercode expression.
#493 #720078
шаломирую, ребятки

необходимо реализовать менеджмент длительности сессии в т.ч. и на клиенте. как вам идейка использовать такой механизм:
0. запускаем таймер (секундный), который:
0.1. вытягивает из localStorage объект, назовем его никак. в нем будет храниться оставшееся время для логаута пользователя (0.1.1. если объект undefined, инициализуем его. если нет - устанавливаем время в исходное)
0.2. декрементируем значение на один, схороняем объект
0.2.1. проверяем, вышло ли время. если да - то..ну это уже неинтересно. если нет - ну значит нет еще

насколько такой подход хуесосный? localStorage из-за того, что приложение многооконное, ясен красен, и чтобы не возникло ситуации, когда в одной вкладке все нормально, а вторая уже вылогинивается
>>720089
#494 #720088
Нашел https://github.com/mgechev/angular2-seed
Может кто-нибудь сказать, как правильно сделать task для gulp, который будет собирать в продакшен без этого сида?
#495 #720089
>>720078
Ты ебанулся, что ли? В локалстроре можно ставить дату истечения данных
#496 #720092
>>720089
таяшхз, не жопоскриптник
>>720094
#497 #720094
>>720092
Ну ты ж читал про сторейдж что-то
>>720096
#498 #720096
>>720094
абсолютно нихуя, краем уха слышал, что есть такая штука)
#499 #720106
>>720089
как?
про куки знаю, про сторадж знаю что есть сессионные (стираются после окончания сессии) и обычные (могут храниться неограниченное время)
218 Кб, 686x536
#500 #720119
>>719806
>>719806
установил hotfix. Не видит хост, до этого тоже его не видел. Почему всё так, не знаешь?
#501 #720120
>>720089

>В локалстроре можно ставить дату истечения данных


а не пиздишь ли ты часом, разве что только через какую-нибудь либу-обертку
>>720138
#502 #720138
>>720120
Тут кококойто даун завёлся, всем охуительные советы раздает с видом знатока. Точнее он здесь уже давно, детектится по агрессивной манере общения и изобилию мата.
#503 #720181
Посоны. Я в жс даун.
Скажите как обучаться фронтенд пилить?
С голого жс или фреймворк брать?
Бакенд на пейтоне
>>720197
#504 #720197
#506 #720722
>>714644 (OP)
Книги в FAQ расставлены по возрастанию хода обучения? Т.е в самом начале первую (совсем для новичков) потом вторую и так далее (первый раздел). Или там совсем всё рандомно?
#507 #721654
На всякий случай перекину вопрос в этот тред
>>721650
#508 #722462
Есть какой-нибудь туториал как сделать соц сеть на node+angular ?
>>722804
#509 #722804
#510 #723288
Анон, помоги новичку. Нужны вкладки на js/query с одной особенностью, нужно чтобы кнопки и контент находились в разных блоках. Нужно сделать сайт не большой по нагрузке, но большой по кол-ву информации и я решил не делать кучу мелких страничек, а сделать все на одной используя вкладки в навигации.
#511 #725071
ТРЕД НЕ ЧИТАЙ @ ПЛАТИНУ СПРАШИВАЙ

Подкиньте пару примеров хорошего кода на джаваскрипте. Желательно небольшие проекты. 20к строк кода просматривать не времени, не желания, не сил нет.
35 Кб, 400x568
#512 #725730
В общем, я отстал от жизни года на 2-3. Застал хайп вокруг ангуляра. С ним все понятно, его пиарил гугл и у слоупоков и ньюфагов не видевших никогда нокаут, он вызывает вау эффект. Да и нокаут слишком лапшеобразный, понятно почему не взлетел. А реакт-то что за хуйня вообще и нахуй он нужен? Вот я гляжу примеры, какое-то говно не похожее даже на кофескрипт. И в рекламке пишут "simple". Нихуя не симпле. Покажите какой-нибудь пример и не туду лист, который бы делался в реакте проще чем в том же ангуляре или вообще без библиотек.
angular+node #513 #729786
Хелпаните, при роутинге на ангуляре, нода игнорить эти роуты и в результате не обрабатывает как сдедует. Ошибок никаких нету, в чем проблема?
#514 #734810
Как можно нажать на кнопку если у неё нет ID, а getElementByValue не существует.
>>734822
#515 #734822
>>734810
Всё, jquerry помог.
>>734825
#516 #734825
>>734822
Какой пиздец.
#517 #736415
Тупой вопрос.
Я в программировании полнейший нуб, но мне нужно написать юзерскрипт для одного сайта. Как мне (относительно) быстро это сделать? Что нужно для этого изучить?
Тред утонул или удален.
Это копия, сохраненная 7 мая 2016 года.

Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее

Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
« /pr/В начало тредаВеб-версияНастройки
/a//b//mu//s//vg/Все доски