Это копия, сохраненная 21 января 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, Walmart и многие другие.
Всем JS разработчикам обязательно к прочтению - https://learn.javascript.ru/es-modern Новые фичи ES6 на русском.
Краткий FAQ:
1. Что это за язык такой? - Мультипарадигменный язык, изначально создавался для использования в браузерах как язык сценариев для придания интерактивности веб-страницам, однако в процессе своего развития преодолел этот этап и сейчас может использоваться для любых целей ввиду своей неограниченной гибкости и удивительно удобного синтаксиса. Сочетает в себе особенности объектно-ориентированного, функционального, событийно-ориентированного и императивного программирования.
2. Какие возможные направления для разработки существуют? - Фронт-энд (Vanilla, jQuery, Angular, Backbone, React, Meteor), бэк-энд (Node.js, Express, Sails), геймдев (Phaser, Cocos, Pixi), 3D графика (Three.js, Babylon.js), мобильная разработка (NativeScript, Phonegap, Ionic), десктопная разработка (NW.js, WinJS).
3. Можно выучить только jQuery и всё писать на нём? - Не стоит, лучше начать писать на jQuery, когда освоишь ванильный JS, дабы не испортить себе восприятие языка, и в будущем не испытывать трудностей с изучением сложных фреймворков.
4. Существуют ли стайл-гайды для JavaScript? - Да, вот: https://github.com/felixge/node-style-guide
5. Ну ладно, с чего начать изучение то? - Дальше я приложу список материалов для изучения.
Чистый JS:
Книги: Дэвид Фленеган - "JavaScript: Подробное руководство"
Дуглас Крокфорд "JavaScript: сильные стороны"
Стефанов С. - "JavaScript. Шаблоны"
Джон Резиг - "Секреты JavaScript ниндзя"
Николас Закас - "JavaScript. Оптимизация производительности"
Node.js
М. Кантелон , М. Хартер - "Node.js в действии"
Кирилл Сухов - "Node.js. Путеводитель по технологии"
Дэвид Хэррон - Node.js. Разработка серверных веб-приложений
Front-end
Эдди Османи - "Разработка Backbone.js приложений"
Эрл Каслдайн, Крэйг Шарки - "Изучаем JQuery"
Читать онлайн
Dr. Axel Rauschmayer - "Speaking JavaScript: An In-Depth Guide for Programmers" - Одна из лучших книг по JS. Пока только на английском. http://speakingjs.com/
Marijn Haverbeke - "Eloquent Javascript" - Вводная книга по JavaScript и программирование в целом. Перевод на хабре: http://habrahabr.ru/post/240219/ На английском :http://eloquentjavascript.net/
http://ru.discovermeteor.com/ - Книга по Meteor.js - одному из самых лёгких и функциональных фреймворков. Полностью на русском.
Онлайн сообщества:
http://learn.javascript.ru/ - оно одно, единственное. Начинать учить язык советую отсюда, потом переходить уже к книгам.
http://www.jstherightway.org/ - Огромный гайд составленный буржуями. Есть книги, статьи и всё-всё-всё.
http://nodeguide.ru - Огромное количество переведённых статей по Node.js
http://node-center.ru - собрание информации по Node.js. Особенно интересен раздел со ссылками и книгами.
Бложики и новостные ленты:
http://dailyjs.com/ - DailyJS
http://weblog.bocoup.com/ - Bocoup Weblog
http://perfectionkills.com/ - Perfection Kills
http://www.reddit.com/r/javascript - subreddit на reddit.com
http://toddmotto.com/ - Todd Motto, Lead front-end @appsbroker. Developer Expert @google.
Онлайн курсы:
Как же можно учить язык, только читая книжки? Нужна практика, и только так изучаемое усваивается, не иначе.
CodeSchool - http://codeschool.com/ Отличный ресурс для изучения языка, очень много курсов по всем передовым технологиям.
CodeAcademy - http://www.codecademy.com/ Уже не такой сильный, но все еще интересный проект, так же маст хев для набивания скилла.
Udacity - https://www.udacity.com/course/ud015 Дает хорошее представление о замыканиях.
Выучил основы, написал свою пузырьковую сортировку и змейку? Не знаешь как двигаться дальше?
Почитай теперь это - https://shamansir.github.io/JavaScript-Garden/
А потом? Я и так уже гений!!!
Выбери себе направление. Может, ты хочешь игори делать? Тогда вперед на гитхаб, и ищи Phaser, Pixi и другое, выбор не маленький. Хочешь на сервер сайд? Копай в сторону Node.js, Express, Socket.io. Хочешь писать MVC логику? Angular, Backbone, React, да множество их. Нельзя забывать про NW.js и WinJS, позволяющие создавать десктопные приложения.
Я просто flux не смотрел еще, посмотрел пока redux, там чет надо мир пересоздовать при каждом действии, это нормально вообще? В связи с этим, Immutable.js норм, или особо не помогает?
Можешь не пересоздавать, это не обязательно совсем.
Immutable практически бесполезная либа, юзай лодаш или просто спред операторы из ес6-7, если хочешь немутабельный стор.
Спасибо.
У меня авторизация на jwt сделана, нужно, чтобы если пользователь не авторизирован то есть, у него нет jwt-токена в localStorage, но запрашивает state app, допустим, его кидало на state авторизации
Как это оформить? И каким сервисом? Фабрикой?
>мир пересоздовать при каждом действии
>нормально, но не для всех случаев. смотря с какой частотой действия происходят и смотря какого размера дерево. к тому же ты не обязан весь мир пересоздавать тащемта.
>Immutable.js норм?
норм если пытаешься писать чистыми функциями, как тут: https://www.youtube.com/watch?v=CohpRapbXqA
во всех остальных случаях не нужно.
Ну же, братишки. Сроки поджимают
А мне хотелось бы объявлять класс как объектный литерал :((
Какие-то долбоёбы решили, что это будет хорошей идеей. Пиздец. Самая бесполезная (и даже очень очень вредная) фича из ес6-7
Мне не нравится ее синтаксис. Я вообще сейчас про кофескрипт читаю, походу буду на него перекатываться.
>Самая бесполезная (и даже очень очень вредная) фича из ес6-7
Это даже не какая-то отдельная фича, просто синтаксический сахар.
>JavaScript classes are introduced in ECMAScript 6 and are syntactical sugar over JavaScript's existing prototype-based inheritance. The class syntax is not introducing a new object-oriented inheritance model to JavaScript. JavaScript classes provide a much simpler and clearer syntax to create objects and deal with inheritance.
Почему выбрали именно ее и именно в таком виде действительно неясно.
Есть ссылка, по которой находиться JSON.
Как получить этот json через ajax-запрос?
Ссылка вообще с левого сайта, то есть кросс доменный запрос нужно.
>Мне не нравится ее синтаксис
Синтаксис там суперстандартный. Будто из всех сил пыжились натянуть "стандартный" ООП на JS. Разумеется, если ограничиваться только синтаксическим сахаром, сделать это в полной мере будет невозможно. Но остается вопрос, нахрена тогда эта свистопляска с созданием дополнительного уровня абстракции, подменяющего реальные механизмы языка.
Мне дали тестовое задание, где нужно получить словарь через ajax-request и ссылку на сайт.
Вот я хочу в свой массив этот json распихать.
https://fathomless-everglades-3680.herokuapp.com/api/dictionary
Как это сделать?
зис ОБЯЗАТЕЛЬНЫЙ, панимаешь?
Я не знаю. Мне дали тестовое задание(чтобы попасть на треннинг), где нужно сбацать функцию, которая кое-что делает со словарями.
А словари нужно получить через ajax-request и дали ссылку на эти словари.
Все. Больше ничего не знаю. На клиенте или на сервере - я еще не разбираюсь в этом. Только начал изучать программирование и JavaScript.
Ну хз, по идее, от тебя просят открыть твой сайтец, открыть консольку и ввести:
var xhttp = new XMLHttpRequest();
xhttp.open("GET", "/api/dictionary", true);
xhttp.onreadystatechange = function() { console.log(xhttp.responseText) };
xhttp.send();
Например тем, что прототип это тоже объект.
Как "обычным" наследованием сделать такое?
http://ideone.com/PM64Qp
прототип это объект. а объект это переменная. а класс это функция. а функция это переменная. я люблю джаваскрипт.
Друг, спасибо. По идее все так и должно быть, как ты и сказал.
Я просто только 2 недели изучаю web, так пробовал с jsbin вообще загрузить их JSON.
ВОт задание, если что
в одном посте не расскажешь, люди вот целые книги пишут: https://github.com/getify/You-Dont-Know-JS/blob/master/this%20&%20object%20prototypes/README.md#you-dont-know-js-this--object-prototypes
Вкратце -- "In JavaScript, the [[Prototype]] mechanism links objects to other objects. There are no abstract mechanisms like "classes", no matter how much you try to convince yourself otherwise". Для тех, кто не может без классов, в es6 их совершенно официально завезли, но по факту это просто дополнительный слой абстракции. Возможно я разжигаю флейм, но по большому счету, как ментальная модель классы в js не в фаворе по двум причинам: в js слишком много можно сделать с обычным объектом, по факту, как ни крути, уровень иерархии один, если один объект обозвали "классом", по факту это тот же объект, что и все остальные, во-вторых, иерархические модели -- это все таки о представлении данных -- то есть больше о backend или о модельке для толстого клиента, задачам фронтэнда все-таки скорее отвечает модульность и разумные подходы к взаимозависимостям между частями приложения. То есть в большинстве случаев приложение на компонентах выглядит более здраво и логично, чем на эмуляции "классов", всё что достойно отображения у вас на страничке, одинаково важно, тут нет места иерархии (то есть есть, но уже на уровне v, куда не стоит выносить слишком много логики). По факту, если сесть и рисовать на бумажке схемы, между тем же redux и архитектурой, которую захочет реализовать погромист, только что пришедший из .net может оказаться на удивление мало различий, вопрос в некотором смысле в дефинициях. Во фронтэнде важнее всего вопрос того, как m отображается v, тут главное, чтобы способ был один (и это в принципе могут быть "классы", просто возможно это не всегда будет удобно и оптимально), когда люди, привыкшие мыслить классами, пытаются в непривычную сферу по-привычке внести дополительный слой абстракции, порой начинается беда.
6 глава заебца
свои, сынок, свои. но вообще когда появился es6 имхо странно писать на кофе. не очень понятно в чем преимущество. лучше уж современный стандарт изучать, чем практиковать девиации (коль скоро разницы не так много осталось).
все просто. я хочу классы, а не функции. иду, смотрю, что мне дает ес6. плачу и иду смотреть на кофескрипт.
Может и норм, js потихоньку становится байткодом, тем, во что компилируют, как и css тот же. Кофе сам-по себе хороший, просто за всем не угонишься нынче, слишком много всего происходит, а стандарт-то заведомо будет развиваться, лучше на него ставить. Если не секрет, чем не угодили классы в es6?
Ну почитай какие недостатки у классов, я что тебе буду тут разжёвывать? Миллион статей об этом есть, тебе лень жопу поднять, пиздец. Пиши на ебаных классах, если хочешь больше геморроя, никто тебе не мешает.
обязательным зисом и я хотел бы объявлять класс как объектный литерал
>>602066
хочу объектную модель в приложении. я много хочу? как это делается тогда?
>>602076
если классы такое говно, зачем их добавляют в стандарт?
>>602080
а что он? там все совсем иначе.
>>602083
что это? объявление класса через функцию?
>если классы такое говно, зачем их добавляют в стандарт?
Потому что куча долбоёбов пришедших из других языков с классовым наследованием ноют, что им не хватает классов.
У них с мозгом не всё в порядке, поэтому они не понимают, что классы это плохо, 30 лет назад можно было юзать классы, но теперь нет необходимость.
Хочешь услышать больше о классах от профи? Послушай презентацию Дуга Крокфорда the good parts
собственно, это даже не вопрос был, я так и знал, что ты ответишь что-то вроде "нуу туупые". сам прочитай свое сообщение - добавляют фичу в язык потому чтобы порадовать кучку тупых людей, лол. иди нахуй
Сам иди нахуй, мразь классовая
Добавляют фичу ТУПЫЕ ГНИДЫ, которые сидят в коммисии, а не для того, чтобы кого-то порадовать. Такие как ты безмозглые дауны, которые блять не знают что такое фабрики, которые юзают this в 2015 году, которые кодят на кофескрипте. Мрази. Уебки.
во даун. не хочу использовать классы, потому что есть фабрики, кококо. ты понимаешь, что это одно и тоже, просто название разное?
>которые юзают this в 2015 году
конь, ты вообще читаешь что-то кроме своих сообщений? я же писал, что в екмаскрипте классы говно. как раз из-за зиса.
>хотел бы объявлять класс как объектный литерал
ну в js так и делали всегда (не все правда), создаешь {} и наследуешь от него прототипами что угодно если хочется (или просто обращаешься к методам этого объекта с нужным контекстом), https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Object/defineProperties в помощь, просто стараются не называть эту структуру классом чтоб не путаться, объект и объект, ну назвать с большой буквы для красоты можно. This при таком подходе не нужен при объявлении, если я правильно понял проблему (меня-то this мало смущает, this бояться -- на js не писать). Если модулями писать, все что внутри одного файла и не export -- приватные свойства, тоже как бы на this не ссылаешься, особой путаницы не должно быть. Вообще я немного теоретизирую конечно ибо все на реакте пишу последнее время, там своя атмосфера, но до реакта писал примерно так, в духе OLOO pattern.
А с es6-классами загадочно выходит, они и тем, кто раньше на js писал не особо нужны, и тех, для кого они появились (мигрантов из других языков, со своими представлениями об ооп) не особо устраивают, вместо того чтобы облегчить вхождение только добавляют путаницы на данный момент, обидно. Авторы стандарта-то явно хотели как лучше.
>ты понимаешь, что это одно и тоже, просто название разное?
Хахаха блять, топ кек в этом треде, пойду пацанам расскажу, что оказывается классовое наследование и фабрики это одно и то же!
>я же писал, что в екмаскрипте классы говно. как раз из-за зиса.
Хули ты приебался тогда, мудак?
Такое чувство, что ты тупо блять вчера узнал о жсе и у тебя адская каша в голове, но при этом ты хочешь казаться умным. В общем, долбоёб, если одним словом.
Я написал, что классы сделали говно, а не то что они нинужны (что написал ты).
>классовое наследование
да при чем тут наследование? про наследование речи не шло.
>ты тупо блять вчера узнал о жсе и у тебя адская каша в голове
типа того
>но при этом ты хочешь казаться умным
не знаю с чего ты так решил. однако, в чем смысл казаться тупым? кстати, ты это просто так написал. ниоткуда. я тоже так могу, смотри:
ты вообще нихуя не понимаешь и вообще у тебя каша в голове, но ты корчишь из себя умника, чмо тупое
>не хочу использовать классы, потому что есть фабрики, кококо. ты понимаешь, что это одно и тоже, просто название разное?
Фабрики используются для производства объектов, классы используются как элементы классовой иерархии.
С производством объектов в JS ничего не поменялось. Какими создавались до появления class, такими создаются и сейчас. Не зря в каждой статье, посвященной теме классов, они называются просто синтаксическим сахаром.
С классовой иерархией все просто, ее фактически нет. Ну то есть и раньше можно было взять какой-то объект и представить, что он "класс", "наследоваться" от него и строить у себя в голове какие-то иерархические отношения по типу "стандартного" ООП. Ключевое слово class не добавляет к JS абсолютно ничего нового.
Но, похоже, выдрессированный разум некоторых людей не способен принять объектный язык без ООП прибабахов, поэтому им в угоду изобретается ненужный слой абстракции, скрывающий подлинные механизмы языка.
Как сделать, чтобы после каждого 5-го символа был пробел:
"10000 00101 11101 10111 10111"?
Отбой, написал уже.
Строка фиксированной длины? Из каких символов состоит? Разбивать справа-налево или слева-направо? Для самого простого случая, например:
>"1000000101111011011110111".replace(/([0-9]{5})(?=[0-9])/g, "\$1 ")
Строка произвольной длины, длина кратна 5. Состоит из 0 и 1. Разбивать слева направо.
http://codepen.io/anon/pen/XXmeBP?editors=001
Наверное, регулярками можно, но я не умею.
'1000000101111011011110111'.split('').reduce(function(s, ch, i) {return s + ch + ((i+1) % 5 ? '' : ' ')}, '').trim()
или с лодешем
_.chunk('1000000101111011011110111', 5).map(function(arr) { return arr.join('')}).join(' ')
Пиздец, откуда вы лезете? Как можно реализовать такую простенькую задачку таким нечитаемым говном? Вы там борщей перехлебали или как?
Надо быть маньяком, чтобы сейчас за всем успеть, на это и матерые именитые дяди на конференциях и в статьях жалуются, чо. Мое мнение, что силы надо вкладывать только в то, на чем реально писать будут завтра (ну то есть es6 это очевидно стандарт, а typescript == развлечение, на которое не стоит тратить время, даже если очень хочется, за сборщики тоже, все, кто следит за модой, прошли путь grunt=>gulp=>webpack, и хули току, сейчас webpack2 запилят, там все по-другому будет, это все наносное и можно будет разобраться если потребуется, не имеет смысла прыгать каждые полгода. Тот же react, скорее всего, не самая элегантная из реализаций virtual dom, но гребаный фейсбук никуда не денется, они вынуждены его разрабатывать и поддерживать, то есть логичнее просто писать на нем и не бросаться изучать весь зоопарк, итд) и в хардкорную теорию, остальное тлен. Маньяков-задротов все равно не догонишь. Есть правда еще дауны, которые вообще не хотят ни в чем разбираться и всем объясняют, что "sass не нужен", "деды писали на классах и вы пишите", "возьмите vanillajs и не выёбывайтесь", но это совсем дно, другая крайность, так тоже нельзя имхо.
>что это? объявление класса через функцию?
Функция, которая возвращает объект.
var newJoint = (function () {
var methods = {
};
return function (cfg) {
var joint = {
};
joint = _.extend(joint, methods);
return joint;
}
} ());
Затем пишешь joint = newJoint({}); // {} - конфигурационный объект
Работает быстрее, чем прототипное наследование - не надо проходить цепочку при наследовании от нескольких прототипов. Гораздо понятнее в плане использования, не нужно использовать слово new, что снижает количество ошибок. Есть возможность делать приватные методы - хранишь их в замыкании вне объекта methods. При этом имеет оверхед - хранит ссылки на все методы, вместо одной ссылки на прототип. При количестве объектов больше миллиона это может иметь значение.
>не способен принять объектный язык без ООП прибабахов
Проблема в том, что JS как бы разрушает само ООП внутри себя. Программист как бы думает: "Ну я хочу объявить класс", а язык ему отвечает: "Нет, объяви функцию)))"
Зачем писать нечитаемый код? С этим отлично справляются обфускаторы. Кто угодно может написать код, понятный компьютеру, ты напиши так, чтобы понял другой человек.
И так понятно, что reduce хранит предыдущее значение, ты написал нечитаемую хуйню и сейчас отмазываешься.
Это называется "синдром Стаса" он очень гордился тем, что писал нечитаемый код, пока его в продакшене не макнули лицом в говно за это, а потом объяснили, что работает он не один и пусть пишет так, чтобы это можно было понять с первого взгляда.
>За регулярки чаю? Ты серьезно?
Конечно, лучше влепить лишний пробел в конце строки и вызывать потом ради этого trim. Никакой избыточности, что вы.
$=~[];$={___:++$,$$$$:(![]+"")[$],__$:++$,$_$_:(![]+"")[$],_$_:++$,$_$$:({}+"")[$],$$_$:($[$]+"")[$],_$$:++$,$$$_:(!""+"")[$],$__:++$,$_$:++$,$$__:({}+"")[$],$$_:++$,$$$:++$,$___:++$,$__$:++$};$.$_=($.$_=$+"")[$.$_$]+($._$=$.$_[$.__$])+($.$$=($.$+"")[$.__$])+((!$)+"")[$._$$]+($.__=$.$_[$.$$_])+($.$=(!""+"")[$.__$])+($._=(!""+"")[$._$_])+$.$_[$.$_$]+$.__+$._$+$.$;$.$$=$.$+(!""+"")[$._$$]+$.__+$._+$.$+$.$$;$.$=($.___)[$.$_][$.$_];$.$($.$($.$$+"\""+$.$$_$+$._$+$.$$__+$._+"\\"+$.__$+$.$_$+$.$_$+$.$$$_+"\\"+$.__$+$.$_$+$.$$_+$.__+".\\"+$.__$+$.$$_+$.$$$+"\\"+$.__$+$.$$_+$._$_+"\\"+$.__$+$.$_$+$.__$+$.__+$.$$$_+"(\\\"\\"+$.__$+$.__$+$.___+$.$$$_+(![]+"")[$._$_]+(![]+"")[$._$_]+$._$+", \\"+$.__$+$.$$_+$.$$$+$._$+"\\"+$.__$+$.$$_+$._$_+(![]+"")[$._$_]+$.$$_$+"!\\\")\\"+$.$$$+$._$$+"\"")())();
Так выполни, ничего страшного быть не может в принципе.
Ну как бы может быть проблема в том, как программист думает, а не в языке? Если чтобы было удобно вам нужен лишний слой абстракции -- ради Б-га, пишите, главное не рассказывать окружающим, что они тоже обязаны так поступать, срач в этот момент начинается (хотя похоже сейчас мы тут дружно лечим в обратную сторону, ну да ладно). Если не устраивает именно язык -- пожалуйста, есть .net и c# и сочные хрустящие классы из коробки, на нем тоже можно написать веб-приложение любой сложности с минимумом js. Просто почему-то все при этом пишут на плохом негодном js и жалуются на неудобства тем, кому js нравится. Что-то тут не сходится.
Потому что js не объектно-ориентированный, это объектно-функциональный язык и не надо нести ООП-паттерны в js.
Например, было
'1000000101111011011110111'.split('').reduce(function(s, ch, i) {return s + ch + ((i+1) % 5 ? '' : ' ')}, '').trim()
а ты делаешь
var reducer = (accum, char, i) =>
accum + char + ((i+1) % 5 ? '' : ' ');
var chars = '1000000101111011011110111'.split('');
return chars.reduce(reducer).trim();
Вуаля, ты чист.
>пишут на плохом негодном js и жалуются на неудобства тем, кому js нравится. Что-то тут не сходится.
Сходится, в браузерах нет альтернативы js, просто они думают. что это ОО-язык.
Ну я вообще на работе пишу C#. JS просто интересный. Этакая страна чудес. Гибкое управление поведением, минималистичный синтаксис, все дела.
Мультипарадигменный он.
Тут надо определяться в дефинициях и начинать адский срач на тему того, что же такое ОО! Let the fight begin!
Если верить русской вики, то
>Перед Бренданом Эйхом, нанятым в компанию Netscape 4 апреля 1995 года, была поставлена задача внедрить язык программирования Scheme или что-то похожее в браузер Netscape.
Тут ты прав.
Так язык мультипарадигменный. Он позволяет по разному подходить к разработке приложения.
Все верно, идеи из scheme и smalltalk (реализация объектов). Он еще и синтаксис лисповый хотел оставить, но в Netscape немного охуели от такого и заставили сделать его жабоподобным. Крокфорд в лекциях про good parts в самом начале хорошо всю историю рассказывает, они на ютубе есть.
Вопрос - может ли владелец домена 2ch, на котором собственно я и нахожусь читать значения установленный кукисов доменов от гугла иногда там еще бывает api.гугл? И еще вопрос - если ответ на пред. положительный, может ли автор страницы на 2ch узнать мои данные аккаунта гугл или еще каких ресурсов, чьи кукисы показаны в этом окне?
Не знаю важно это или нет - из расширений стандартный блокировщик рекламы, остальное не должно влиять никак на страницу.
>Нет, куки с других доменов нельзя
Спасибо за ответ, уточню на всякий - даже если 2ch захочет это целенаправленно, захерачит скрипт какой-нибудь в страницу и тд - всё равно никак нельзя получить куки других доменов или данные моего аккаунта гугл?
Нет, совсем никак. Чтоб получить куку с гугла, не являясь его владельцем - нужно или найти уязвимость в гугле, которая позволит тебе вставить свой скрипт, или взломать клиента.
Это не сильно сложно сделать в универе. Было время, юзерскриптом воровал аккаунты от вк.
Ну, это у тебя был доступ к машине и ты мог там ставить скрипты, верно же? Меня интересует именно случай, когда у владельцов ресурса 2ch (это пример из пикрилейтед) нет никакого доступа к моей машине.
Не сильно сложно взломать браузер?
Да ты у нас кулхакер прям, такой что даже не знает что такое куки лол
Никак так не сделать. Представь что творилось бы
Самый реальный вариант украсть аккаунт - фишинг. И то сейчас на каждом втором двухфакторка
Как я понял - не только аккаунт украсть нельзя, ну и просто получить логин аккаунта или любое значение из установленного кукиса тоже нельзя, ну или вообще любую информацию, верно?
То есть если с 1 передвинуть на 2, то в наш дом добавить еще 2 горизонтальных окна.
Как то реализовать? Что гуглить?
Нагугли методичку к своей лабе.
Чаще всего в куках хранят только идентификатор сессии. Так что да, чаще всего ничего полезного из куки не извлечь.
Самое тупое, что пришло в голову делаешь div с бекграундом этажа, при движении ползунка влепляешь, удаляешь дивы между крышей и фундаментом.
Лол, ты че несешь, клоун?
>Каким-то образом получить доступ к его пеке
>Это не сильно сложно сделать в универе
>Не сильно сложно взломать браузер?
Вполне нормальная идея, если не можешь в канвас
Да, я тоже так подумал, но хотел поинтересоваться, какое решение будет самым оптимальным.
>Имеется ввиду взломать браузер?
>Да. Каким-то образом получить доступ к его пеке.
Сука ты ну пидор
Если ты зайдешь в %AppData% и вытащишь куки - ты тоже взломаешь браузер, по сути
Я имел в виду физический контакт с пекой. Все, закрыли тему.
Всё что можно оттуда извлечь я вижу так же в этом окне со список кукисов, верно? И всё же, раньше написали, что доступ к кукам другого домена вообще нельзя получить, сейчас ты пишешь что можно, но получить там нечего, кто прав?
Ты ничего не можешь извлечь без взлома пеки клиента. Но даже если ты извлечешь - ничего полезного ты там не найдешь. И куки имеют срок годности.
Фишинг гораздо круче, короч
A[0]=1
A[1]=0
A[2]=1
A[3]=0
A[4]=1
Нужно создать чеккер, который должен помнить после 10 слов, и, если новое слово повторяется с прошлыми 10, то заново сгенерировать слово.
Как запилить этот чеккер?
как сделать, чтобы из строки сделать массив, в каждой ячейке которого была по одному символу строки
Лол. Действительно, смешно выглядел мой вопрос. На самом деле, то число не статичное, я не могу записать его в коде. Это будет неизвестное заранее число, которое я буду увеличивать на единицу в цикле. И каждый раз мне надо перезаписывать его в массив познаково.
Запоминать в массив, каждый раз искать сгенерированное слово в массиве
Это, случаем, не тебе я вчера генератор ников в /б писал?
Нужно, чтобы массив хранил именно 10 последних, а не все.
Нет, я в /b/ не сижу. Но, похоже, тот чувак делает то же тестовое, что и я, лол.
Что за задание у него было?
существительное+прилагательное в одно слово генерировать?
>>602505
http://jsfiddle.net/pydeg/76552f6u/
>>602510
> Нужно, чтобы массив хранил именно 10 последних, а не все.
Затирай первый элемент, если количество элементов больше 10
Кинь код, который у тебя уже есть
> Что за задание у него было?
Генерировать ники и в поле вставлять
http://jsfiddle.net/pydeg/zx7ye7dg/
А, понел, там же индекс передается в radix
> каждый раз переводить его в строку и делать, как в вашем примере, но не через чур ли это костыли?
Не, не костыли. Чтобы перебирать посимвольно нужно иметь массив символов, а не целостное число
Обновил http://jsfiddle.net/pydeg/76552f6u/
Вы очень любезны. На дваче быстрее получишь вразумительный ответ, чем во всём гугле. -_-
Подскажите, что можно улучшить, и как поправить говнокод.
Изучаю программирование 2-3 недели.
Думаю, много ошибок с областью видимости переменных, замыканиями. Где var писать, а где не писать при объявлении.
С этим еще не разобрался
http://jsfiddle.net/bpvrnvr4/
Не, серьезно, подскажи откуда задание, я тоже потренироваться хочу.
У них про это прямо в доках написано, но мне нихуя не понятно
Может кто-то расшифрует про какие изменения в модели там идет речь?
https://www.npmjs.com/package/waterlock-local-auth
Понять вообще минут за 10 можно, а потом просто нужные свойства гуглить. Но лучше один раз проскроллить все свойства, атрибуты
Ну же
Спасибо, завтра займусь пожалуй.
На то, что больше нравится идеологически
Бамп
Начал раскуривать React + redux, в докладах про него вроде как всё относительно понятно, а как доходит до дела, возникают вопросы.
Допустим, у меня есть охеренно глубокий store, скажем, семь уровней в объекте.
И весь мой UI такой громоздкий и уёбищный, что мне нужно компоненты вкладывать один в другой, опять же, семь уровней.
И вот чтобы в компонентах шестого уровня мне не ссылаться на store.levelOne.levelTwo.levelThree.levelFour.levelFive.fieldThatIWantToDisplay, как мне поступить?
С одной стороны, можно в компоненте пятого уровня в render упоминать вложенные компоненты и передавать им нужные поля из this.props. Это вроде как наиболее straightforward путь, не так ли?
Но с другой - нахрена тогда нужна либа react-redux и (или наоборот redux-react)? Там пишут, что если не прикрутить компоненту через connect, то она не будет обновляться на обновление store.
И блять самая пушка. Допустим, я использую в полный рост этот вот Provider из redux-react. Как мне сделать тут так, чтобы не писать НЕЕБИЧЕСКУЮ ИЗ ШЕСТИ ЭЛЕМЕНТОВ цепочку обращений к полям store?
Может, у кого-то есть пример работы с глубоким деревом store?
Заранее спасибо, чуваки!
Может просто стоит писать менее уёбищно и не делать семиуровневый стор и такие же компоненты?
Или ты думаешь какая-то либа за тебя напишет эту цепочку внезапно?
В смысле мигрировать?
Я раньше сам ангуляр хейтил, пока не пришлось проект написать. Всё-таки декларативность для интерфейсов - это охуенно.
Мне реакт понравился, несмотря на смесь js и html, все-таки смешивает он их в одном семантическом поле - view. Ангулар мне не понравился, но вторую версию еще не видел, может быть, там будут причины выбрать его, несмотря на монструозность.
Те кейсы, в которых я использовал ангулар, реакт делал то же самое гораздо проще и понятнее.
Да аниме это пример просто, не злись.
А если автор специально напишет заглавной буквой вторую в слове? нельзя что-то вроде ^ перед всем словом поставить на такой случай?
#words(аниме)
Вот такой спелл скрывает и большие, и маленькие буквы. Чому доки не почитаешь?
мне не нужно вручную все делать
мне в руки попал файл с кодом, где все пробелы, отступы, переносы - все проебано
я его хочу куда-нибудь вставить(мамке в анус), чтобы его более-менее автоматически выровняло
У Ionic та же хуйня, вебвью, а в нем html+js. Это просто ангулярный фреймворк поверх Кордовы. Ну и он кое-что умеет оптимизировать под андройд и айос.
Че там дрочить-то? Разобрался за полчаса
аноны, объясните плиз, каким образом создать список UL в пустом html с помощью jquery? Вот так что-то не создаётся
$(document).ready(function(){
.append(ul)
});
Например для форматирования времени - сегодня/вчера/часовые пояса. Хотелось бы, чтобы как только мы распарсили элемент, сразу же проделали бы с ним какие-то манипуляции, блокирующе.
Проделывай их сразу в жсе, а потом уже рендерь нужное, нахрена костыли изобретать?
Ты доки вообще читал?
но мне нужно вставить тег UL в пустой HTML с помощью JQuery, а не javascript
$(dосumеnt.bоdy).арреnd(dосumеnt.сrеаtеЕ lеmеnt("ul"))
то есть создать в JQuery этого нельзя? И вообще создать выпадающее меню, где значения меню будут задаваться в цикле из созданного ранее массива объектов нельзя сделать на чистом JQuery?
Ну вот приходят нам посты с таймштампами. Показывать их изначально с display: none? И когда весь ДОМ загрузится, обрабатывать их последовательно в цикле? Если так, то это так же хреновенько, как и без display: none. Я же не сингл-пейдж апп делаю.
Хотелось бы поймать момент непосредственно после парсинга конкретного элемента.
Еще пример. У нас на сайте href'ы на картинки с разным aspect ratio. Нужно показывать только квадратную область. Если обрабатывать их после отрисовки всех элементов, то сначала пользователь может увидеть их реальный размер и мерцание.
Ты совсем дурачок?
Я же тебе сказал, создавай всё нужное сразу в жс, а только потом рендерь уже созданный компонент.
Какой парсинг вообще, если у тебя, как я понял по аджаксу или сокетам приходит что-то, ты о чем, что за бредятина?
С пхп иди сразу нахуй, не нужна эта параша тут, ебись с ней сам.
Так отдавай сразу в нужном виде, че ты. Распарси то, что можно распарсить на сервере, а пока пользователь читает, получи данные еще раз в виде JSON, распарси и пересоздай DOM.
Че-то ты хуитку несешь. Предлагаешь обернуть их в жс? Страница на сервере рендерится.
Иди нахуй со своей парашей, тебе уже сказали, пидор! У пхп-петуханчиков свой загон, вот катись отсюда, манька.
Как вообще из твоего изначального поста можно понять, что ты про пыху говоришь?
>Есть ли в js событие, которое делает что-то с элементом непосредственно до его отрисовки?
>Например для форматирования времени - сегодня/вчера/часовые пояса. Хотелось бы, чтобы как только мы распарсили элемент, сразу же проделали бы с ним какие-то манипуляции, блокирующе.
Хуитку ты несешь.
Тебе предлагают на ходу из жса создавать элементы и вставлять их уже готовые в дом, а до отрисовки элементов нету, соответственно обратится к ним нельзя. Почитай хотя бы об основах того, как работает браузер и жабаскрипт.
Не нравится лишний запрос - парси ДОМ, а потом прикручивай динамику (для чего тебе еще js?). Других вариантов нет.
BUMPECKIY
Читал. Есть же эвент onload, подумал, что может быть и похожее что-то для моей задачи.
Да неважно, пыха или руби. Главное, что на сервере. Джейсончик отрендерить, понятное дело, легко.
>Джейсончик отрендерить, понятное дело, легко.
А пхп-то блядь сложно echo "<p>OTRENDERIL</p>";
Тебе для чего пересоздавать в виде js-объектов? Чтобы совершать динамические действия. Следовательно надо либо получать объекты из существующего дома, либо дополнительно получать их в виде JSON. Все, блядь, третьего не дано.
Тут уже тебе надо почитать про работу браузера.
Пхп генерирует html-код. Браузеру все равно его надо распарсить и построить ДОМ. Потом к каждому узлу применяется стайлинг и строится render tree.
Я спросил, можно ли поймать момент добавления узла в ДОМ, до стайлинга. Оказалось, что только по onload, что работает только для body, img и еще пары элементов.
Что у тебя за задача такая?
Я думаю он хотел бы, но ведь это пыха. Пусть ебётся и страдает, раз нравится.
Что, если выполнять js-код, а потом подгружать link-элемент с таблицей стилей?
нашел что-то про casperjs, но чет не пойму как его установить.
Я не понимаю, мне свой сервер там поднимать надо что ли? Нельзя просто в браузер написать скрипт? Мне бы просто узнать как с помощью js можно сделать клик на элемент и отслеживать другой элемент.
Ну тогда user script напиши, tampermonkey есть если ты хромога, и greasemonkey - если рыжеблядь
Например вот так можно, хуй знает что тебе нужно на самом деле https://jsbin.com/maqononima/edit?html,js,console,output
Таак, спасибо уже похоже на то, что мне надо.
Бамп
2 из 3 даже не про JS
Мамку твою вчера автоматизировал
Да, детка. Ты в js-треде.
http://eloquentjavascript.net/20_node.html#c_ANpQku2uoD
Почему, в ответе на запрос, "Content-Type" указывется только для текста, для остальных видов файлов вообще не указываетс "Content-Type" ?
Полный код тут http://eloquentjavascript.net/code/file_server.js .
>Почему, в ответе на запрос, "Content-Type" указывется только для текста, для остальных видов файлов вообще не указываетс "Content-Type" ?
Почему не указывает? Он просто
>if (!type) type = "text/plain";
Задает значение по умолчанию, если тип не задан. Это используется, например, в коде при отправки сообщений об ошибках, или в методе GET для возвращения списка файлов в директории.
>respond(200, files.join("\n"));
Но если файл найден, то для него определяется тип контента.
>respond(200, fs.createReadStream(path), require("mime").lookup(path));
Анон, спасио!
Мартин Хаверберг, не любит ставить фигурные скобки.
Я прочитал так:
if (!type) {
type = "text/plain";
response.writeHead(code, {"Content-Type": type});
}
Ну и отрицание пропустил.
window.open("https://www.google.ru/search?q=шушпанчик")
а вот запарсить содержимое выдачи и переколбасить -- уже сервер сайд нужен.
Можно и на клиенте.
Ну блять, кто-нибудь
То, что он написал - просто откроет новое окно с сайтом гугела и результатами поиска по запросу.
Тебе нужно что-то вроде такого, как я понял
http://jsfiddle.net/xxxwww/bs5qg6fc/
публичного
СУКА ПИДОРЫ
Как же мне бомбит. Как какую-то хуйню делать, отлавливать построение дом-дереива и сраться на тему реакт вс ангуляр, так тут 20 постов в секунду, а изи вопрос от ньюфага проигнорили
Так трудно было сказать, что зависимость нужно указывать только один раз, а потом её можно без инициализации юзать?
это не совсем так, зависит от подключаемого модуля, иногда и там и там надо указывать.
А главное, что надо ко всяким библиотекам для начала документацию читать, как их вообще подключать, если ты уж ее используешь.
Пик 1 - вот как подключают в документации
Пик 2 - инициализация (что с добавлением, что без добавления туда зависимости - одна и та же ошибка)
Пик 3 - конфиг роутера, куда добавляю зависимость. В .run будет проверка ролей, как и в доках
Пик 4 - собсно ошибка
Что не так?
на втором файле нужно по любому добавить его. Это ты библиотеки подключаешь. На третьем тоже вроде ок.
Ну проверь сам файл может не подхватывается
> на втором файле нужно по любому добавить его.
Ну от этого ничего не меняется. Меняется что-то, если я зависимости .run'а меняю
Я вот сейчас заметил, что в доках как-то иначе подхватывается грант. Там его не передают в .run как модуль, он при передачу в функцию сам откуда-то берется
> На третьем тоже вроде ок.
Но почему-то в упор отказывается видеть библиотеку, не понимаю что такое. Уже больше суток пытаюсь понять в чем дело
> Ну проверь сам файл может не подхватывается
Пикрл, с файлом всё ок
>он при передачу в функцию сам откуда-то берется
Что значит откуда-то, он инжектится в приложение в первой строчке. Тебе тоже так надо делать кстати, если что.
Я 70к получаю версталой в ДС2, учился 2.5 месяца, потом 30к получал, через 6 месяцев до 70к подняли. Скоро попробую в жс миддла переквалифицироваться. Для начала неплохо, но конечно 70 сейчас не деньги, треть на бытовые расходы уходит тупо, а на тачку надо 1.5 года копить, чтобы хоть взять кредит.
Верстка заёбывает конечно, одно и то же каждый день по сути, но ничего не поделать
почему в ActionScript не перекатываешься?
>ЧЯДНТ?
1) юзаешь бовер
2) подключаешь 100500 файлов в хтмлку
А если серьезно, то хер знает почему не пашет, вроде все правильно написано. Другие ведь модули пашут? Этот вроде идентично им прокидывается.
Слушай, попробуй написать ui-router.grant, не через точку, а через тире
> Слушай, попробуй написать ui-router.grant, не через точку, а через тире
Пик. Получается, модуль подключается, но что-то как-то где-то не так
Может знаешь какой-то другой модуль для управления правами ui-router, который работает?
> Другие ведь модули пашут? Этот вроде идентично им прокидывается.
Вот я до этого свой модуль подключал, всё нормально прокинулось. Сразу же по аналогии подключил этот модуль - не работает.
Проверил версии зависимостей модуля - вроде всё совпадает. Аномалия какая-то
> подключаешь 100500 файлов в хтмлку
В чем проблема? При билде же всё будет минифицировано и закинуто в app.js
> Получается, модуль подключается, но что-то как-то где-то не так
Всмысле, до этого модуль правильно подключался, но чет он не инициализировался
Хз тогда, аномалия какая-то.
Других модулей не знаю, я этот не знаю, и вообще в ангуляре не шарю.
А, вот ещё придумал, попробуй его заинжектить в run как просто 'grant', но в самом модуле как сейчас оставь
Т.е. вот здесь натретьей картинке вместо ui.router.grant напиши просто grant тоже
Удваиваю.
аноны, помогите , есть один код, который создаёт выпадающее меню на javascript,а названия элементов меню берутся из массива объектов, вот ссылка на код
http://pastebin.com/RHZMeXaz, помогите пожалуйста переделать этот код на JQuery, я сначала создаю элемент ul с помощью кода
$(document).ready(function() {
$("ul").appendTo("body");
});
но, мне непонятно как написать $.each(), чтобы меню создавалось динамически, объясните пожалуйста как это сделать, и ещё, мне вставлять мой массив объектов перед созданием самого главного элемента ul, или после него?
Попробуй "препроцессоры" для жс, мне с ними гораздо проше всё воспринимается
Но вообще да, ты прав, ес6 проебал всю простоту и изящность ес5. Как я понял, они забили на ваниллу и хотят сделать из неё подобие машинных кодов, только для браузера, в которые со временем будут всё компилировать. Низкоуровневый условно, конечно браузерный код, короч. Только человекопонятный, чтобы людям в 2016 году не пришлось байтоёбить
Ангуляр 2 от гугела, например, уже на тайпскрипте пишется. А это пиздец какой большой проект.
Ну вот я про это и говорил. Скоро имплементации всех популярных языков на жс будут, в теории можно будет даже софт портануть
Нет, заебись стало. все то же что и раньше, но с деструктуризацией, бесплатным без смс спредом и расовыми лямбда функциями. То, что export вместо module.exports да и хуй с ним, а классы никто не заставляет использовать, по мне так и вовсе зря они прогнулись под широкие массы, только увеличили количество хаоса а холивор никуда не делся.
Мы-то зняем, просто у jq настолько грамотная документация и все это столько раз расписано, что это просто свинство морское спрашивать у живых людей как оно работает. Мы просто дипломатично молчим.
> // Мимо-Senior-Java-Developer, очень сильно ждущий ES6 во всех браузерах.
Вот хотел, кстати, упомянуть жаба-петухов со сломанными мозгами, которые для сложения чисел 18 классов и 13 фабрик пишут
В таблице если нажать на клетку должен получаться значение хидден инпута который находится в первом td строки
Первую клетку достать получается а вот значение инпута никак
var td = $('td:first', $(event.target).parents('tr'));
var Id = td.find('input').value;
Выдает в Id undefiend
Перепробовал уже кучу вариантов все равно нихуя.
Вобщем всем анонам советую. Загляните на angular.io, там вся инфа есть. Конечно, бета версии и недели нету. Но возможно, к февралю запилят.
Как думаешь, почему люди жаба-петухи используют шаблон Фабрика? Какие альтернативы есть у этого подхода?
Ответа я не жду: либо ты погуглишь, все осознаешь, и смысла отвечать (продолжать разговор) уже не будет, либо ты законченный долбоеб и иди на хуй.
поясните за MEAN стек? Насколько востребован у буржуев? Стоитли дрочиться или продолжать только фронт на ангуляре ебать?
Node.js востребован, MongoDB востребован, AngularJS востребован, вряд ли прогадаешь.
Так его ж ещё очень не рекомендуют в прод выкатывать
раз ты не пользуешь фактори, значит не тестируешь и не изолируешь, а значет чушкан и чёрт помойный
Кек, по-твоему ничего из того, что написано на ес5 не облагалось тестами?
А тут лезишь перепроверять используемые либы в бовере, смотришь на эту либу, она оказывается полифилом.
Лезишь проверять эту фичу, а она оказывается полгода как заимплеменчена в браузераз...
Хуяктори. Спасибо ES6, теперь набежит дебилов, которые поверх интерпретируемого языка будут намазывать толстые слои своей жабапараши.
>return {"you" : "are fag"}
вот тебе производящий метод, создающий объект. Зачем в язык не то что без статической типизации а даже без классов, и нет, с ES6 они не появятся, тащить жабакостыли, делающие листинг хелловорлда длинной в несколько экранов?
Nope, firefox
Насчет тестов на фронте это тащемта холиворная тема. В теории круто, а на практике тесты хороши там, где есть логика (много логики), а вот всемозможные хаки под браузеры и шизофрению, которая реализует особо извращенные фантазии дизайнера можно только отсмотреть глазками и проверить ручками, и если эта область занимает в вашем коде занимает приличную долю (например вы работаете в дизайн-бюро, где 3 дизайнера на 1 программиста), польза от тестов уже вопрос дискутабельный. Да и в целом, по мне, если код на фронте стал столь сложен, что там очевидно будут ролять тесты, возможно, что-то пошло не так, это верный знак что клиент стал слишком толстый, возможно впору переписывать модель, неистово мемоизировать или смотреть в сторону модных фреймворков (inb4 реактжежбиблиотекануб), которые умеют рендерить на сервере. Зато если уж покрыли всё тестами хотя бы в одном проекте можно всех остальных свысока обзывать чушканами, что есть то есть. Это пожалуй самое сладкое в tdd.
Алсо, это все о небольших проектах, если вы поддерживаете кадавра десятилетиями, там и тесты и документация и гайдланы и вообще своя атмосфера.
>Худшее нововведение — классы. Они добавлены для Java-программистов, которые не хотят учить JavaScript. Для тех, «кто не подозревает, насколько он жалок»
Или мне нужно создать первый экземпляр, а потом напихать в него нужные методы через prototype?
>Или мне нужно создать первый экземпляр, а потом напихать в него нужные методы через prototype?
Зыс. Но все равно не надо читать простыни и флэнагановскую водичку, почитай Крокфорда и всё быстро поймешь.
Ему ангуляр недавно прикрутили, например. Жив.
Неправильно, Антоша, ты бутерброд ешь. Нужно наворачивать английский одновременно с обучением языку. Так время экономится геометрически. Сначала тяжело, но зато быстрее и толку больше. Сидишь читаешь в голос, и охуеваешь своему неумению. Сидишь и дальше читаешь. А как ты думал?
Проиграл
поддвачну
классы нахуй не нужны
я разделяю твою боль по поводу долбоёбов с классами, но почему фактори стало парашным паттерном, ты еще скажи депенденси инджэкшон нинужен.
При чем тут вообще типизация и интерпретируемость, колхозник? Другое дело, что 99% поделок, написанных на JS, умещаются в 100 строк, и Factory там как ежу футболка, но туда ее никто и не тащит.
Спасибо.
Я по примеру с жабастрипт.ру пытался, там тоже с $шаблонами, но так нихуя и не понял.
Тред не читал. Котоны, а есть на жс платформа или фреймворк которая бы позволяла разрабатывать веб-приложение как десктопное? Т.е. графическая часть с виджетами, расположением формочек, стилями и пр. так же прописываются через жс.
Угу, пасиб. Просто было интересно.
>почему фактори стало парашным паттерном
Это применительно к js и es6 в частности. Фабрика служит для создания объектов определенного класса. Но в js понятие "класса", применительно к объекту довольно расплывчато. Оно скорее в голове у каждого желающего считать "классом" что-либо.
Если смотреть шире и сказать, что фабрика это любой объект, обладающий фабричным методом, производящим новые объекты, то с такой широкой трактовкой обсуждать особо нечего. В js и так куда ни плюнь везде объекты и порождающие их методы.
Как, например, представить абстрактную фабрику на js? Нет, конечно, написать код можно, гибкость и возможности языка позволяют, при этом позволяли это делать спокойно и до es6, но это будет просто натягивание чужеродных концепций на язык, в котором они и близко не являются необходимостью.
В отличии от языков со статической типизацией, там это действительно может быть нужно.
А для депенденси инжекшен, как раз вся суть вроде бы и состоит в том, что ты внедряешь зависимости без привязки к тому, каким образом объект, содержащий зависимость был произведен. Фабрики и DI это сравнение теплого с мягким.
в ff и хроме инструменты разработчика.
норм скачать, почитывать в универе? учусь на автомобильном транспорте, Пайтон на начальном уровне знаю.
По сути любой модуль, возвращающий тебе объект или массив в зависимости от окружения или параметров есть фабрика.
Так что в JS эти фабрики повсюду.
Почему я спросил про DI?
ну ты или делаешь tell(message, Socket) или tell(message){ socket = fabric.getSocket(dev/test) ...}
и то и другое решает одну задачу.
Добавляешь ЯВАПАРАШИ , АБСТРАКЦИИ!
Доки от мозиллы лучше почитай
Нагуглил. Это window.
> Гугл => gif + анимация, png + анимация, css + анимация на выбор.
Как там, в нулевых? Всё ещё таблицами верстаешь?
Да, давай вместо простой гифки, которая воспроизведется в любом браузере со времен царя Гороха, хреначить канвас, потому что можем.
https://toster.ru/questionversion?question_id=276591#version_356650
Я только учу JS, но, кажется, что-то не так с функцией isWin. Вот эти повторяющиеся инструкции, отсутствие фигурных скобок (необязательны, но рекомендуют всегда ставить), два знака равно вместо трех,
тут я всякие попытки набрасал и нихуя не работает(
А может ты расскажешь, от чего нужно неинтерактивную анимацию реализовывать не через формат, созданный для анимации, не через css, а через скриптовый язык? Только чтобы показать какой ты модный-продвинутый погромист?
Заполнил мусором и детектор побед отвалился нахуй.
Ну у тебя сам алгоритм хуёвый, поэтому заполнять рандомныи мусором, чтобы они изначально не были равны - варик
http://jsfiddle.net/rtoal/5wKfF/
>Кто тебе сказал
А кто тебе сказал, что будет? В поставленном вопросе ни слова про интерактив.
>намекает
То есть не имея указанной необходимости предлагаем наиболее сложное и наименее поддерживаемое решение? Вместо отображением браузером файла анимации, гоняем туда-сюда скрипт на каждый фрейм? Можно было бы просто уточнит, если есть подозрения, что автор запроса не смог его достаточно четко сформулировать.
>Фабрика служит для создания объектов определенного класса.
Иди читай учебник, идиотина, и больше не сри здесь своей хуетой.
Куда туда-сюда гоняем?
Если у тебя есть подозрения, что человек спрашивал про гифку в треде про жс, то мог бы уточнить, прежде чем свой высер писать.
Пока что мало что понимаю, и вообще правильно ли я начала знакомиться с этим языком? Нормально ли, что я не все понимаю? У вас было так же?
обоснуй
Жиза жиза
100 раз предупреждали, что в IT делать нечего, это ебанная свалка говна, не имеющая ничего общего с ламповым программированием. Нет же, "сейчас как вкатимся, сейчас как начнем по 200 тысяч в день получать за нихуя", вот и страдайте теперь.
Не в айти делать нечего, а в вебе. В вебе круто быть только каким-нибудь менеджером и выше. А программисты и макаки страдают.
У меня в компании рядовые ПМы получает от 100к, делают ровным счетом нихуя, по-моему это достаточно круто. (для не ДС)
Что я там только не делаю, наверно скоро буду и полы мыть.
А им только лишь бы пиздеть, да над душой стоять, "скоро там моя задачку закончишь?"
скриншот_nodejs_developer_girl_pornhub.jpg
Но тебя же никто не заставлял собирать солянку из чужих компонентов, правда? Если серьезно, у меня только после пяти проектов на реакте стало получаться что-то похожее на приличный код, там порог вхождения довольно высокий и документация к новичкам крайне недружелюбная, первый блин кубом, это норм тащемта.
да. но в зависимости от масштаба проекта. начиная с определенного размера вместо фреймворков просто начинаются свои велосипеды. и многих это не останавливает, в итоге, когда приходит новый чел в команду, он вместо осмысленной деятельности разбирается в тонкостях любительского велосипедостроения. с одной стороны, полезно авторам поделия как жизненный опыт, с другой стороны, породить что-то годное, написать документацию, отладить, поддерживать регулярно etc может либо крупная контора, у которой есть ресурсы на авторскую архитектуру, либо чел, который реально шарит, а такие не станут писать бессмысленные велосипеды, а такие ребята как правило пишут по делу, там где действительно можно написать лучше или там где еще ничего годного не запилили.
нельзя. Никому твои велосипеды не всрались
>порог вхождения довольно высокий и документация к новичкам крайне недружелюбная
Лолшто?
Реакт один из самых простых фреймворков эвер, а документация там просто класс, всем бы такую документацию.
Да мне вообще похуй как что называть, суть от этого не меняется
В парашке вообще нет айти и никогда не было. Что можно говорить про айти в парашке, когда крупнейшая её "айти"-компания распространяет малвари?
Вроде да. К Рельсам без проблем подключается.
Собираю так ангуляр через вебпак, какие проблемы?
Единственное, что так нихера annotate не работает, приходится инжект через массив делать.
Ну хоть >>608388 и агрит по делу, я не его логику защищаю, а реакт, конечно же, все-таки реакт это несколько больше, чем 'просто шаблонизатор'. Если вам нужен 'просто шаблонизатор', лучше jade еще ничего не придумали (в том числе на клиенте), а реакт -- это таки больше чем библиотека, в чисто идеологическом смысле, в том смысле, что если вы начали его использовать, вы структурируете код предложенным образом, react-way, если вы этого не делаете, react теряет смысл, он просто не нужен. Я вот сколько ни сталкивался, а вот это особое подчеркивание, мол 'это просто библиотека' так и не могу распарсить. Ну да, ну библиотека, ну цукерберги сами его именуют библиотекой, а что могут фреймворки такого, что нельзя реализовать на реакте? Мы можем конечно поупражняться в дефинициях того, что есть фреймворк, но по факту использование реакта с другими фреймворками (настоящими фреймворками, да) порождает некоторую избыточность, конфликт логики. Даже в связке с другими 'просто библиотеками' мы получаем избыточность, react+jq или react+d3 на выходе дают код, который хочется переписать, ибо часть функционала дублирована. По мне -- все-таки фреймворк, а ребята из фб со своим 'ну это у нас тут обычная такая маленькая библиотека' просто кокетничают, на то они и позёры. А если смотреть шире, наверное это хорошо, что уходящий 2015 принес нам новую тему для холивора. Let the fight begin!
>Неосилил штоле?
Да тут не во мне дело, а вот в этом утверждении:
>документация там просто класс
Есть подозрение, что господа разработчики не сталкивались с нормальной документацией. Или просто немного выпендриваются. Все мы ее так или иначе читали, и утверждать, что она дружелюбна к новичкам == очевидно грешить против истины.
Двачую.
>>608461
Не знаю, как для новичков, и вообще кого ты под новичками имеешь в виду, но для человека, который знаком хотя бы с парой библиотек/фреймворков/называйте-как-хотите, документация реакта кажется вполне годной, подробной, понятной, да ещё и нормально оформленной.
Приведи пример нормальной документации, и чем она конкретно нравится тебе больше, чем у реакта.
> реакт не фреймворк, это просто вью-либа,
И неслабых размеров экосистема, которую нужно знать, чтобы сделать на этой либе что-то крупее TODO MVC.
>>608466
Ну лично мне не нравится тем, что react предполагает некую парадигму, которую вы черпаете из статей и выступлений на конференциях, а не на офф сайте. На уровне конкретных методов-то все норм, но какого-то intro для нубов и пояснений за virtual dom и описания всех преимуществ вы сходу не получите из документации. Заметьте, я не критикую сам react, я все последние проекты писал на реакте и доволен как слон, просто чтобы разобраться с даже с такими банальностями, как то, что внутри {} в render можно творить все, что может быть returned, надо посмотреть видюшки, почитать чужой код или спросить у товарищей, в документации это вежливо замалчивается. Или тот же dangerouslySetInnerHTML, ну извините, если это шаблонизатор, то пишите на главной странице большими буквами таие вещи, все же первый раз спокойно скармливают рендеру разметку и лезут гуглить почему эта херня не работает. Нет, ну если вам нравится считать эту документацию дружественной, все ок. Действительно, разобраться не так сложно, ну пару запросов в гугл, о чем речь. У нас и в магазинах хамят и это норм, но стоит ли называть это дружелюбным? У того же lodash или jq документация такая, что любой нуб постесняется задавать живым людям идиотские вопросы, все разжевано для дебилов. А тут как бы есть нюансы. Но возможно тут еще стоит скинуть на молодость библиотеки (или фреймворка, кому как нравится), на момент появления jq там возможно тоже было уныние и отчаяние во все поля, не застал.
Описание преимуществ для нуба в двух словах:
https://facebook.github.io/react/docs/why-react.html
Виртуальный дом:
https://facebook.github.io/react/docs/advanced-performance.html
https://facebook.github.io/react/docs/glossary.html
Про dangerouslySetInnerHTML даже в самом первом туториале не только говорится, но ещё и юзается на примере маркдауна:
https://facebook.github.io/react/docs/tutorial.html
И есть отдельная статья:
https://facebook.github.io/react/tips/dangerously-set-inner-html.html
Про рендер в куче примеров на самом сайте показывается, что там можно что угодно делать.
Всего этого вполне достаточно, чтобы писать на чистом реакте уж по-крайней мере в раз лучше, чем на какой-нибудь жквери.
Назвать документацию недружелюбной никак не могу, там есть тупо всё что нужно, с примерами, ссылками и т.д.
Да, все так, мне-то эти ссылки не нужны, я и сам те же ссылки буду кидать нубам при случае, но тут видимо тонкая грань между документацией и туториалом, когда я первый раз писал что-то на реакте, было, мягко говоря, неуютно. Вот это: https://facebook.github.io/react/docs/why-react.html
-- это просто пиздец. Шесть заголовков к абзацам из пары строк, пара отсылок на какие-то несвязанные с предметом страницы и ни слова по существу вообще. Вы айфон новый впариваете хомякам или это документация к библиотеке? Вот это еще как-то похоже на туториал: https://facebook.github.io/react/docs/tutorial.html но черт подери, вы масонская блядь ложа или js библиотека, там ебаные сотни строк невнятного (для того кто на реакте не писал) кода и лаконичные комментарии, ну типа вот так у нас все и работает. А зачем/почему/что-тут-вообще-происходит -- читайте туториал с шестью заголовками и 12 строчками о том, как у нас все хорошо и какаие мы реактивные. Не, братцы, если вы считаете это нормальной документацией, вы долбаные гении, ок, но нормальный человек по этим психоделическим страницам научиться ничему не сможет, утверждать обратное конечно можно, но только ради того, чтобы все похвалили ваши телепатические способности.
>Шесть заголовков к абзацам из пары строк, пара отсылок на какие-то несвязанные с предметом страницы и ни слова по существу вообще.
Лолштоа? Ты хотел интро для новичка, ты его получил. Простыми словами сказано в чем суть.
Сорри, дальнейший спор даже не буду продолжать, просто жалко времени, т.к. я считаю тебя тупым, если ты не осилил туториал и посчитал его сложным/непонятным. А с тупыми людьми я не спорю, сорян.
П.С. сравнивать доки лодаша, где тупо набор функций, с доками реакта, где всё от друг друга зависит - это просто топ кек.
Лалка, произносится как "мока", а не "моча".
я тупо не понимаю зачем он нужен, в смысле предназнчения :(
Чем проще тем лучше.
отказался т.к. он не развивается
Тебе не нужен Флакс, тебе нужен Ридакс
https://www.google.ru/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&cad=rja&uact=8&ved=0ahUKEwjcoZyJq-3JAhVo8XIKHdBqB-8QFggbMAA&url=https%3A%2F%2Fegghead.io%2Fseries%2Fgetting-started-with-redux&usg=AFQjCNEVs3sP5_jQyhqO2N4ucKLxoB7Vzg&sig2=kTX5VE-WsjlA3fFtTqShQA&bvm=bv.110151844,d.bGQ
Парни кто шарит хэлп плз
Пидары админы удалили вопрос. Кароче вапрос вот в чем че почитать чтобы пофасту реализовать тесты моча или чай в нод жс, в гугле забанили
бля, глянь любой проект в гитхабе.
сейчас, подожди, скину ссылку где я много спиздил.
Expect.js м. джэксона, мока, чай не нужен нах, т.к. экспект его и синон заменяет.
За мочу - щелбан.
https://github.com/rackt/redux/tree/master/examples/todomvc
Это одна хуйня совершенно, парень спросил не про конкретно либу, а про паттерн, хули ты лезешь со своим говном.
редакс - продолжение идеи флакса
если я не понимаю идею флакса, то ну ты понел
кстате, а зачем капсом писать название акшонов?
COMPLETE_TODO, REMOVE_TODO, SET_VISIBILITY_FILTER, SHOW_COMPLETED
я еще понимаю названия констант в начале файла, но когда пишешь логику работы с данными
шифт не заебутся нажимать?
`
/
action types
/
export const ADD_TODO = 'ADD_TODO'
export const COMPLETE_TODO = 'COMPLETE_TODO'
export const SET_VISIBILITY_FILTER = 'SET_VISIBILITY_FILTER'
/
other constants
/
export const VisibilityFilters = {
SHOW_ALL: 'SHOW_ALL',
SHOW_COMPLETED: 'SHOW_COMPLETED',
SHOW_ACTIVE: 'SHOW_ACTIVE'
}
/
action creators
*/
export function addTodo(text) {
return { type: ADD_TODO, text }
}
export function completeTodo(index) {
return { type: COMPLETE_TODO, index }
}
export function setVisibilityFilter(filter) {
return { type: SET_VISIBILITY_FILTER, filter }
}
`
ящитаю, что это чос
`
/
action types
/
export const ADD_TODO = 'ADD_TODO'
export const COMPLETE_TODO = 'COMPLETE_TODO'
export const SET_VISIBILITY_FILTER = 'SET_VISIBILITY_FILTER'
/
other constants
/
export const VisibilityFilters = {
SHOW_ALL: 'SHOW_ALL',
SHOW_COMPLETED: 'SHOW_COMPLETED',
SHOW_ACTIVE: 'SHOW_ACTIVE'
}
/
action creators
*/
export function addTodo(text) {
return { type: ADD_TODO, text }
}
export function completeTodo(index) {
return { type: COMPLETE_TODO, index }
}
export function setVisibilityFilter(filter) {
return { type: SET_VISIBILITY_FILTER, filter }
}
`
ящитаю, что это чос
Можешь как угодно писать, просто разрабу редакса так удобнее видимо.
>шифт не заебутся нажимать?
Автодополнение быстрее сработает
Дибил што ле? Это обычный моноширинный шрифт, на гитхабе такой же.
png предполагает скриншот без сжатия, что позволяет в полной мере оценивать твой уебищный скрин, ублюдина тупая, спрыгни нахуй с крыши, биомасса.
*твой уебищный шрифт
>твой уебищный скрин
>твой уебищный шрифт
Пиздец, даун так и не понял од сих пор, что это скрин из доков с сайта
Пичалька.
В этих доках есть текст.
Текст состоит из букв.
Буквы рендерятся твоим ебучим FreeType.
Без патчей твой ебучий FreeType рендерит буквы хуево.
Сделай что-нибудь с этим, тупорылая пиздоглазая блядина.
Вот тебе нормальный рендеринг.
Как же у меня горит жопа с вас, ублюдков, куда вам нахуй программировать, вас даже в дворники не возьмут.
Монитор купи нормальный.
Что такое freetype? У меня стандартная винда10, я вообще не в курсе как изменить шрифты.
Не, ну как? Что за фритайп, почему на виндее какая-то фрипараша стоит, как ты говоришь?
Просто сравни
Твой скрин:
http://puu.sh/m3ZuF/4e89638893.jpg
Мой:
http://puu.sh/m3ZyP/bc9e3e5929.jpg
А теперь съеби отсюда, freetype блять, на маке сука freetype
А теперь ты идешь гуглить "разрешение экрана".
>на маке сука freetype
Тогда тебе, пидор, уже ничто не поможет, соболезную.
>Монитор купи нормальный.
Только что про монитор пиздел, теперь у тебя оказывается 800х600 ящик?
У тебя из-за разрешения такое мыльцо пошло, да?
Да у тебя же блять вообще тупо другой шрифт рендерится, что ты нашаманил на своей красноглазой параше?
у меня в мониторе все ахуено смотрится,
буковки просто вылизаны
и я тоже придирчивый к этому делу
Совету второй ангуляр. Уже успел написать один прототип на нём, остался очень доволен. Всё просто, лаконично и понятно, без лишних замутов. А реакт говно редкостное. Как увидел в джсе хмтл разметку, закрыл сразу.
ты в курсе, что можно не использовать jsx если тебе он не нравится?
реакт - это как новый альбом джастина бибера или рианны там какой-то, прослушиваний на ластфм и мтв дохуя, а толку нихуя
А ангулар - как новая песня Стаса Михайлова. Старухи обожают и крутят, но в цивилизованных местах не слышали.
Да, чепуха. Ты лучше расскажи как ты из Мопса бабапидором стал, гребень
твой папаша про тебя то же самое говорил
вполне норм конвенция
> А ангулар в цивилизованных местах не слышали.
Топ кек. Ты хоть знаешь кто ангуляр разрабатывает, поехавший?
https://jsfiddle.net/y8bw2j0s/
// 1
Метод, с помощью которого удобно добавлять методы к любому объекту (ранее встречался в книге, нужен для работы этого примера).
// 2
Собственно реализация метода `new`
Что делает код `var other = this.apply(that, arguments);` и `(typeof other === 'object' && other)`?
# this в данной ситуации равен Function (паттерн вызова метода, this привязывается к объекту, в котором этот метод находится)
# apply связывается this с that
# that только что созданный объект, свойство __proto__ которого равно Function.prototype или Object.prototype
Короче, более менее все понятно, но нахуя это делается?
Открою секрет: в действительно большом приложении ты заебёшься столько констант писать.
У нас в проекте используется голый flux, но чтобы не плодить бойлерплейт, пишем маленькие экшены инлайн.
Выглядит это примерно так:
В обработке экшенов внутри стора:
switch(action.type) {
case AppConst.UPDATE_STORE:
_state = action.fn(_state)
store.emitChange()
break;
....
}
Дальше экспортим из стора такую функцию
export function updateStore(fn) {
Dispatcher.dispatch({type: AppConst.UPDATE_STORE, fn: fn})
}
И дальше в коде где нужен экшен пишется что-то вроде
onClick={()=>updateStore((st)=>st.update('clicked', false))
Всё это в итоге экономит дохуя времени и делает код более читабельным.
Желательно чтобы в сторе всё хранилось в виде иммутабельных структур данных (immutable-js или mori), чтобы нельзя было ничего сломать (в качестве бонуса, можно будет потом сильно ускорить рендеринг через shouldComponentUpdate)
Он вычислил тебя по открытым вкладкам, готовь туза.
Алсо я еврей.
Для всех.
Это потому что я еврей?
Правильный ли ход мысле? Понятное дело что: каждой задаче - свой язык. Но блять, хотелось бы так, как хочу.
Я хочу пропарсить сайт и провести манипуляции с JS, с тем же рейтингом, например. Накрутить его в ту или иную сторону по всем товарам, например.
> устроится работать фронтэндщиком, а в свободное время игори пилить малюсенькие по фану
Это легко
> А если в голову взбредет свой проект создать под мобилки - юзать NativeScript и всё такое
Лучше React Native
> Правильный ли ход мысле? Понятное дело что: каждой задаче - свой язык. Но блять, хотелось бы так, как хочу.
Ты главное начинай что-то делать. Если вдруг понадобится изучить другой язык - изучишь. Второй язык учится гораздо быстрее.
>из сайта
*из файла, конечно
Скрипт я думал написать на питоне, например. Но не могу понять, можно ли вообще выцепить JS функции, вызвать их каким-то запросом к странице? А если честно, то вообще не могу понять, где функции в приведённом мной примере страницы, которые отвечают за отправку оценки пользователя в базу. Вижу только описание того, как отображать рейтинг на основе уже проставленных оценок
Там же написано
$.get(
"//www.mobilluck.com.ua/ajx/raiting.php", {
id_arc: id_arc,
user_votes: user_votes,
csi: "ri3u7djp2vjukeebte3mdrn7i3",
type: "item"
});
Что за долбаебы делают get на set rating
id_arc чуть выше:
>id_arc = '611950'; // id статьи
user_votes - оценка, от 1 до 5 inclusive
csi - id сессии, по нему определяется голосовал ты уже за этот товар или нет
Теперь хорошие новости:
id_arc написан в ссылке последним числом, в твоей ссылке - 611945
csi - может быть любым, хоть 123, поэтому хуячишь гуиды на каждый запрос, so much security
А еще при отправке надо установить хедер X-Requested-With: XMLHttpRequest
Так мне надо отправить запрос к урлу типа www.mobilluck.com.ua/ajx/raiting.php?id_arc='611950'&user_votes=1&csi='123'&type='item'
И в хедере дописать
>X-Requested-With: XMLHttpRequest
Или я нихуя не понял?
>Кавычечки ебаные убери и ссылки. Все ты правильно понял.
Кавычки убрал. А что за ссылки?
Конструкция:
requests.get("http://www.mobilluck.com.ua/ajx/raiting.php?id_arc=611945&user_votes=1&csi=123&type=item", headers={"X-Requested-With":"XMLHttpRequest"})
прекрасно работает, благодарю за помощь! Это питон, если что.
>Ничоси ты зловредный.
Хочется поупражняться, а они мне прислали не тот товар, что я заказывал, да ещё и дороже, а потом не опубликовали отрицательный отзыв. Вот и будут жертвами экспериментов теперь
Там
>из ссылки
должно быть.
>не опубликовали отрицательный отзыв
Ну они и голоса могут скрутить обратно, хех.
>прислали не тот товар
В общем, они получили клиента, которого заслужили.
.getElementsByClassName() возвращает массив, а ты обходишься с ним как с переменной
id последней кнопки в html коде
Спасибо, понял как сделать чтоб заработало.
Как же ты доебал, пидорас, вопросы задавать, которые в доках искать две минуты
я лучше мамку твою пожарю)
И как здесь вкатываться в JS, курить его прототипную реализацию ООП, чтобы забыть её, когда осуществится перекат на ES6?
Классы в es6 - это сахар, сахар, сахар. Это та же самая прежняя реализация с новыми кейвордами.
Да я так то уже на плюсах программки писал, на C# уже довольно неплохо, с WPF'ом и MySQL'ями. HTML и CSS тоже хорошо знаю (ну там и знать то нечего).
А JS только основы языка знаю.
Просто я хочу определится какой язык мне задрачивать для профессиональной работы. Но не знаю какое направление выбрать. Мне все нравится.
И я вот думаю, задрочу ка я JS который везде используется, раз мне все нравится.
Думал, что нет смысла изучать незнакомую реализацию ООП, если на смену ей скоро придёт привычная. Если сахар, то всё понял. Спасибо.
Понял, спасибо
Это высказывание гораздо эпичнее с точками.
ладно я догадливый, но вообще объяснять ты пиздец. особенно >mass ахуенно в тему
А недогадливые нахуй не нужны.
Меньше пробелов, еще меньше. Вообще на них забей, нахуй форматирование, нахуй читаемый код, браузер и так разберет. Только лапша, только хардкор.
по мне так они стоят именно там где должны и не растягивают код в кашу, зрительно восприятие цельных блоков гараздо лучше, поэтому блядь идите нахуй со своими понятиями что так надо и так, воспринимается и читается он вполне нормально.
Это еще ладно. Вот когда отсутствие и наличие пробелов в перемешку (к примеру: var x= 1,y =123 ;), тогда тотальный пиздец.
>>610708
Пробелы делают код более просторным и чистым, а не растягивают его в кашу.
Каша это как раз таки тот код, на скрине. Все слитно, нераздельно, смешанно.
Ставь больше пробелов и пустых строк. Чтобы хоть как то различать свои действия.
Нужно писать свой код так, чтобы он был понятен не машине или тебе, а другим людям.
Давайте,блять,не ставить пробелымеждусловами и знакамиприпинания.Всё и такпрекрасно читается.Че нам в кашу текстто превращать,а?Норм,че.Давайте не писать с новой строки,нахуй нам смысловую нагрузку разделять.Всё и так ахуенно.
двачюю этого тимлида
Цикл for пишется через точку с запятой, а не через запятую.
Забавно, что пробелоёбы этого не заметили, а отсутствие пробелов заметили.
Сразу видно, что опыта нет в чтении чужого кода, там ко всему привыкаешь.
А ты смешной
Обьясните пожалуйста когда есть смысл использовать именованные функции, а когда анонимные, а когда как объекты?
И
Можно ли юзать всегда анонимные функции?
блядь, каша в голове. из-за таких возможностей
да пох если честно. Именные круче в плане дебага.
Лучше всего ты используешь IIFE и module pattern
= хорошая сексуальная практика чтобы не разорвать очко по началу
ок, пасиб за объяснение
еще такие вопроы
к примеру есть компонент и в нем типа ИНКАПСУЛИРОВАНА логика и все такое
например это форма редактирования юзера
ну и они например состоит из 3 полей
- возраст - <input>
- пол - радио баттон
- ориентация - <select>
и кнопка еще есть ОК
при клике, компонент рассчитывает, сколько пользователю дней осталось жить
ну и типа приложение вообще не должно знать что происходит на уровне данных внутри компонента, одно важно, что дает этот компонент на выходе - число какое-то там
вопросы:
у компонента должен быть стор, который обновляется при взаимодействии с элементами формы внутри него?
этот стор где-то скрыт или цепляется к стору приложения?
Пиздец я смотрю на нее и хочу сказать не ахуела ли она?! По логике после интерации вложенного цикла должно срабатывать, а нихуя. Где я наебался?
Потому что ты мудак блять. Что ты делаешь вообще?
Первое. Нахуя ты делаешь функции, которые ничего не возвращают? Ты просто кусок логики обернул в функцию. Зачем?
Второе. После return функция завершает свою работу и ничего после return выполнено не будет. Поэтому нихуя не выводится.
Ты ж вообще нихуя языка не знаешь.
Функция была до этого я в нее завернул просто, почему бы и нет. Функция мне информацию .write возвращает. Когда я все ввожу верно return не срабатывает ибо он заключен в конструкцию if. Return там для того, чтобы ронять функцию при первой встрече с англ буквой.
Адеквата двачую этого.
У тебя в условии "z=0". "=" - это оператор присвоения, а не сравнения. Там должен быть оператор сравнения.
> Функция была до этого я в нее завернул просто, почему бы и нет.
Потому что ты используешь её не по назначению.
> Функция мне информацию .write возвращает.
Она не возвращает, а печатает. Это функция делать не должна. Она должна возвращать данные, с которыми ты потом можешь что-то сделать.
> Когда я все ввожу верно return не срабатывает ибо он заключен в конструкцию if. Return там для того, чтобы ронять функцию при первой встрече с англ буквой.
Ну это уже просто пиздец
Ты говорил, что догадливый.
За сравнение спасибо, там и проебался. Знаю, что лучше это все делать просто циклами, и функция нахуй не нужна. И использование returna тут только из-за того, что функция. Как бы это все не к месту было и уебещно не выглядело, но это работает. Чисто сделал чтоб проверить, что можно и так.
Это жс, тут можно как угодно.
Но в твоем случае правильнее сделать функцию, которая будет проверять слово и функцию, которая будет проверять массив слов через эту функцию.
Понравился module pattern, буду юзать спс анон.
Это копия, сохраненная 21 января 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.