Это копия, сохраненная 30 декабря 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Часто задаваемые вопросы:
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
Конфа /pr/ в Slack:
https://invite-me-to-2chpr.herokuapp.com/
JS-конфа в телеграме:
https://telegram.me/jsthread
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
Если не учитывать логику, то да. Сверху нав, по центру инпут и снизу простенький футер.
async/await пришли из божественного Шарпа, а генераторы - из недоязычка питона.
Т.е. js - это говносмесь всех существующих языков? Вначале колбэки, потом генераторы, потом промисы с нестингом и promise hell, потом промисы с bluebird (которые фиксят кривое API нативного Promise который выкидывает результат только в один блок), теперь async/await, и все эти вещи выполняют одну и ту же функцию, грац недоязычок.
https://jsfiddle.net/ak1frg5h/2/
Потому что функция вызывается в контексте видимости ста.
Работаю уже пол года, но на работе, как ни странно, таких задач мне пока доверяют. Говнокожу что-то на JQuery, код ревью есть, но всем похуй и никто на качество не смотрит.
Чувствую. что топчусь на месте.
Хотелось бы изучить все тонкости JS и ES6 - промисы, классы, короче все что сейчас все используют, а то чувствую себя ненужным (так и есть, лол).
Верстать тоже заебало уже, еще и хуйню всякую суют типа вордпресса и хабспота.
Еще хочу вебпак начать использовать, а через пол годика иметь хорошую базу под реакт/ангуляр второй.
И еще, у меня хуева туча пробелом именно в программистской профессии, хоть образование и математическое (мехмат).
Стоит ли почитать что-то типа SICP'a, Кнута и других библий для углубления знаний и попрогать что-нибудь на питоне для разнообразия?
Душа болит быть быдлокодером, лучше уж нахуй свалить из профессии, пока не поздно.
>Хотелось бы изучить все тонкости JS и ES6
1) спека
2) 2ality / Exploring ES6/ES2016 and ES2017
Ты не хоти, ты бери и используй/делай
Лол, не завидую. Я вот весь год дрочил js, тупо с перерывами поспать поесть (раньше так же играл во всякую хуйню, думаю это черта характера - задрот) изучил основные парадигмы/фреймворки/пару бэкенд фреймворков (немного бомбит с того что вся нода по сути дефективный клон экосистемы ruby) написал тысячи строк кода, щас планирую купить несколько книг в бумаге и по кайфу на диване читать ну и задрочить написание тестов и подобное прикладное говно. Если есть возможность дропнуть работу - то тут и думать нечего сразу увольняйся и думай в какую сторону хочешь развиваться (ну вообще конечно главное желание мне то похуй я молодой шутливый)
inb4 кукаретики цитирующие гринтекстом изучение фреймворков сразу нахуй
короче Антоны, такая мысль: если в ЖС есть шаблонные строки, которые 100% работают с нодой, зачем мне использовать разные template engines, когда теперь можно тупо делать темплаты в ЖС файлах и красиво запрашивать их через require()!?
ахаха, ЖС что ты делаешь, прекрати.
сабж https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/template_strings
Люди вместо jsx template strings юзали, стримы пилили и че только не чудили уже. С добрым утром короче)
вчера смотрел релейт, суть на 4,37 https://youtu.be/4sNUzqrhQqY?t=4m37s
про наряд тян-ведущей я молчу конечно)
я не так давно вкатился в ноду и ЖС. кста весной 2016 читал кантора, там про это вроде не было
Так я то сам этой весной начал учить js с Кантора, лол. Но это же не значит, что не надо смотреть по сторонам и читать другие полезняшки
Никакой, js и java это просто два разных сокращения для слова JavaScript.
сорта говна
Я не про то. Вот я читаю Кантора по второму кругу уже второй раз, но сейчас, при повторном прочтении я понимаю, что первый раз вообще нихуя не понял и нахватал по верхам только.
Тупо потому что нигде не использую и нет возможности использовать эти технологии.
На работе у меня целиком один проект, планирую отрефакторить его потихоньку под ES6, но там всего 500 строк кода.
Я спрашивал какие взять задачи самостоятельно, чтобы реально все это прочувствовать, где что применяется (прототипы, промисы, классы).
Хочется всзять что-нибудь типа морды интернет-магазина на ваниле наваять.
Хорошая идея?
Отвечать вопросом на вопрос признак дурного тона!
сейчас гей шлюхой быть актуально, все остальное от лукавого
По Фрейду же, ну.
Ну лично для меня не актуально, потому что я прусь от экосистемы реакта и на работе тоже он.
Для всяких хипстерков тоже не актуально.
Вот была статья во фронт-треде еще
https://medium.com/javascript-and-opinions/state-of-the-art-javascript-in-2016-ab67fc68eb0b#.ez
Что явно в ходу: реакт, ангуляр (на первом много всего понаписывали, поэтому поддерживать кому-то надо, на второй тоже некоторые перекатываются), вью.
Пройдись по вакансиям - поймешь много где требуется бэкбон или нет.
В любом случае на сколько я слышал бэкбон сам по себе не слишком специфичен, поэтому если нормально кодить - скилл поднаростить можно, типа мертвым грузом не будет висеть.
Но гарантировать я это не могу, так как сам не ковырялся.
> бэкбон
Как M/C в MVVM/MVC охуенен вместе с Marionette. REST, событийная система для моделей и расширяемость из коробки. Правда это мало кто понимает и большинство продолжают ебашить лапшекод на реакте вместо jquery.
> реакт, ангуляр
vue еще так же набирает популярность.
> вкатываться начал
Всегда с таких проигрываю. Хоть бы Вирта прочитали для начала, ох уж эти макаки.
Зато там все в одном флаконе и наверное конкурентов не много будет
2 книги по js прочитал из шапки, доволен?
https://davidwalsh.name/fetch
Of course that's a simple JSON.parse(jsonString), but the json method is a handy shortcut.
Бля, почему же UI не блокируется, пока работает Body.json()?
Где посмотреть исходники этой функции в V8, например?
Это моя фантазия, но было бы круто, если, например, (де)сериализация происходила бы интервалами, разгружая ивент луп для других задач, пока будет готов результат.
>Где посмотреть исходники этой функции в V8, например?
https://chromium.googlesource.com/v8/v8.git
Устроился в фирму, в которой фронт построен на самописном фреймворке похожим на ангуляр, только с багами и кучей легаси кода. Сборка происходит на bash скрипте и ребята не слышали о препроцессорах и gulp/webpack.
Как грамотно убедить команду попробовать перейти на React + webpack, переводя постепенно проект на современные технологии?
Заодно поделитесь преимуществами разделения фронта и бека на два разных проекта и репозитория. Как сохранять версионность api и фронта?
заказчик слушает всю команду, если я приду один и начну устраивать революцию меня на хуй пошлют
Тогда перепиши сам и покажи им насколько это эффективно. Не хочешь - увольняйся и не еби мозги ни себе ни людям.
Логично, но хотелось бы услышать юзерстори от людей, которые это уже пережили. Вдруг какие подводные камни есть.
А то тратить свободное время на переписывание сборки, что бы потом упереться в стену непонимания совсем не хочется
> упереться в стену непонимания
лолблять
Ну так спроси хули они не осилили но что-то стандартное инструменты перевести. Вангую дефолтный ответ работает не трогай.
Настолько хорошо платят?
> Как грамотно убедить
То есть ты просто хочешь использовать привычные тебе инструменты, а убедительно аргументировать их превосходство не можешь.
Никаких преимуществ разделения фронта и бэка на разные репозитории нет. Если не тестировать сразу всё это а херачить в разные места то потом будешь править десяток другой вылетов.
Зачем тебе вообще работать со старпёрами с синдромом утёнка? Требуй должность тимлида или увольняйся, если считаешь что не сможешь руководить.
автотесты, сборка, препроцессоры, библеотеки - это не просто привычные инструменты, это зарекомендовавшие себя практики работы с фронтом. Мне интересно как правильно убедить людей перейти на что-то новое, а не как описать их приемущества. Я могу весь день разглагольствовать о приемуществах технологий, но если я буду делать это не правильно меня просто не будут слушать
WAT?
я имею в виду что очень часто вижу разделение фронта и бека на разные проекты (полтора года аутсорса и фриленса дали немало опыта работы в разных конторах и разных проектах).
Или это все хипстерское дерьмо и нет объективных причин разделять эти вещи?
> Никаких преимуществ разделения фронта и бэка на разные репозитории нет.
Зачем ты несешь хуйню? Ты вообще понимаешь зачем разделяют бэк и фронт?
field['name_translations'][airport_name] - где airport_name - переменная.
Теперь же я перешёл на конструкцию:
field.name_translations.airport_name - теперь JS считает, что нужно искать поле airport_name в json строке. Он не понимает, что это переменная. Как мне показать, что это переменная, а не искомое значение в json?
> теперь JS считает, что нужно искать поле airport_name в json строке
лол
Ты уверен, что до конца понимаешь синтаксис этого языка и вообще dot нотации?
Нет, я только учусь.
Всё, разобрался. Правильный ответ: field.name_translations[airport_name];
У мамаши спроси своей.
https://jsfiddle.net/z2woo34k/8/
Подскажите как сделать смену цвета рисования линии при нажатии на кнопку, и смену толщины.
Это было актуально в нулевых, когда жс использовали в основном для перделок, а не для реального функционала. Сейчас так делают только поехавшие, ломая при этом 80% сайтов
Не думал, что такие в 2016 осталась.
нужно сохранить пдф файл (локально лежит в папке) в mysql с помощью js
структура таблицы USER
- firstName (varchar)
- lastName (varchar)
- image (blob)
- pdf (blob)
как сделать? анон помоги плз. Спасибо.
Да хуй там. В б не такие агресивные как здесь, пиздец. Пробежал php тред и просто охуел как у них спокойно. Охуеть просто вы тут как пауки в банке.
Ну там какой-то чел, который все курирует, всем помогает, на вопросы отвечает. У меня лично терпения бы не хватило отвечать на элементарные вопросы из первых глав учебника очередному долбону, который не удосужился почитать или погуглить и пишет тут с претензией будто ему мигом должны все написать.
Плюс споров какой язык гавно а какой там не наблюдается (а я хочу напомнить, что там все же php тред). А у нас что ни тред - так куча петухов залетных.
>как сделать
вангую файл нужно нужно в начале распарсить, потом уже дальше двигаться http://stackoverflow.com/questions/1554280/extract-text-from-pdf-in-javascript
На нем только ангуляр второй ведь?
А так да, согласен тс годнота на первый взгляд.
Все тот же руби анон
Плюсую, годнота. Особенно, когда окончательно впилят strict null и выпилят implicit any. Вообще, темпы развития очень высокие.
Что угодно. У меня реакт с редаксом. JSX изкоробки в TS.
Бамп вопросу
flow
>>893237
Ну вот иди и пиши на руби, заебали уже.
А то потом сидят и пишут, что там где-то треды уютней, хотя сами сюда приходят и срут: у вас то не так, у вас се не так, и это вот гавно, а вот после того как я своей мочи обпился на вашем гавне теперь писать противно и т.д.
Я конечно все утрирую, но реально достало каждый тред одно и то же.
Если че - не обижайся, это не личное, просто уже накопилось.
TS, Elm, ScalaJS, Kotlin, масса вариантов. Давно уже можно выбросить какашку.
Из всего перечисленного прицепился к тому, что более-менее норм. Отличные у вас тут вкусы как я погляжу
мимо
Потому что, маня, innerHTML используешь. А это залупа из под ногтей, а не динамичское добавление элемента.
Добавляй нормальным, естественным путем.
потому что ты, дурачок, на новый элемент хандлер не навешиваешь. Добавил элемент — добавил хандлер.
Всегда было интересно, как у таких как он, работает абстрактное мышление, чтобы этого не понимать.
знаешь, на самом деле все достаточно просто — можно назвать это уровнем детализации процесса. Мы с тобой понимаем как именно выполняется то, что мы написали в точности до определенного уровня (в моем случае — зачастую до инструкций на асме). На всех уровнях, что выше мы можем свободно оперировать абстракциями и представлять что будет происходить если. На всех уровнях, что ниже мы плаваем. Вот у чувака этот уровень детализации, видимо, на уровне абстракций языка, а все что ниже — черный ящик.
>Давно уже можно выбросить какашку
кста, мне очень интересно, как ты собрался реализовать асинхронность на фронтэнде, что бы твои же примеры не превратились в итоге в ЖС с колбеками. не слишком ли манянирково с твоей стороны критиковать ЖС не понимая даже сути проблемы?
не
уже сделал
там парсить не надо ничего было, генерить надо.
потом прочитать в стрингбаффер и вот его в базу в поле бинари.
>асинхронность на фронтэнде
async/await, либо лифтить мандадки. ну или можно с акторной моделью поиграться. или вообще промисы/фьючи + реактивное программирование.
>манянирково с твоей стороны критиковать ЖС не понимая даже сути проблемы
ну да, для тебя асинхронность - ахуеть какое откровение, лол. на самом деле, яйцеголовые все давно обоссали.
Пишу на реакте, задачи таковы:
1. Приложение должно получать данные от пользователя в html-форму и сохранять их в файл на локальной машине по желанию пользователя.
2. При запуске оно должно считывать данные из файла и подставлять в нужные поля формы.
Как реализовать второе, я знаю. Но как реализовать первое?
Сохранять нужно будет очень много писанины. К примеру, текст более 1к символов.
Повторюсь, что работать должно только на локалке, поэтому вариант с пыхой пролетает.
Локалсторедж не предлагать: ненадежно.
Читал про это уже. Но как я подставлю из простого текстового файла данные в поля форм? Тут нужно что-то вроде jsona, к которому нужно будет обращаться через ключи и подставлять их в поля.
Чем отличается Angular от Angular2? Имеет ли смысл учить первый ангуляр, если есть второй?
Ну вот например в требованиях к вакансии указывается "знание одного из фреймворков". Иногда перечисляется (Реакт, Ангуляр, бэкбон и т.д.), иногда нет.
Ангуляр 2. Все работает из коробки. Подход реакта не очень нравится, ебля с компонентами и прочее (мое личное имхо).
Ангулар 2 тоже на компонентах, лол
Ну он хорош частично, частично сырой. В остальном же имеет внутри совершенно хуёвые идеи. css в коде? Вот вам, пожалуйста. Html в коде? Хех, говно вопрос, ебашьте круды эффективнее.
Это нормально вообще? Задание переменных, таймеров, каких ьо сиен css...
Я просто ебнул через mouseenter/mouseleave и задал в css отношение, чтоб подменю по ширине было как меню. Функционал тот же, строк меньше. Или я долбич и что то не понимаю?
Пацаны, помогите понять асинхронность и асинхронное программирование. Если коротко: в чем фишка ноды? Почему асинхронность лучше N потоков? А может хуже? Если да то чем.
Только нормально ответься плз или скиньте статей. Просто вроде что то понимаю что "ууу асинхронность круто" а в суть вникнуть никак не могу.
Спасибо.
Смотри C10K Problem. И асинхронность не фишка эксклюзивно ноды, асинхронные фреймворки есть и под и под питон, и под джаву (акка, ня), даже у макакеров что-то появилось.
если такие есть, конечно.
Люди не могут в java, вот и пилят всякое говно.
Одно из преимуществ - js. Вот ты занимаешься фронтендом к примеру. Но нужен проектик с сервером. Так вот, теперь не надо учить другой язык - надо разобраться в api ноды и фреймворка, т.к. принципы работы языка ты уже знаешь и тебе он близок, то будет проще, чем с нуля осваивать какой-нибудь другой язык а затем его фреймворк.
Ну и после появления ноды по сути и пошло развитие всяких тулз и автоматизаторов для фронта.
>это я понимаю. а в чем преимущество ноды?
Хуево понимаешь, это некорректный вопрос. Не бывает сферических преимуществ в вакууме. Конкретизирую задачу.
Эх, сейчас бы дрисню на твердую и жидкую разделять.
короче, пацаны.
Нихуя не шарю в жопаскрипте.
как за день выучить чтобы норм втащить?
Скажите, что обычно джуниоров спрашивают?
собственно, требования такие:
-Знание Node.js, фреймворка express, LoopBack; (здесь как?)
-Знание JS (тут что учить? какие ключевые моменты)
- Основы работы с Git и БД (ну это понятно)
Спасибо люди добрые.
>выполнил тестовое задание вчера
И как ты его выполнил, если не шаришь?
Ну-ка тестовое задание в студию.
типа написать простое приложение на ноде
подается на вход имя
по имени в базе найти пользователя
сгенерить пфку из полей и записать в еще одно поле бинарное (использовал Buffer)
ничего особенного
я в смысле фундаментальных каких то знания JS и его фишечек не в курсе.
элементов этих у меня много (около 100), и мне надо что бы мой скрипт обрабатывал каждый из этих элементов отдельно, что делать?
Думал над тем что бы выборку элементво делать не по id а по классу, так же поступило предложение от мудрого:по data и через делегирование: если много элементов. Не совсем понимаю как вот это вот всё реализовать.
Алло, грубияны, хочу выполнять тестовые задания, на каком сайте сидить что бы получить побольше таких задач?
просто пиздани что кодишь на хаскеле "для себя" сразу обоссут
будем реалистами, никто от джунов знание спеки не ожидает, вот я и спрашиваю основные фишки js
прототипы, промисы, все такое.
если у тебя айди уникальные, не слишком ясно в чем тогда проблема? тупо селектируй каждый элемент по его айди и вешай на него разные хендлеры.
если у тебя айди повторяются, то ты хуй сделай из них классы, и работай с ними как с массивом
ну если спеку читать пока не охота - читни Кантора и Акселя (заодно проверишь как ты можешь в гугл)
Ну надо же дать второй шанс)
ок, спс.
просто думал кто то мне опишет, что должен знать джун как нибудь покороче, чтобы точечно почитать.
код то я писать могу, но знания приходят с опытом, а его как раз не хватает.
спс братан.
id естсественно уникальны, как же иначе.
> селектируй каждый элемент по его айди и вешай на него разные хендлеры
Можно пример, няш?
>сделай из них классы, и работай с ними как с массивом
типа:
>document.getElementsByClassName('class1')
Здесь на выходе я получаю массив состоящий из элментов с классом 'class1'?
Как дальше намутить его поэлементный обход и применение моего скрипта к элементам с таким классом?
p.s. я думаю уже понятно, что я в js не шарю.
Как сделать, чтоб при наведении на определенный элемент у меня происходило действие на элемент внутри элемента? Как простейший пример, выпадающее меню, наверное.
Т.е, чот тип того: набросал открывков кода
https://jsfiddle.net/utjLLy8d/
я хочу, чтоб было что-то типа
$('#mainmenu').mouseenter(function(){
$( ).fadeIn(700); <<<<< вот тут в скобках сказать жс, чтоб фейдин применился для списка ВНУТРИ #mainmenu, на который я навел мышку.
});
сразу молниеносный бамп-фикс, немного поправил код, чтоб не отрезало зрачки.
https://jsfiddle.net/utjLLy8d/5/
Немного повозился с this, но теперь банально выпдаает список только для одного элемента, лол
var kurwa= $('#mainmenu innnerList');
$('#mainmenu').mouseenter(function(){
kurwa.fade(700);
}
Так низя?
https://jsfiddle.net/utjLLy8d/6/
если так, то
а) на Main menu выпадает сразу два подменю, при чем оба на нем же и висят
б) на второй блок меню нихуя не выпдает
Почему если я ввожу неправильный ответ цикл не прерывается, а повторяется бесконечно.
http://codepen.io/Clark_Kent/pen/pNxwro
Вот самый простенький вариант, в начальном состоянии display none, при ховере display block. Но если хочешь, чтобы выглядело как анимация, то начальное состояние нужно делать высоту и прозрачность нулевую, и потом раскрывать их.
Очевидно же, надейтся другой талантливый человек. А у него, создателя V, что, закрытая документация?
Нет конечно, но китаец задротит целыми днями работая над своим фреймворком.
Вряд ли кто-то сможет продолжать это делать так же круто, чтоб в одиночку въебывать всякие реакты в бенчмарках.
Спасибо.
Если интересно, я, пока что, решил проблему так:
https://jsfiddle.net/utjLLy8d/7/
скрипт для меню вынесу в отдельный файл и буду добавлять как даун по 2 функции для каждой новой кнопки меню. Стыдно пиздец, но я НЕ ПОНИМАЮ как заставить работать код только для той, на которую навел мышку без смены айди на каждый.
The code does not execute properly. Try to figure out why.
function multiply(a, b){
a * b
}
и тут я охуел. Как я могу выяснить что происходит не так, если консоли нет?
Проиграл с тебя до девятого этажа, старина.
Ебать эта хуйня затягивает. Спасибо, анон. У меня проблема с растановкой задач, вот сейчас нужно дальше дрочить жиквери, тошно так это, задрачивать эти выпадающие меняшки и другие фендифлюшки, постояно отвлекаюсь. А тут прям залип, блин.
дай пять, собрат.
Надо читатьучить жквери, а я создаю образец сайтика, чтоб узнать что уже умею. Давнер.
Какая же юнити уродливая.
Есть один темплейт, который в упор не видит переданные ему роутером данные.
Что я делаю не так?
>Здесь на выходе я получаю массив состоящий из элментов с классом 'class1'?
this
>Как дальше намутить его поэлементный обход
примерно так http://stackoverflow.com/a/3871602
>Сам такой же, ксатти, пашу за 20к в большой международной компании уже пол года
>обвиняет кого-то в демпинге
Кек. Да ты же сам демпингующая макака.
что обычно спрашивают в основном по ноде?
в вакансии написано просто:
- знания Node.js
смешно (нет)
Ну окей, запилю поэлементный обход, каждый элемент массива буду дальше передавать в функцию в качестве параметра. Оно будет так же работать как и с id, только ко всем перечисленным элементам?
Полагаю, нужно пройти в гугл, написать там "скачать node.js последняя версия бесплатно без вирусов без смс" и запустить exe-файл из выдачи, можно через консольку.
я имею ввиду, какие понятия и механизмы следует знать для начала работы с нодой.
Помимо самого языка (он ничем не отличается в люом окружении js есть js) надо знать всё тоже самое, что нужно знать для любого серверного окружения.
Вот что тебе нужно знать, чтобы писать бэкенд на php\python\java\c?
работа с файловой системой\базами данных\протоколами\процессами и прочими, никакого отношения непосредственно к ноде не имеют.
Это вообще не имеет отношения ник одному языку.
ок, понял. спс.
.babelrc файл с перечнем установленных пресетов и плагинов для обработки добавил?
лол, разобрался, у меня .babelrc не так назывался (.babelrc.json). Это все из за .eslintrc.json, который требовал явного указания типа файла. Но спасибо, я бы не обратил внимания без твоего комментария.
Ты СОВЕРШЕННО не понимаешь в чем суть JavaScript. JavaScript это не раби «о, привет чуваки, зацените я слепил три гема и получился блог, гыгы». JavaScript это не псевдофункциональный код питона. JavaScript это не C#, Джава или ПХП. JavaScript это язык, на котором люди могут побыть программистами-творцами — ужасными, поехавшими, ненормальными чудовищами, которыми они на самом деле и являются.
Добавили промисы, а мы смеемся. Присыпали сахаром прототипы и назвали классами, а мы смеемся.
Три тимлида прыгнули с крыши 16-этажного дома, взявшись за руки после попытки разгрести код с тридцатикратной вложенностью, а мы смеемся и просим еще. Промисы, колбэки, асинки/авайты — мы смеемся. Модульность, асинхронность, непрерывная интеграция, юнит-тестирование, key-value хранилища, два десятка фреймворков на любой вкус — мы смеемся. GitHub позволил писать приложения на десктопе, запихивая в каждый хеллоуворлд отдельный браузер — мы смеемся. Мы бездушно подпишемся под чем угодно, наши предпочтения не основаны на здравом смысле, бесцельные споры — наша стихия, мы — истинное лицо современного IT.
Есть один объект, где значения свойств - массивы, по типу:
const o = {
a: [],
b: [],
...
};
На протяжении всего времени работы приложения, этот объект интенсивно обновляется - в массивы хуячатся данные, передаются обработчикам, которые поглощают эти данные, и в конце цикла я переинициализирую свойства объекта, предварительно затерев имеющиеся свойства следующим образом:
Object.keys(o).forEach(key => Array.isArray(key) ? delete o[key] : false);
Вопрос: необходимо ли перед удалением свойств объекта еще и "занулять" массивы через .length = 0 ? Или GC в ноде достаточно прошарен и после "delete o[key]" сам зачистит мусор, на который больше никто не ссылается?
>>894502
Паста почти идеальна.
>>894557
Мораль: отвечайте только на вопросы, запощенные минимум сутки назад, чтобы долбоебы научились в гугл и в использование собственного слабого мозга. Для их же блага. А то чуть что сразу на любимый двачик бегут, инфантилы беспомощные.
Я твоею мамку научу в гугл своим могучим агрегатом обучения, при помощи которого я обучаю матерей тех, которые мне говорят, что мне нужно чему-то учиться, потому что я знаю, что мне ничему учиться не надо. Кроме сабжа.
Тащемта, не подгорел, а написал ради лулзов, чтобы проиграть с ответа. Сам знаю, что нужно сначала подумать, а потом уже спрашивать. Но если бы были нормальные обучалки по реакту, то я бы и не спрашивал. Даже качество оф. доков оставляет желать лучшего.
>Чем тебя джейсон не устраивает?
Как же не устраивает, в объекте хранятся массивы (так просто удобнее), данные из которых потом скармливаются обработчикам (например, для отрисовки графиков).
Суть вопроса в том, что при удалении из объекта свойств через "delete prop", дочерние структуры (в моем случае это массивы) помечаются сборщиком для последующей зачистки или же безопаснее сначала занулить дочерние массивы, а уже потом удалять свойства объекта?
Прост для меня это критично, приложение гоняет тысячи значений в массив и обратно за несколько секунд, сам приложение рассчитано на длительную работу. Боюсь, не потечет ли.
>это
Что "это"? Если ты про цветопередачу подсветки кода, то в вебе не все цвета поддерживаются.
Браузер пытается отобразить максимально похожие цвета.
посмотри расход памяти http://stackoverflow.com/a/20018704
залей в массив фейковых данных на пару сотен мб и посмотри как это отразится на расходе памяти.
Вот небольшой кусочек кода. На 10 строчке студия подчеркивает, мол, варнинг, нужен второй аргумент. И из-за этого данные не парсятся из джейсона.
Бамп
Залочь алерт, чтобы его нельзя было убрать и напиши в нем, куда отправлять смс, чтобы убралось
Суть проблемы - когда открываешь ее в ведроидном браузере, и жмакаешь в input field (или textarea), появляется ведроидная клавиатура и вся приложуха сжимается (занимает место между клавиатурой и краями экрана).
Пробовал на иос - все в порядке.
Я так понимаю, что нужен какой-то кусок кода на событие focus, но какой?
Гуглил гугл, но все ответы ведут к форумам где сидят разработчики под андроид и упоминают файл AndroidManifest, которого у меня в проекте нету.
Лолчто? Даже разбираться в чужом неминифицированном говне дольше, чем написать все с нуля.
return (
<li className="skills__list-item" key={index}>{item}
<a href="" className="btn-remove" onClick={this.skillRemove}>X</a>
</li>
)
})
Пытаюсь в skillRemove по схеме e.target.parentElement.key вытащить индекс элемента, а ему пох, возвращает андефайнед. Почему? Хотя чую, что я где-то туплю жестко.
Чтобы написать все заново, надо откопать все бизнес-требования, надо проверять на баги, проверять, не забыл ли что-то.
Покажи хоть кусок кода после бьютифайера с семантическим именованием переменных.
Интересно глянуть.
Что патчишь-то?
Как-то так. Интернет-магазин на шопифае. Интересный опыт, просто тернарки в ахуй меня загоняют.
Бля, ты нахера реакт юзаешь то? Чтобы как в jq свободно по дому бродить и вмешиваться куда не попадя. Читни доки что ли.
> Парсить полтора гигабайта JSON, вот что такое пиздец.
На клиенте, лол?
Энивей, рассказывай, как (де)сериализовал?
Кажется кто-то не знает про IEEE
Реактобоги, подтвердите или опровергните.
>React listens for and events, delegating events to a single event listener at the root of its DOM tree (for better performance).
Значит ли это, что совершенно не нужно беспокоится о делегировании событий с элементов списка на родительский элемент, т.е. могу херачить onClick на каждый <li> ?
Да. Делай как тебе удобно. Оптимизации - хуезации здесь делаются иначе.
«Ради справедливости заметим, что в точности то же самое происходит в любом другом языке, где используется формат IEEE 754, включая Java, C, PHP, Ruby, Perl.»
(с) Клитор
Чини детектор, манька.
А equal работает?
Или нужно пилить свой? Типа такого: сравниваем с точностью, равной самому точному операнду.
Это фигня, к js не относится и выдает в тебе неумелого дауна. Пикрелейтед гораздо более ржачная тема, каждый раз в хохот.
Вот это да, не смог в приведение типов что ли? Ну и ну, вот так раз.
Качать его гораздо больший пиздец. На клиент ты его не выкачаешь в любом случае, так что просто отдаешь ноде, а она делает свое грязное дело на основе стримов.
сегодня сидел и думал, как можно быстро делать так, чтоб при щелчке на изображение оно увеличивалось и фон затемнялся.
В итоге написал свой первый в жизни плагин/библиотеку. Для меня это победа! жутко долго ебался с документацией и гайдом, почти час, но для первого раза можно же?
пикрл вызов функции увеличителя. Работает так же, как и на любом сайте - нажал на пик, экран затемняется, вылезает этот пик в увеличенном виде. Нажал на темное пространство - все сдулось.
В планах запилить опции размера масштабирования и функциональность слайдшоу.
То, что это вызывает у тебя ржач, выдает неумелого дауна в тебе. Так как NaN декларируется числом там же, где >та фигня которая к js не относится
Я имею ввиду, не именно в этом случае, что бы проверить с помощью двойного равенства, а вообще, как можно получить точный результат для чисел с плавающей точкой.
== нестрогое сравнение с приведением типа, поэтому твой + излишен. Там и так будет true
Пиздец. Откуда вы взялись тут.
Приводить их к одинаковому количеству знаков после запятой.
Хорошо, раз ты уже дорос до до библиотеки JQuery и начал работать с DOM, то скажи:
1)
console.log(x);
var x = 5;
2)
console.log(a);
a = 5;
Почему в первом случае у нас нет ошибки, а во втором случае выскакивает ошибка.
>>895053
Ебанашки, освойте уже любую библиотеку для работы с decimal floating point arithmetic, раз уж в убогий не завезли. Больно смотреть, как вы костыляете.
Стало любопытно что за XSS и что там к чему.
Решил поиграть в alf.nu
https://jsfiddle.net/pm2t1bj7/
Вот код.
%22);alert(1)//
вот как оно ломается и работает заветный алерт.
ЗАЧЕМ БЛЯДЬ ДВА СЛЭША? ЧОМУ БЕЗ НИХ НЕ РАБОТАЕТ? я горю и не понимаю, не понимаю и горю
Кто не знает, но есть предположения - подсказывайте, я буду гуглить и копать.
>ЧОМУ БЕЗ НИХ НЕ РАБОТАЕТ?
Потому что без них, у тебя после алерта 1 остается мусор из кавычки и оставшейся скобки. двойной слэш - это комментарий.
1. Базы данных - какие технологии изучать, по каким книгам?
2. Бэкенд - тот же вопрос.
3. Фреймворки и библиотеки - что надо знать в первую очередь, что делают фреймворки (краткий пример)
4. Гитхаб - часто вижу, что люди советуют читать чужие коды на гитхабе. Как искать там то, что мне нужно? Где брать проекты для практики?
>вместо того, чтобы заюзать один метод?
>заюзать один метод
>сравнивает числа через строковые представления
Пожалуйста, не пиши никогда ничего, кроме визиток.
"имхо" с моего дивана:
1. mysql (mariaDb), mongo. читать спеки и манулы на первоисточниках.
2. изучить MVC паттерн и парочку похожих, всё другое придёт само по себе.
3. учить нужно популярные фреймворки у которых масса адептов.
3.1 фреймворки предоставляют либо готовый скелет приложения, либо оборачивают API рандомной хуйни в удобный синтакс.
4. что бы искать по коду нужна рега. юзай расширенный поиск.
1) Делаю полную итерацию по моделям, беру каждый айди, сверяюсь с лайками юзера и если матч ставлю user_liked: true, сериализирую на клиент.
2) Я выполняю точно такую же операцию, но на клиенте. Например, во время рендера реакт компонента.
Сейчас я делаю это на клиенте и оно работает довольно быстро, но пока у меня есть около тысячи моделей, пара сотен юзеров и пару тысяч лайков. Меня беспокоит вопрос, что будет, если данные будут активно расти. Как этот вопрос решают большие проекты и всякие социальные сети типа фейсбуков, вконтактиков и инстаграмов. Там же могут быть десятки тысяч лайков, как эта вся движуха смоделирована так, чтобы эффективно.
И да, если ты - он >>895079 , то ты выбрал самый неправильный способ обучения языку. Успехов в программировании ты точно не добьешься.
Хочу вкатиться в web-dev, причём в короткие сроки, в VanillaJS/CSS/HTML могу, умею, во всякие Angular — ещё нет (+с NodeJS знаком, на нём мой сервер со статическими сайтами, который опять-таки на VanillaJS крутится).
Также умею в C++, Linux, причём давно, так что мозги натренированные.
Стоит ли вообще глубоко закапываться в VanillaJS чтобы просто знать его?
VanillaJS — чистый JS без каких-либо библиотек/фреймворков, если что
Если ангуляр или вью, то можешь начинать учить их с базовыми заниями ванилы и дома.
Если реакт - то желательно побольше времени потратить на основы.
Я не он, но
>мой ответ был верен технически
Ты вообще не дал ответа на вопрос
>Почему в первом случае у нас нет ошибки, а во втором случае выскакивает ошибка.
>Почему
Данный тобою ответ равносилен
>Почему в дождливую погоду люди ходят под зонтами?
>Под какими зонтами? Полагаю надо дождаться пока дождь перестанет идти.
>во первых, мой ответ был верен технически
Увы, но ты не дал ответа.
>а гнилая теория априори хуже практики, особенно в программировании,
Я хочу напомнить тебе твои же слова.
>Вторую неделю изучаю программирование вообще, пятый день - javascript, четвертый - jquery
И ты уже пытаешься делать выводы про значимость теоретических знаний в ЯП?
>Ты даже не знаешь, как я учу
Ты сам рассказал про то, как ты учишь.
>>Вторую неделю изучаю программирование вообще, пятый день - javascript, четвертый - jquery
Если подытожить, то ты не изучаешь язык программирования.
Ты просто изучаешь уже готовые рецепты и шаблоны.
Ты не будешь понимать, как и почему интерпретатор выполняет или не выполняет твой скрип. Прям как тут:>>895141
>>895389 Спасибо что заступился, няша :3
да? Или, может, скорее так:
- почему в первом случае человек мокнет, а во втором нет?
- зонта нет?
- почтай физику)))))0
к твоему сожалению, но нет. По четным дням я читаю интенсивы по жс, по нечетным - книгу по jquery, каждый вечер полученные знания реализую в свои идеи, создавая сайт/скрипт/еще что-то и выплняя мелкие таски типа тех, что на лерн.жабаскрипт.ру. Плюс, если мне что-то интересно - я это гуглю и реализовываю.
Но я просто пропускаю фичи вроде твоей, потому что знаю, что они мне не нужны сейчас. Мне важно научиться писать код, он должен быть читабелен и логичен, а сокращать и вставлять финтифлюхи сейчас мне нет смысла, лол.
Вот и вышло, что учу я лучше доброй половины, которые после учебы час зазубривают главу и дрочат упражнения, которые разжевали в этой главе еще пол часа, а потом спатеньки. Я бы не нашел применения ни одной функции, если бы сухо решал таски, а не пытался что-то свое создать.
Надеюсь, тебе ясна моя позиция и ты можешт высказать адекватное мнение, а не "неделю учишь? хуево учишь, надо гтд учить чтоб не хуево"
>>892685
Называется "Управление изменениями".
Как минимум тебе нужно найти в команде лидера и убедить его, остальные сами подтянутся. Это организационная и не самая простая задача.
Подготовь материалы (статьи, видео с конференций, конкретные примеры) и разошли. Если надо - собери митинг и сделай презентацию.
Основная проблема: Если фреймворк самописный - значит его кто-то написал из текущей команды и форсит его внутри коллектива. В гугле аналогичная ситуация - у них имеются внутренние фреймворки просто потому что кто-то когда-то получил за него повышение и форсит его.
Мимотимлид
Нет.
Могу еще так перефразировать, может тогда поймешь, в чем ошибка
>почему люди под дождем ходят под зонтом?
>потому что дождь
Ты не ответил на основной вопрос - почему.
Тебя не просили исправлять ошибку. Тебя просили дать объяснение почему так происходит. А ты на вопрос почему, ответил - потому что.
>Мне важно научиться писать код, он должен быть читабелен и логичен, а сокращать и вставлять финтифлюхи сейчас мне нет смысла, лол.
>финтифлюхи
>не знает про хоистинг и области видимости
>финтифлюхи
Чет в голос с финтифлюх.
Забавно было бы послушать его пошаговое разъяснение - что конкретно просходит во время выполнения данного скрипта. https://jsfiddle.net/t9kj8wbz/
Глобальная переменная а = 1; в функции а без вара, поэтому локальная переменная не объявляется, глобальной а присваивается значение 10, возвражается андефайнд; алертится 10 в виде строки
>алертится 10 в виде строки
То, что при открытии ссылки тебе алертнулась единица, тебя не беспокоит?
Вводные:
Есть один сайт по билингу гостиниц на вордпрессе.
Есть я, ранее работавший онли с джумлой и похапом.
Задача:
Сделать кнопочку, которая будет выкидывать АЯКС-окно с поинтом халупы на гугломапсе.
Доп. материалы:
Нашел уже готовый скрипт на жс под плагин аяжаксифай:
http://stackoverflow.com/questions/30399470/ajax-wordpress-and-google-maps
См ответ автора, рабочий скрипт
С моими нулевыми знаниями жса, я так понял, что в google.maps.LatLng указываются координаты нашей гостиницы.
А теперь - вопрос: как это говно прикрутить к кнопке в прессе и какой тип кнопки нужно использовать?
Если кто знает годну литературу/гайды по этому, то поделитесь пожалуйста.
http://learn.javascript.ru/courses/react
Или кто может помочь отсюда взять?
http://skladchik.in/threads/javascript-ru-Курс-по-react-js.23249/
У меня проблемы с переводом wmu на wmr, сертификат нужен.
Да, с подвохом задача.
Глобальная переменная а = 1; в функции интерпретатор проходит по коду и записывает в локальную переменную а пустую функции, локальной а присваивается значение 10, возвражается андефайнд; алертится глобальная а = 1 в виде строки
Я бы сказал по другому.
В момент вызова функции, на стадии инициализации, интерпретатор проходит по коду и записывает в специальный внутренний объект в качестве свойств все аргументы, объявленные переменные, и объявленные в декларативном стиле функции.
//LE -> {a: function};
Именно поэтому return нам не помеха.
Поэтому, далее на стадии выполнения кода в теле функции, когда выполняется инструкция а = 10, то это мы просто даем свойству а - новое значение:
//LE -> {a: 10};
Про Scope я тут говорить не буду.
Будто что-то плохое. Не везде же ES6 ещё используется-то
>>895566
Тебе нужна просто кнопка, к которой либо прикручен HTML-атрибут onclick="someshit()", либо через JS прикручено непосредственно событие (через addEventListener())
По JS можешь читать тут: learn.javascript.ru
Там же написано и про DOM, через который делаются все манипуляции с документом из JS.
Надеюсь ответил на твой вопрос
>>895574
>>895595
>>895598
Забавные у вас тут баталии
можно так сказать: функция образует замыкание, с собственным лексическим окружением (пространством имён)?
Это ты про Scope. Ну в принципе, сощурив брови - можно. Если в лексическом окружении нашей функции нету нужной переменной, то мы берем её из замыкания.
Сложноват твой текст для быстрого понимания, но одновременно упрощен.
Там всё сложнее, если конечно Клитор не пиздоболит. надеюсь что нет
Клитор возможно прав, но лучше проверить.
так уже и быть, начну с этого места читать спеку http://www.ecma-international.org/ecma-262/6.0/#sec-lexical-environments
Потому что перед присвоением значения объявленная переменная равна undefined, что и выведется в консоли в первом случае, а во втором случае она не объявлена? Я прав?
другой жс-нуфажек
На стадии инициализации скрипта, интерпретатор пробегается по коду и добавляет в специальный обьект переменных (в данном случае это глобальный обьект, который в JS явно выраженный - window.) аргументы, объявленные переменные, и объявленные в декларативном стиле функции.
//window = {x: undefined}
Замечу, что на момент инициализации, значение переменных еще не определенно.
Далее, на стадии выполнения, когда код доходит до инструкции console.log(x); - выводится в консоли undefined, так как переменная х есть, но его значение еще не определенно.
В следующей строке var x = 5; //window.x = 5;
Далее, когда код доходит до инструкции console.log(a), то мы получаем reference error: переменная а не определена.
То есть в глобальном объекте нету свойства а, так как на стадии инициализации туда попадают только объявленные переменные.
(Объявление переменной осуществляется директивой var).
Что бы убрать ошибку - нужно переписать код:
a = 5;
console.log(a);
В этом случае ошибки не будет, так как вначале выполнится инструкция a = 5; и в нашем в глобальном обьекте появится новое свойство а со значением 5 //window.a = 5;
Так выглядит наш глобальный объект после выполнения скрипта: window{x: 5, a: 5};
Если набрать в консоле window, сбоку отобразятся все свойства, которые имеет данный обьект, среди них вы и найдете наши два свойста a,b. Но найти их будет не так легко в таком обилии свойств.
Это не простыня, написал так как я это понимаю исходя из прочитанных мною материалов.
>а во втором случае она не объявлена
нет, она неопределенна, то есть её нет.
Переменная может быть не объявлена, но она будет создана. Как тут:
a = 5;
console.log(a);
>>895095 Здесь переменной а нет не потому что она не объявлена, а потому что без директивы var, она не попадает в глобальный обьект на стадии инициализации. Она попадет в глобальный обьект лишь тогда, когда до нее дойдет очередь выполнения.
А так как console.log(a) выполняется раньше чем переменная а попадет в глобальный обьект, то интерпретатор выдает ошибку: переменная а не определена (её нет). Это всё сумбурно читается.
>А так как console.log(a) выполняется раньше чем переменная а будет создана (попадет в глобальный объект переменных).
Небольшой фикс для лучшего понимания.
Сегодня в университете начал изучать JavaScript.
Надеюсь хорошо пойдет, буду тут сычевать пока что.
Учи дома на опережение и выебывайся на уроках.
Вынес свою проблему в конкретный пример. Проблема заключается в том, что я не понимаю, как работать с двумерным массивом. В мануале просто описывается, как его объявить в коде. Итак, двумерный массив - это массив массивов. Как же его заполнить?
https://jsfiddle.net/xh7523q8/
Фактически мы заполняем двумерный массив руками. Аналогом было бы объявление таким образом:
var B= [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
];
Но в браузере документврайты пишут нам такое:
1,2,3 (Временный)
1,2,3 (Двумерный)
4,5,6 (Временный)
,4,5,6 (Двумерный)
7,8,9 (Временный)
,,7,8,9 (Двумерный)
Получается, что предыдущие элементы просто куда-то исчезают! Вопрос: что я делаю не так и как мне через запросы заполнять двумерный массив?
Ничего себе.
Я js изучать начинал 15 лет назад, когда в пятом классе учился. А они его теперь в университетах изучают.
До чего техника дошла.
Ничего себе.
Я js изучать начинал 45 лет назад, когда в пятом классе учился. Как сейчас помню свой первый скрипт "Hello world" выведенный на перфокарту.
onChange "медленно" обрабатывается. То есть с опозданием на 1 изменение, что я делаю не так?
Говнокод прикрепляю на всякий случай.
Там проверка на пустоту идет, если value == 0 => value==undefined==null. А это то, что нужно. А вот все события опаздывают даже чекбокс.
>>895807
Onchange, вроде как, срабатывает после потери фокуса на элементе. Попробуй второй клик сделать на пустом месте, тоже должно работать
не происходит ни онЧендж, ни онИнпут.
Пиздец, и этот дибил через пару месяцев будет ныть: но я же реакт все 9,5 методов выучил, почему меня не берут реакт-сеньором?
e.target.value != e.target.value.length.
Я проверял лишь пустое ли поле, и для этих целей мое условие подходит если только в поле не '0'. а ты, пидарас, ОТВЕЧАЙ ХУЛИ ИВЕНТЫ ПИДОРАСИТ, или иди нахуй.
И да, в прошлом посте хуйню написал, немножко
А теперь заткнешь хавальник и сам пойдешь нахер читать доки, умник, раз не удосужился еще это сделать и имеешь наглость задавать вопросы и отвечать в таком тоне кому бы то ни было.
Тем более, что доки у реакта написаны нормально. Там ты найдешь ответ на свой вопрос
мимо-устал от наглых и ленивых ньюфань
Я, вообще-то, вежливо спросил, а ты или не ты дважды назвал меня дебилом.
Про доки я в курсе, выше в треде дали ссылку на туториал дня нубов, вот я его и прохожу.
А что это изменит? У меня нет проблем с вводом данных во временный массив. Есть проблема с добавлением одного массива в другой в качестве очередного элемента.
B[B.length] = tempmas; //Кладём этот массив в следующий элемент массива B.
B.push(tempmas);//Как вариант заполнения, результат тот же.
После трёх заполнений: 1 2 3, 4 5 6, 7 8 9
Этот двухмерный выглядит так: ,,7,8,9
А должен выглядеть так: 1, 2, 3, 4, 5, 6, 7, 8, 9
Вон там две запятые в начале показывают, что первые два элемента просто исчезли.
Итак, сообщаю о достигнутых результатах:
Несмотря на проход валидации(не пустые 2 поля + чекбокс), в консоль лог выводится старая инфа, видимо, проблема в нем.
Тред не читал, сразу вопросы задавал.
Подскажите бесплатные онлайн-курсы по Джаваскрипт, наподобие htmlacademy?
Я извиняюсь, но я вообще не понимаю, как работает тот сервис и что такое фидл. Я так понимаю, там где-то должен быть результат исполнения кода. Но тот же самый код, записанный в хтмл файл, прекрасно исполняется браузером. Гм, там код вообще видно?
Я знаю. На вопрос ответишь?
Мы сплитим введённые через пробел числа в массив innerArray, а потом пушим этот массив в другой массив arr в качестве очередного элемента. В результате arr становится двухмерным. Я правильно понял? Немного выпучил глаза от неизвестных конструкций, но почитаю про них, разберусь.
Выкинь ту хуйню которую ты написал и пиши по нормальному.
Я честно хз - что тебе надо, но если твоя задача создать arr[ [1, 2, 3], [4, 5, 6], [7, 8, 9] ] при помощи строки ввода, то держи. В консоли ты увидишь этот массив.
Ты разберись с передачей по ссылке и по значению, только не как этот выше с реактом, а реально возьми и прочитай.
Я тебе сказал - ответ в доках. В двух местах написан. Все равно тебе надо будет их прочитать.
Есть один поехавший который дрочит форму с реактом.
Есть второй поехавший, который ебется с двумерными массивами.
>>895901 Но кто блять ты? Ты ебешься и над реактом и над двумерными массивами????????
ЧТо за пиздец???
>Ой, все такие умные, а ответа на вопрос так никто и не дал
>Но кто блять ты?
Я анон поехавший который дрочит форму с реактом.
А всё, вкурил. ПОехавший с реактом просто возмутился сообщению, которое было адресовано поехавшему с двумерными массивами, но в котором была отсылка к поехавшему с реактом.
Бля, не видно названия, ссук.
Заебало то что приходится постоянно учить апи фреймворков\библиотек, при этом фундаментальных знаний — нихуя.
Посоветуйте что почитать из актуального на сегодняшний день. кнута и банду не предлагать
>Посоветуйте что почитать из актуального на сегодняшний день
не благодари http://www.ecma-international.org/ecma-262/6.0
Кто пустил сюда байтослесаря?
Я хочу научиться лучше программировать, а ты мне очередную спеку апи скидываешь. Ну не идиот ли?
еблан? еблан. тебе свежую спеку языка ЖС кинул.
что бы лучше программировать, выучи сперва особенности языка, либо закрывай эту тему и перекатывайся в продаваны.
Я три ебанных года пишу на этом языке, за это время все ебучие тонкости уже освоил. А архитектуру приложения строить мне эти тонкости мало помогут
>три ебанных года
кек же. спека ЖС три года назад была 200 страниц а4, ЖС 6й версии 2015 года - 600 566, если тебя это не смущает...
Да уж, теперь смущает. А как их разбить? В каком они порядке будут выполняться? Или просто заменить этот документврайт на подходящий для контроля js вариант, типа console.log?
так на фреймворке это труъ программисты и есть
они занимаются проектированием архитектуры приложения, а не дилетансткой хуйней типа ручной дрочки дома и отслеживанием изменений состояния
мимо
127.0.0.1 googleapis.сom в хосты, конечно, можно добавить, но туда ещё куча всякого разного мусора тогда будет направляться.
как загрузить нормально текстуру в three.js без этого тупого THREE.TextureLoader? трабл в том, что он использует XMLHttpRequest, который не может подгружать файлы из жесткого диска (например С:/some_folder/another_folder/image.jpg)
выкидывает XMLHttpRequest cannot load file:///Х:/xx/file.file. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource.
а когда пытаешься запихнуть туда текстуру прям вот с http адресом пишет типа "иди ты в жопу, там что-то написано в мета-данных, я тебе не загружу"
*анон, прошу прощения, я криворукий.
Один байтоеб Крис который 15 лет ковырялся сидя в русской сраной деревне уехал в США и получает около миллиона баксов в год. В интервью он говорил что у него всегда на столе стеклянный анальный плуг.
>скопипастнул строки из стаковерфлоу
>копался час в некой документации (ахахаха)
>библиотека
Удачи пополнить ряды безработных ЖС ФРОНТ ДЖАНИОР, быдло-мразь))))))
Больше спрос на элиту, как я.
Найс
Проиграно. Как раз школьники, клепающие крудресты и интерфейсы к ним на реакте, сейчас и востребованы
Ты не понял.
<script>..js code here..</script>
Тег скрипт - это html-тег для включения js кода на html страницу.
Сам js код находится в теле тега.
НА фидле у тебя есть отдельные фремйы, кда надо пихать разметку, и отдельно куда код.
А ты пихаешь в код, код обернутый в тег.
Этого делать не нужно. Нужно писать просто код.
Убери там у себя <script> и </script> на первой и последней строке.
Те теги которые ты там в скрипте используешь, типа <br> это у тебя не теги, а строки, которые ты передаешь в функцию.
Короче. Тебе почитать азы, а то я тут хуету тебе разжевываю какую-то.
Двачую. Прошла пора "эксклюзивности", когда на старого программера молились, а он плевал на всех сверху.
Сейчас же любой школьник может дать фору программеру с 20летним стажем.
Во-вторых, сейчас набирают преимущественно середнячков- мега-программер не сможет грести в одном ритме со всеми и будет только мешать своими охуительными идеями и алгоритмами.
Да и вангую, что элита, сидящая в JS-треде и агрящаяся на школоту- такая же посредственность, ничего особенно выдающегося не программирующая.
В 2016 знанием алгоритмов и умением писать чистый код никого уже не удивишь.
Какие ж вы все тут тупые и агрессивные. Человек что-то сам сделал, а ты уже лезешь говном обливать, лол. Компенсируешь, что и сам такой, или завидуешь человеку, который на второй неделе уже что-то пишет, а не ебется с хеллоуворлдом?
мимо крестоеб
Это не либа, это просто замыкание.
блять, человек учится, ему может это просто интересно
А ДАВАЙТИ ИГО ЗАТРАЛИМ АЗАЗАЗЗА
сука, бесят такие животные, иди нахуй с двачика
Ну, если интересно, учись себе, никто тебя не будет трогать. Все когда-то учились. Единственное - это учиться надо выстраивая прочный фундамент так сказать, самообразовываться и не задавать глупых вопросов/не писать глупых постов.
мимо
А еще он заходит в этот тред и спрашивает как вкатиться в жс без образования.
Нет. Он ОП этого треда.
Ой-ой. Вот это я продолбался, вообще на эту обёртку внимания не обратил. Разжовано, спасибо.
Вот пример класса EventDispatcher https://github.com/mrdoob/three.js/blob/master/src/core/EventDispatcher.js
Есть какие-либо преимущества такого подхода?
assign копирует.
extends наследует.
js динамический язык. все может быть переопределено в рантайме. если переопределить метод в прототипе, у всех унаследовавшихся он тоже переопределится.
ассигн используют тут вместо clone.
кури прототипное ооп.
Что такое rest api и с чем его едят? Что нужно знать на уровне джуна?
>>896961
>ассигн используют тут вместо clone.
В примере свойства копируются в прототип:
Object.assign( Car.prototype, EventDispatcher.prototype );
или
Object.assign( EventDispatcher.prototype, {...} )
Следовательно все экземпляры класса Car и EventDispatcher унаследуют свойства, скопированные в прототипы этих классов? Или нет?
get,post,update,delete
Спасибо бро, нагуглил.
>343 лекций на 27 часов
А если я не планирую жить ангуляром, он мне нужен для (качественного) решения пары задач, можешь посоветовать что нибудь проще для быстрого вкатывания?
Да это и будут только основы, может даже джуном возьмут куда-то + там основы тайп скрита наверняка будут. Если это тот самый курс от Udemy который я нашел, то там еще и пет-проекты будут, в итоге полезной инфы будет часов на 5-8, лучше книжку почитай отдельно по ангуляру 2 и тс.
в сети есть, ищи лучше
Ничего особенного не заметил. Что ты хочешь научиться делать?
Нахуй там реакт? Там лендинг.
Утром пораньше вставай
Jquery
как и ожидалось
Вот есть в десятичной:
14 & 9 => 8
16 & 9 => 0
То что это манипуляции с битами я понимаю. А вот представить себе результат не могу. Как эти конъюнкции соотносятся с восьмёркой и нолём? Что значат эти результаты? Как это себе в реальном мире представить?
Или я зря затупил и в них нет никакого сакрального смысла? Чисто технические манипуляции и всё.
Что курить, чтоб понять?
Курить двоичную систему счисления. Разберись с самыми простыми действиями, а потом опять возвращайся к статье.
Традиционную и двоичную логику я кое-как понимаю. Я тут не могу понять, что показывает результат после перевода в десятичную. Наверно, я зря себе мозги ебу и тут просто нет никакого смысла, кроме абстрактной дрочильни.
Задачи:
1) Дан массив и написать функцию которая найдет палиндромы. Помимо слов в массиве может быть хоть что. Потом их надо вывести таблицей на html страницу
Слово: Палиндром:
(слово или прочерк) (true/false)
2) Даны 2 массива чисел, вывести количество уникальных чисел, то есть тех которые не повторяются. Например
arr1= [1, 2, 5, 9];
arr2 = [2, 5, 100, 0, 41];
Уникальные тут: 1, 9, 100, 0, 41 ; выводим 5
Еще были вопросы по css и мелкие вопросы по js, но их было мало и поставили видимо чтобы кандидат совсем не сел в лужу.
> 2) Даны 2 массива чисел, вывести количество уникальных чисел, то есть тех которые не повторяются. Например
> arr1= [1, 2, 5, 9];
> arr2 = [2, 5, 100, 0, 41];
> Уникальные тут: 1, 9, 100, 0, 41 ; выводим 5
объясните ньюфане как это по-умному сделать
Во-первых, Set доступен только в ES6, во-вторых решение неверное, так как Set удаляет повторяющиеся, а нужно оставить только уникальные.
Рейт моё решение: https://jsfiddle.net/3nw1y90m/
lodash uniq
тебе задали какие-то ограничения на скорость выполнения? Если нет, то не заганяйся, возможно им хватит и за O(n*n) лишь бы решил на бумажке
биндинг данных к вьюшке. архитектура из коробки.
А твои лямбдочки прямо с ES3, ага.
>нужно оставить только уникальные
Постановка - говно. Либо мы выбираем уникальные элементы массива, либо не повторяющиеся, это как бе разные весчи.
>Рейт моё решение
Норм, у меня чуть ниже сложность (где-то nLogn вместо квадрата у тебя)
https://jsfiddle.net/asytonqk/8/#
У вообще, тут нужен groupBy из нормального языка/либы, или counter из питона, на чистом js писать, что говно кушать.
На все был час. Задачу с массивами я как раз решил (правильно или нет другой вопрос, но вроде правильно). А вот первая не понравилась и думается мне, что не сделал ее.
в первой задаче формулировка очень расплывчатая какая-то. Я бы прошелся по массиву, применив к его элементам toString исключая null undefined и сравнивал оригинал с .reverse()
A числа, объекты, массивы, функции исключить не надо?
Вместо исключения, достаточно проверить что строка и не пустая.
числа - нет, например 404 должен быть в ответ записан.
объекты, массивы и т.д. схавают toString, но врятли попадут в ответ, а вот на null и undefine - упадет я имею ввиде массив вида ["aba", 404, null, [], undefined]
Тогда числа надо тоже оставить.
Перечитал определение, палиндром это вообще все, что угодно, что одинаково в обе стороны.
Тогда надо было уточнять, считаются ли функции, выдающие одинаковый результат независимо от прямого или обратного порядка аргументов, а так же массивы, не меняющиеся при реверсе.
Хуйня. Должен быть контракт, что может быть подано на вход, а что нет. Без него задача теряет смысл и верифицируемость.
ну в каком-то смысле так и есть. Иначе надо рекурсивного внутри массива такую же проверку делать и на свойствах объекта [{a:"zxz"}]. Я бы перед выполнением это все спрашивал, мб и делать ничего не пришлось бы
Это на какую зп такие задачи?
Вроде ничего сложного
конкретно реализация алгоритмов на каждую задачу умещается в одну строку менее 80 символов:
1) palidroms.filter(word => word === [...s].reverse().join(''))
2) new Set(your_array).size
так как фронт энд собеседование, то уверен, что знание es6 приветствуется.
>arr1= [1, 2, 5, 9];
>arr2 = [2, 5, 100, 0, 41];
arr1.filter(i => !arr2.includes(i)).length + arr2.filter(i => !arr1.includes(i)).length
Брат, помоги.
Вставляю видео с ютуба на свой сайт. Можно ли как-то применить свои css-свойства к ютубовскому плееру?
Уже написали, что Set не подходит. Согласен с аноном выше, условие задачи сформулировано неправильно.
Меня всегда интересовала, а на таких собеседованиях, все эти задания на листочке надо выполнять? Доступа к пеке нет? Хотя бы пеки без интернета?
Я за 2 недели изучения кода с нуля уже изи решал 5-4 кью
>когда для решения простейших задач, сегодняшние программисты тянут left_pad зависимости.
Ну да, лучше свой код накрутить. А потом накрутить ещё раз. А потом вынести в отдельную функцию, ой, left-pad получился.
Точно, обосрался
тогда как одно из решений:
[...a1, ...a2].filter((el, i, arr) => arr.filter(el2 => el === el2).length === 1).length;
выглядит хуево, просто хотел чтоб в одну строку и универсально
Циклом и счетчиком.
Пофиксил проеб с неуникальными значениями в одном и том же массиве.
Суть не меняется, дополнительный массив не обязателен.
https://jsfiddle.net/p12deuLe/1/
двач, нука расскажи почему я еблан если собрался юзать jwt для аутентификации юзеров ?
Кто подскажет, где описано это поведение?
Если в спеке то ткните носом.
(function(arg) { return eval('arg') })(1) // 1
(function(arg) { return window.eval('arg') })(1) // ReferenceError
Почему eval теряет скоуп, если его вызывать не на прямую?
мне тож приглянулся вроде, обычно анон мне contra доставляет, я сравниваю со своими pro и по итогу решаю юзать или нет...
ты кокой то неправильный аноним
>Традиционную и двоичную логику я кое-как понимаю.
Видимо, не очень. Или не о том думаешь.
>Я тут не могу понять, что показывает результат после перевода в десятичную.
Он показывает число, полученное оператором И?
14 = 1110, 9 = 1001
1110 & 1001 = 1000 => 8
Вот в каких позициях единички совпадают, в тех они остаются. Остальное на 0 меняется.
16 = 10000, 9 = 01001, переческий нет => 0.
> Наверно, я зря себе мозги ебу
Не еби. Сайтики на жс можно (нужно) и без всего этого клепать.
>Точно, обосрался
>тогда как одно из решений:
>[...a1, ...a2].filter((el, i, arr) => arr.filter(el2 => el === el2).length === 1).length;
[...a1, ...a2].reduce((a, cv) => a.includes(cv) ? [...a.filter(v => v !== cv)] : [...a, cv], []).length
Пофиксил тебя, карп в пакете карп фильтр в фильтре не оче смотрелось.
Написание кода на JS вызывает во мне истинное удовольствие инбифо говноед, возможно потому, что никто меня не заставляет писать код именно на нем, и со сроками никто не торопит, поэтому в случае затруднений всегда есть время обстоятельно разобраться с проблемой и найти оптимальное решение.
Пишу для в большей степени для себя, частично - для работы.
Стараюсь использовать все фишки ES6+, нравится писать в функциональном стиле.
Но в последнее время начал задумываться, а не путь ли к деградации писать на одном языке несколько лет подряд?
Есть ли у кого опыт перехода с жс на другой язык?
Как быстро можно писать на питоне те же веб приложения, например?
Варианты с переходом на Java, Ruby, C# (в контексте APS.NET) не рассматриваю, интерес вызывает, в первую очередь, Python.
Еще не заходила речь о зп. Доделываю второе тестовое и что то накатила грусть, что придется за какие нибудь копейки работать, особенно учитывая что там плохо разбираются в современной разработке и я скорее всего буду ебашить там минимум как миддл.
js уже умеет оптимизировать цикл for? Или он каждый раз будет length пересчитывать?
Лучше расскажи, что за тестовое задание?
По зп за полставки джуну врят ли больше 20-30к дадут
Нравится писать в функциональном стиле - попробуй ClojureScript или Elm, еще захочешь, базарю.
Elm охуенен при первом рассмотрении, но хотелось бы перейти на другой технологический стек, не жс. JAVA мне не нравится, но я не исключаю другие языки на JVM. Как, например, Scala в продакшне? Как быстро (в среднем) ее можно освоить? Интересно ли на ней писать?
Я сам себе не могу ответить, потому что не могу правильный вопрос найти. Надеялся, анон за меня додумает.
9 & 14 = 8
9 & 16 = 0
Пока писал, подумалось такое (ща хуйню ляпну): «9 и 14 имеют общий четвёртый бит (двойку в кубе), а 9 и 16 не имеют общего нихуя».
Мне просто сначала показалось, что в этом должно быть что-то поинтересней, чем битоёбство. Наверно, слишком сильно меня эта хуйня вдохновляет и слишком многого ожидаю.
Освоить можно, писать интересно.
НО:
1) Мало вакансий.
2) С опытом ЖС ты вряд ли будешь нужен. Нужны Java/C#/C++.
3) Высокий порог входа, как правило везде в требованиях бонусом идёт Big Data, ML, Spark, Hadoop и т.д.
При чем тут lengt и цикл?
length статическое свойство, а не геттер. Оно пересчитывается при изменении размера массива.
Ты дурак, нет?
Ты в своем примере не задействуешь область видимостти.
На, чтобы тебе понятнее было.
var arg = 'global';
console.log((function(arg) { return eval('arg') })('local')) // local
console.log((function(arg) { return window.eval('arg') })('local хуй тебе')) // global
Как в битовый операторах может быть что-то больше, чем битоёбство. На что ты там ответить не можешь, какой вопросы, ты накурился, что ли?
Решил написать своё приложение на нём + ангуляре 1.
Приложение должно подгружать инфу из sqlite и искать в ней что-то через форму поиска.
Собственно, всё сделал, но проблема одна: данные подгружаются только когда хоть что-то введёшь в поле поиска.
Загрузку данных во view сделал в конструкторе класса, собственно, в основном js-файле и вызываю new MySuperClass;
Почему данные не загружаются сразу при запуске приложения?
Мы в бамплимите уже неделю, епта
Это копия, сохраненная 30 декабря 2016 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.