Это копия, сохраненная 26 апреля 2018 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.
Этот тред посвящён главному языку будущего - JavaScript. Благодаря своей гибкости используется в браузере, на серверах, в мобильных приложениях, на десктопе и практически во всех видах программирования. Удобный синтаксис позволяет легко писать на нём, а высокая производительность делает его отличным выбором для решения любых задач - от небольших магазинов до огромных highload проектов. JavaScript по праву является самым популярным в мире языком. На каждом сайте есть браузерный JavaScript, а JavaScript на сервере используется такими крупными корпорациями, как Amazon, Yahoo, HP, NASA, Walmart и многие другие.
Часто задаваемые вопросы:
https://github.com/vladimir37/js-thread/blob/master/Wiki/faq.md
Список материалов для изучения:
https://github.com/vladimir37/js-thread/blob/master/Wiki/learn.md
Список инструментов и направления JS-разработки:
https://github.com/vladimir37/js-thread/blob/master/Wiki/tools.md
Конфа /pr/ в Slack:
https://slack-2chpr.herokuapp.com/
НЕ КОПИРУЙ КОД ПРЯМО В ТРЕД!
Воспользуйтесь https://jsfiddle.net/ для браузерного кода и https://ideone.com/ для серверного кода.
Выучил разные штуки:
- работа с консолью
- всплывающие уведомления
- примитивные математические вычисления
- работу конструкций if ... else
- разные бесполезные вещи, вроде вывода определённых символов из слова или получения информации о длинне слова
- функции
- конструкции с for
- массивы
- switch ... case
- логические операторы
- объекты
- методы в объектах
- hasOwnProperty
- prototype
- наследование объектов
Наверно уровень Beginner на это достигнут. Что делать дальше? Есть ли какие-то более практические курсы, где итогом будет, например, создание какой-то модной вещи?
Или стоит браться за изучение фреймворков? Какие из них наиболее востребованные и не самые сложные при этом?
Что делать вообще теперь?
https://stackoverflow.com/questions/43031988/javascript-efficiency-for-vs-foreach
Тут в топовом комментарии приведён следующий пример
for (var i=0, n=arr.length; i < n; i++){}
n=arr.length, есть ли в этом смысл? Он длину массива каждый раз вычисляет при обращении к length что ли?
> Он длину массива каждый раз вычисляет при обращении к length что ли?
Разница в том. что при n=arr.length все время идет обращение к переменной, а при i < arr.length каждый раз к свойству объекта. Оптимизации при этом могут разнится от движка к движу. При этом стоит учитывать, что твой arr может быть не стандартным инстансом Array, а какой-то кастомной коллекцией, где length может быть вполне себе геттером.
Еще есть упоротые., но все же возможные ситуации, когда массив может меняться в цикле, и тогда вычислять его текущую длину на каждом шаге, имеет смысл.
>for (var i=0, n=arr.length; i < n; i++){}
Собственно это эмуляция forEach
сравни
[1,2,3].forEach((i,k,a) => (console.log(i), k < 2 && a.push(k + 1)))
выведет 1 2 3
arr = [1,2,3]
for(var i = 0; i < arr.length; i++) (console.log(arr), i < 2 && arr.push(i + 1))
выведет 1 2 3 1 2
Спасибо, анон, понял. Почему-то казалось, что в PHP это имеет смысл, ибо count() - функция, которая каждый раз выполняется, а в js - нет, ибо это свойство, которое что-то типа переменной и разницы между
===
var n = arr.length;
n
===
и
===
arr.length
===
никакой нет.
в грубом случае, если отбросить всякие предположеия об оптимизации под капотом, работает это примерно так
при n = arr.length
сравние выглядит как scope.get(i) < scope.get(n)
а при arr.length
scope.get(i) < scope.get(arr).get(length)
Конечно, сейчас все так по тупому в лоб не делается, и движлк\трассер и прочие оптимизаторы выясняют меняется ли длина массива в цикле, и надо ли ее каждый раз вычислять или нет, и проводит оптимизации.
Как видишь из примера, forEach заранее фризит длину массива, и даже если она изменится, итераций будет ровно столько, сколько была длина массива перед началом итерации.
Как вообще считаешь, стоит ли использовать forEach, если проект не сильно большой и мудрёный, то есть, код и так понятен/читабелен ну, в рамках той кривоты, которую я способен написать :3? Движок нодовский, если что.
Зависит от общего подхода к написанию кода.
В общем случае стоит. Это так или иначе повышает читаемость и привычку.
Но если ты вдруг используешь в перемешку простые циклы с непростыми, это плохой путь.
То есть если у тебя проект требует производительности в экономии на спичках с прямыми циклами, то и пиши все ими. И вообще можно писать хоть мономорфный код, если есть потребность.
В остальном же стоит использовать семантические обертки. Код пишется для людей, чтобы его было удобно читать и поддерживать.
>>38336
Но использование постоянно оберток\библиотек\фреймворков, не избавляет тебя от обязательств знать, как это работает на более низком уровне. Низком хотя бы до уровня ванильности языка. Чтобы потом не было спотыкания вида как у тебя при сложении значения инпута с числом, получатся строка, и всего такого.
>Но использование постоянно оберток\библиотек\фреймворков, не избавляет тебя от обязательств знать, как это работает на более низком уровне
У меня если и есть проблема с этим, то обратная. Пока успешные посоны за два часа делают сайт, собирая его из чужих кусков, я трачу на это времени в раз 5 больше, но почти всё пишу сам. Стараюсь следовать такому принципу: сначала пишешь велосипед на ванили, потом пользуешься чужими либами. Ну, не считая случаев, когда либа мудрёная настолько, что сам ты реализовать такой функционал вообще не в состоянии.
Во-первых, преждевременная оптимизация — корень всех зол. Время, потраченное на такую оптимизацию может легко оказаться больше времени, которое сверх нормы будет потреблять медленный код. Только когда фича начинает заметно тормозить, только когда тормоза явно неприемлемы в поведении этой фичи и всей системы, только тогда есть смысл лезть с оптимизациями, потому что появилась такая задача.
Во-вторых, все абстракции имеют не только ценность, но и цену. Чтоб ты мог написать человеческое "для каждого" — должна существовать какая-то обёртка над функционирующим кодом. Код с обёрткой явно тяжелее чистого байтоложества. Но может оно того стоит, за человеческий язык.
В-третьих, ты пишешь на встраиваемом языке и никак не можешь контролировать принимающую среду. Легко можно представить, что в каком-то движке одно работает медленней другого и наоборот. Вообще эта оценка в попугаях бестолкова, всё может не только от движка зависеть, но и от железа или от других процессов.
В-четвёртых, в реальном Вебе код скорее всего будет выполняться в модном бровзере. Там различные оптимизации сделают так, что на деле никакой разницы не будет. Но только после того, как загрузят по сети и распарсят твою писанину, что и будет основными расходами.
Реально видел кейс. Ребята сокращают дроби перебором всех цифр в цикле от 1 до числа и считают остаток от них. На самое большое число с нулевым остатком делят. Там был написан for цикл, типа для оптимизации. Я переписал на алгоритм Евклида, через forEach цикл - заработало в разы быстрее. Все что нужно знать о мамкиных оптимизаторах.
Версия 2.23.6
Ну же, бамп. Где рисовать баннеры?
Как сделать его знаменитым?
Учу JS уже как полтора месяца, даже не подошёл ещё к DOM'у, осталось пару разделов. Идёт сложно, видимо сказывается нехватка логического мышления (с начальной школы забил хуй на точные науки), однако заданий выполняю больше 70%, иногда могу сидеть над одним по 5-6 часов.
Вопрос первый - Это нормально или основы учатся вообще за месяц у тех кто никогда не сталкивался с программированием?
Учить интересно, но сегодня просидев до четырех ночи над очевидно не сложной задачей сильно расстроился и разозлился на себя за то что такой тупой. До этого в этом же разделе все задачи порешал без проблем, т.е саму тему понимаю (таймауты и интервалы), а как дело доходит до решения сложных задачек - тупняк полный.
Вопрос второй - Задача в пике, очень плохо если я не пойму даже как приблизится к её решению? Насколько я хуёв, анон? Только что проснулся, пойду опять решать.
Напиши статью на хабр. Если это действительно проект который перевернет игру то его быстро заметят и расхайпят. Вот только там регулярно публикуют такие революционные проекты, которые на самом деле революционны только в глазах их авторов.
Писать можно в песочницу. Она регулярно просматривается.
В шапке все есть
Колбеки устарели. Теперь только промисы!
Дай пожалуйста намёк как решить, прочитал про коллбеки, грубо говоря функция которая дожидается выполнения другой функции. Как мне это должно помочь если в задаче вызов функции одной и той же?
Я там не зарегистрирован. Будет странно, если я зарегистрируюсь, и сразу начну рекламировать что-то своё.
Да к тому же боюсь, что меня действительно пошлют нахуй с моими идеями.
Ничего странного. Песочница для того и нужна. Только если.. Что значит рекламировать? Ты продукт какой-то написал, или все же полезную технологию? Если ты придешь туда что-то продавать, то конечно тебе обоссут, как и везде на технических ресурсах.
Если же ты изобрел что-то, концептуальное, новое, полезное. Ты получишь отклик. В крайнем случае, тебе действительно пояснят стоит ли твоя идея чего-либо или нет. Может это только ты считаешь, что она какая-то гениальная.
>Да к тому же боюсь, что меня действительно пошлют нахуй с моими идеями.
Ну сиди бойся дальше. Лол.
Можешь и сюда написать о своей революционной идее. Тебе и тут пояснят по хардкору, мудак ты или человек.
Суть в том, что есть один абстрактный код:
app.listen(port, async () => {
data1 = await takeData1();
data2 = await takeData2();
console.log('dataok')
}
И, конечно же, вывод консоли срабатывает первым, а не после функций. ЧЯДНТ?
Возможно, что нет, потому что я не шарю, только вкатился в асинк/авейт.
Как должна выглядеть функция, возвращающая промис?
Внутри ресолва то - что попадет потом в аргумент then как результат работы промиса, вот картинка для твоего полного понимания
Спасибо.
https://ru.wikipedia.org/wiki/Импорт
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import
Напиши подробней, пожалуйста. В чём тестируешь, что за файл с данными. Не понятно, в какую сторону тебе подсказывать.
{
e.dataTransfer.effectAllowed = 'move';
//dragSrcEl = e.target;
//e.dataTransfer.setData('text/html', this.innerHTML);
dragSrcEl = null;
dragSrcEl = e.target;
e.dataTransfer.setData('text/html', e.target.outerHTML);
}
divch.ondrop = function(e)
{
return function(e, path)
{
//dragSrcEl.innerHTML = divch.innerHTML;
//divch.innerHTML = e.dataTransfer.getData('text/html');
dragSrcEl.outerHTML = e.target.outerHTML;
e.target.outerHTML = e.dataTransfer.getData('text/html');
}
Почему не работает драг и дроп во второй раз?
Прежде, чем думать, что выбрать, нужно усвоить, что лупы — это говнокод. Соотвественно по дефолту выбираются forEach, map, filter, хвостовая рекурсия, а луп выбирается только в специфических моментах, когда понимаешь, что нужен только он.
Забей нахуй на эту шизофазию ебучую, проебал и так 1.5 месяца на хуйню, пили петпрожект и не еби себе голову абстрактной залупой. На этом леарнжс большинство примеров ненужная запутанная залупа как и задачи которые не имеют фактически ничего общего с реальным девелопментом. Когда тебе понадобится асинхронщина и прочая залупа тогда и тока тогда еби себе голову задачами с пика, оставь эту абстрактную залупу нахуй и беги смотреть как устроен ДОМ. Это в разы полезней чем страдать хуйней.
У меня есть необходимость обратиться к api по массиву url
Я создаю этот массив и применяю асинхронную функцию, результат которой должен возвращать ответы сервера
Но она возвращает ебучий pending промис!
async function fetchAll(urls) {
const fetchURL = url => fetch(url).then( response => response.json() )
const promises = urls.map( async (url) => await fetchURL(url) )
const data = await Promise.all(promises)
return data
}
const responses = fetchAll(url_list)
console.log('fetchAll returned', responses)
Что делать? Завис на этом намертво не один день
100.00000000000000000000004к рублей.
Напиши свежий пост!
При чем тут js?
response.Json() - тоже асинхронный метод
Ты мешаешь синхронный код с асинхронным.
Каждый файл должен выполниться синхронно (последовательно, полностью) до конца, только после этого он передаст управление дальше в Ивентлуп, который в свою очередь будет выполнять асинхроншину (каждая так же будет выполнена до конца, перед тем как передаст управление дальше).
Как только ты написал async, считай, что код из этого блока уже вырвался за пределы этого файла, будет исполнен обязательно после последней строчки этого файла. А console.log у тебя идёт в этом файле без всякого асинхрона. Логу в этот момент доступны только объекты промисов, а не их результаты. Можно было бы обернуть лог тоже в async, чтоб он ждал фетча, но у тебя в фетче тоже ошибка возможность чему-то научиться, асинхронный колбек.
http://2ality.com/2016/10/async-function-tips.html
В этой статье, в разделе 7 твой ответ.
А ещё лучше в его книге, главы 24, 25:
http://exploringjs.com/es6/index.html
потом глава 22, потом
http://exploringjs.com/es2016-es2017/ch_async-functions.html
Вообще странно, что это просветлённое ЖСом лицо редко мелькает в наших тредах, годнейшие книги, блог, твитор
http://dr-axel.de/
>Вообще странно, что это просветлённое ЖСом лицо редко мелькает в наших тредах
Потому, что надо было издаваться у Тима О'Рейли, а не самому в Интернет писать.
async function x() {}, внутри нее один\несколько await;
По сути, async\await - это обертка для промисов, чтобы цепочки из них писать в более понятном виде. async function возвращает промис, который будет resolved/rejected, когда последний await завершится. Так что да, если вернешь промис, то это будет аналогом async function.
Без async functions:
let sleep = (ms) => new Promise(resolve => setTimeout(resolve, ms));
function x() {
return sleep(500)
.then(() => sleep(600))
.then(() => sleep(700))
.then(() => '1800 ms passed');
}
C ними:
async function z() {
await sleep(500);
await sleep(600);
await sleep(700);
return '1800 ms passed';
}
Вместо \t должны быть табы.
Понял, спасибо.
Мне не так сильно пердолиться надо, что-то уровня пейнта подойдет. Серверного канваса там почему-то нету.
Юнит тестами компоненты реактовские проверять?
Алсо немного непонятно, из всего этого на реакте делать спа дергающую крудсервис, или можно использовать как простой многостраничник?
> из всего этого на реакте делать спа дергающую крудсервис, или можно использовать как простой многостраничник?
я нихуя не понял
> из всего этого на реакте делать спа дергающую крудсервис, или можно использовать как простой многостраничник?
>нипонял
Можно сделать сингл пэйж апликэйшон или пилить как обычно(переходы по страницам спомощью гет запросов)?
Эм бамп, что всех мамкиных жсеров в кровати мамки уже загнали?
Ну тоесть если многостраничник то пилить на этом реакт роутере, в итоге страница не будет перезагружатся. А по старинке не делают?
Хелп? Что тестировать то?
> А по старинке не делают?
Ты еблан? это СПА, блять. С хуя ли оно должно перезагружаться вообще?
Почему нет? Можешь хоть одностраничные лендинги делать. Или блог с помощью генератора статики. Вот пиздатый пример сайта на реакте: https://pitchfork.com/
Кто-нибудь, помогите этим инвалидам установить ангуляр, сил больше нет смотреть эти страдания https://cybergame.tv/shkolopolis/
Даже магазин? В принципе карточка товара генерить по шаблону и все, я правильно понимаю?
А по поводу тестирования, что тестировать в реактате? Фунционально селениумом же тестить, а код реакта, ну может там будет пару методов в компоненте потестирую, а чо еще рендер с моком потестить?
Щас только подумал, а какая нибудь бизнес логика имеет место в реакте? Хотя сложно представить что можна за логику вообще делать, куда ее ложить там?
Не смотри.
Большое спасибо!
после обосраного фронт-енд треда как глоток свежего воздуха
дай бог здоровья тебе и твоим близким!
двачую этого разумного джентельмена
Бамп.
я тебе не отвечаю потмоу что твои вопроса выдают в тебе дебила которому бесполезно что-то объяснять. иди кантора дрочи какой нахуй реакт блядь
хуита это твой подход к изучению технологий и то чем закончится твоя попытка вкатиться
Нет хуита это твои ответы, я просто спросил про тесты, а ты мне почему то советуешь жс учит, вот нахуя?
>спросил про тесты
>а какая нибудь бизнес логика имеет место в реакте?
нет ты не только спросил про тесты, ты еще обнаружил свою полнейшую некомпетентность
Ну какая бизнес логика там может быть? Кто на фронте считает расчет цены доставок или скидочную цену? Ты шо упоротый?
Блят вот тебе сложно просто ответить, или ты совсем наркоман?
Ну да я не знаю как реакт работает, поэтому и спрашиваю про реакт сука, а не про жс как бэ.
Если можно скажи еще как организовывают проект на реакте, структура каталогов и все такое. Плиз :3
Просто признайся что ты троль и не знаешь жс и реакт, тогда я тебя прощу. Иначе же ты бы уже давно рассказал как чо делать. Вооот.
Намекаешь что внутри src не создают никакой структуры папок под сервисы компоненты бизнеслогику?
Сделал такой код
function sequence(start, step = 1) {
var k = 0;
return function sum() {
if (k > 0) {
return start +=step;
}
if (start) {
k++;
return start;
}else {
return 0;
}
}
}
Но все равно пишет что step должен быть 1 по умолчанию. http://prntscr.com/igspxm
признаюсь, я тролль. а еще я хороший жажаскрипт программист который научил 16 летнего школьника зарабатывать жажаскриптов деньги в нищей стране. а до этого я сам будучи школьником научился. я знаю как надо учиться, что надо учить. а мне постоянно пишут "ты не отвечаешь на мои вопросы значит ты тролль и ничего не отвечаешь". я не отвечаю на ваши вопросы потому что вы бесполезные долбоебы страдающие хуйней и вас можно только говном кормить.
Image - HTMLImageElement.
Coordinate - Object.
Но, блять, координата-то передается! Ее видно, а вот изображение – нет.
О, заработало. А почему так, анончик? Почему await в промисе сломал все нахуй? Я, кажется, видел на stackoverflow, что ничего такого в этом нет.
ты что не можешь переписать плоским кодом(раз уж юзаешь асинк-авейт) так чтобы не надо было внутри промиса юзать асинкавейт? ну ты его там юзаешь потому что тебе значение нужно которое промис возвращает.так объяви эту функцию асинком вместо промиса сделай авейт и ниже сделай еще один авейт с уже доптсупными парамтерами от первого
возьми прямо сейчас напиши свою реализацию промиса. можно концептуально(опуская в детали) без перехватки ошибок и т.д.
ну а понятно почему работает? переменная image это аргумент а нихуя не переменная, замыкания на нее не создается
да напиздел. нормально замыкание видит аргументы функции без создания переменных.
хули image undefined делает в local когда должна быть в closure?
код ниже че делает?: может он ее переопределяет на андефайнед
удали вызов метода drawImage и поставь брекпоинт до него, посмотри че будет в Closure
может быть это метод который меняет image и она становится андефайнедл(это бы объяснило хули она делает в local скоупе блядь!)
Даже в пастабин не осилил, верх адекватности, все с тобой ясно, ты даунич который нихуя не умеет, и нахуя ты оживил тогда этот говнотред?
челик занимается ванильным жажаскриптом, решает задачки на понимание замыканий и самостоятельно решает свои проблемы поразмыслив. мне насрать что он постебин не осилил. а мертвый тред я оживил чтобы на ебало твоей мертвой матери насрать
это обычная блочная переменная на котороую распространяется баблинг
зацени мне тут пишут что я нихуя не понимаю в жажаскрипте и зря оживил мертвый тред
Да ты не понимаешь, вообще я единственный писал в этот тред, помогал тебе его развивать, а ты так меня нахуй сейчас послал, ну ты и пидор, выбрал какого то гея с замыканиями, вместо меня с реактом! Я хуею как можно быть такой крысой.
бля ору. обидел ребенка. ну прости, ребенок!
ребенок бросай свой реакт ты же обломаешь зубы об него без всякого толку. ну че ты ей богу! сколько у тебя опыта в кодинге и какого?
Да я не обиделся на тебя крыса кун, буду ждать кто поможет, раз тебе сложно ответить. <3
Опыта немного, чисто для развлечения интересуюсь не по работе.
охранники из пятерочки такие: а нахуя мне эти замыкания-хуекания, патерны-хуятерны. в вакансиях на 2к $ пишут что надо реакт, значит буду учить реакт
а потом "ой памахите памахите нихуя понять не могу"
достойная смена пидорахенскому скаму на заводах растет. горжусь
Согласен чо там это замыкание тока довен не поймет, патерны вообще 20 штук максимум ито нахуй используют 5 отсилы.
Так то конечно можно дальше пилить как понимаешь реахт, но потом тебя возьмут на мое место когда я там наговнякаю или твою тянку, будешь плакать и грызть кактус. Попомни мои слова.
Причем тут пидорахенскам я чото непонял, ты ща о чем вообще болезненный?
напомнило полумную бабку и "за твои грехи будешь гореть в аду" буду-буду не волнуйся и ты меня работы лишишь, и тянку уведешь, и реакт освоишь. все будет, главное не проеби эти новые курсы со скидкой и вот эту книжечку про мотивацию с торентов скачай
Аноны, вопрос задавали раз миллиард, но и я хочу знать, пожалуйста.
Очень хочу вкатитьс в веб, но не могу год-два менять текущую работы (около ойти). Сидя дома, изучая, работая, вникая, я могу сам дорости до внятной позиции перед выходом (если будет успех)? То есть пробоваться во фриланс может или просто пилить проекты. Понимаю, что в том же энтерпрайзе я хуй доросту дома до мидла. А здесь? Интересует больше back, но думаю, что во фронте это более реаально. Спасибо
Ты мне тоже напомнил полоумную бабку, которая постоянно кудахчет про то что раньше все были интелегнты а сейчас все слушают свою музыку сотанинскую, а когда спросишь, так научи жизни, начинает кудахтать, да вас бисполезно учить, вы пропащиие.
ты не спрашиваешь у меня совета говно, а требуешь ответов на свои говно вопросы по говно реакту которые тебе нихуя не дают. я тебе даю актуальный правильный совет как освоить технологии разработки программного обеспечения и вкатиться в индустрию, а ты их игнорируешь, обзываешься и сулишь вытеснить с рынка труда. это пиздец наркомания. как с таким мусором разговаривать? тебе только в рот срать можно и всё.
`Error: Permission denied to access object`
Т.е. я подключаю свой скрипт к странице(например в моем дополнении к файрфоксу или через greasemonkey например) и хочу чуть-чуть отредактировать чужой скрипт. Так возможно? Хотя наверно это считается небезопасной штукой и запрещено.
нет ты гавно не даешь мне ответы про реакт, нахуя мне твои говнометодологии для разработки анусов. Тебе с таким стилем общения только срать в череп можно, что я сейчас собственно и сделал.
Сделать это в консоли браузера легко, а вот из другого скрипта уже похоже хрен тебе.
Фу таким грубым быть, еще и жабакрипт погромист, ты мерзок.
Вот так вот тони парашный тред, в котором никто ниче не может объяснить про реактжс. Я тебе говорил оп со мной шутки плохи, я тебе помог тред создать я его и потоплю.
Гугли «Learning React» (Alex Banks, Eve Porcello).
Анон, подскажи нюфане, что не так с тестовым ajax - запросом.
https://ideone.com/obnByS
Браузер пишет, что дело в синтаксисе.
Я вообще недавно работаю с JS и пока могу задавать абсолютно тупые вопросы. Заранее извиняюсь.
Лол, сам понял, побежал в тред извиняться, как твой пост.
>поставь линтер в иде
Что, простите?
И да, я правильно понимаю, что чтобы запрос, сработал его нужно запихнуть в функцию и сделать условия её вызова. Так ведь?
ты долбоеб малолетний. я не оп
нет. купи плагин для nginx луче
Как вариант, через замыкания.
Вот тебе заготовок функции, которую можно будет допилить до решения задачи:
var debounce = (f, ms) => {
__let toutId = null
__return args => {додумой сам и подставь свое решение}
}
Чому нет? В репозиториях npm есть врапперы ffmpeg для ноды.
Я юзал в своем пет-прожекте, мне норм. Только все это дело лучше запускать в отдельных инстансах, абы что не упало вместе с боевым сервером, лол.
>>1143425
Анон, помоги. Есть опытные в тестах?
Тестирую фронт, есть несколько вопросов
Использую js в связке с webdriverselenium. Нужно проверить возможность ввода текста в обычный input. Пока придумал только написать туда что-то, а потом считать и проверить: совпало или нет. Есть способ лучше? Я почти уверен, что есть
Потом. На странице есть элемент, но он внизу страницы. По умолчанию webdriver к нему доступ получить не может. Как проскроллить страницу вниз?
В сети почти вся информация за 2011-2012 года
>В сети почти вся информация за 2011-2012 года
«JavaScript Testing with Jasmine» вполне себе современная... или 2013 год — это уже устарело?..
У меня проблемы с драйвером, а не с фреймворком
1143540
Мне в консоль выводятся массивы и нужно их значения запихнуть в таблицу HTML.
Где написано, как это делать?
Тут https://learn.javascript.ru/ajax не нашел.
Продолжай.
JSON.parse
var form = $("#mainForm");
$(document).ready(function(){
$("#formSendBtn").click(function(){
card.toggleClass("hidden");
});
});
Почему не работает?
все разобрался
Так ответь на мой вопрос, онон: нужно, чтобы последовательно выполнялись транзишны разных элементов. Заканчивается один — начинается другой. Попробовал просто вложенные друг в друга блоки addEventListener, но это оказалось неудачное решение: работает только в огнелисе, к сожалению. Теперь пробую через дожидание в асинхронной функции (как я понял, реализуется это так). Но терплю отсос из незнания данного раздела.
Тупо ебануть кейфреймы в цсс вряд ли получится, ибо переходы должны быть для разных элементов и зависеть от того, загрузилось ли содержимое страницы.
Мой говнокод: https://ideone.com/kg5UL6
https://jsfiddle.net/wmsr54yq/ код. (Не работает, потому что надо свой API ключ добавить снизу в async defer).
Что требуется: добавить маркер к локации, которая получается по геопозиции. Есть отдельный код для геолокации(https://developers.google.com/maps/documentation/javascript/examples/map-geolocation), есть для маркера (https://developers.google.com/maps/documentation/javascript/adding-a-google-map).
Соеденить в одно у меня не получается, ругается то на то, что position is not defined, либо google is not defined. В данном примере проблема именно с position.
С меня нефть.
Можем перекатиться в телегу, дам свой ключ.
Сажа случайно прилипла. Бамп.
Потому что много где пишут, что jQuery нинужен. Жирный, нагруженный, избыточный, некрасивый ad hoc, полезный только для анимированных простых сайтов-визиток, и то далеко не всегда. Ещё, было дело, ментор на стажировке грил, что от сей библиотеки уже лет 5 как отказались и у здоровых людей он встречается только в легаси-коде. И что всё надо писать на чистом жс, чтобы было быстрее и эффективнее.
Сам же пока ощущаю, что на нативном жс несколько сложнее делать многие вещи, связанные со сложными анимациями — хотя думаю, объективная разница в сложности здесь невелика, просто у меня рука не набита. Или жс говно. Почему не могли его сделать со статической типизацией, чтобы отлавливать большинство ошибок до, а не во время исполнения?
Кроме того, есть Vue.js, у которого весьма крутые возможности для анимирования на все случаи жизни. Почему бы не пользоваться им, когда так нужны красивости?
Опиши, анон, что думаешь по теме надобности jQuery.
P.S.: Пиздец, блядь, уже заставил свой быдлокод работать и плотить нологи, а мне так никто и не ответил. В общем, просто запилил на таймаутах: на стаковерфлоу пишут, что это такая себе практика, но я вижу, что код получился рабочий и кроссбраузерный.
Теперь я хочу сделать некий ПРОЕКТ - показать людям на собеседовании для того что бы взяли джуном. Что бы вы посоветовали такого сделать? Например, не слишком примитивно для потенциального джуна сделать игру виселицу с анимацией казни чувачка? А если разнообразить это свистоперделками? Или что-то посоветуйте другое, у меня руки чешутся, но не хочу на заведомо хуевое дело взяться.
Охуенный у него свитер с оленями
> Во-вторых, все абстракции имеют не только ценность, но и цену.
Тем временем у раста zero cost abstraction
Нужен простой скрипт, который пройдется по всем кнопкам и отработает соответствующий скрипт, аналогичный ее нажатию.
JS не знаю совсем, нужен пример, от которого оттолкнуться. Куда копать?
делал недавно тестовое пикрил условия
https://pensive-darwin-236a67.netlify.com ето то шо я сделал за 15 часов где-то на ng2, ngrx, ng material
ну а как ты собираешься их учить?
только бери не англуар, а Vue. ставь задачу и учи походу делая. если база ванильного жс нормальная, то осилишь.
Я думал это все делать в порядке частной инициативы, не обязательно же юзать фреймворки. Знание ваниллы тоже важно, правда? Ну если вдруг что-то сломается. Просто хочу интересную идею.
конечно без знания ванилы никуда. идея тебе нужна не интересная, а любая. пока будешь искать интересную заебешься и так ничего не и не начнешь
А расскажи плиз подробности. Где делал - дома или у них там? Судя по времени, дали на дом? Что еще спрашивали? Как должность называлась?
А нет, все равно не то, что мне нужно. Вот этот кусок:
$(document).ready(function(){
var card = $("#messageCard");
var form = $("#mainForm");
form.submit(function(){
var method = $("input[type=radio]:checked", "#mainForm").val();
form.attr("method", method);
});
});
Должен менять метод отправки формы. Но работает криво. Может вообще не стоит париться с формами и просто формировать запросы в коде?
Как справится с ощущением неполноценности от того что ты пишешь на ЖС? Куда ни зайди в ПР всюду насмехаются, мол, ЖС макакен и всё такое. Сейча из-за этого + из-за того что веб (не совсем то чем хотел заниматься, мне больше мобилочки в университетские времена были по душе, но не повезло куда-то пристроиться, поэтому пришлось идти туда) испытываю некоторый профессиональный кризис. Пару лет писал приложения на фулстеке во всяких нодах и электронах, потом волею судьбы пришлось пойти целиком во фронт, так после этого я что-то вообще приуныл, ибо совсем не нравится, ковыряюсь во всяком говне написанном в начале десятилетия. Работа эта порядком надоела, хочу уволиться, но боюсь совсем ничего нормального не найду.
Никак, это правильное ощущение. Ты до конца жизни на JS формочки двигаешь по экрану браузера. И к программированию имеешь опосредованное отношение. Ты на 90% дизайнер, и на 1% программист. А ещё на 9% непонять что.
Смотря что для тебя программирование,
если просто способ зараьбатывать, то бери и не ной,
а если дело жизни, тогда поскупись деньгами и делай что тебе ххочется
Накопи себе на полгода/год денег вперёд, чтобы не сдохнуть с голода и иди ищи работу по душе.
Поясните за эту хуйню. Чому я запуская фотошоп вижу в процессах node.js ? Как вы в фотошоп со своим джаваскриптом залезли?
>>44841
В том то и дело, что если я захочу например перекатиться в разработку под Ведроид, то придётся начинать с самого низа и работать за небольшие деньги. Если вообще возьмут, без опыта ведь никому не нужен. К тому же, уже привык к более-менее приличной зп и появились какие-то потребности, которые зарплатой новичка не окупить. В ЖС у меня есть хороший опыт и навыки (во всяком случае мне так кажется), да и на гите у меня проектики какие-то есть чтобы показать на собесе. Такой вот камень преткновения. Вообще, мне кажется что если мне с ЖСом удастся попасть в гейм-дев (браузерку там какую пилить на канвасе), то я думаю мои переживания по поводу "неполноценности" в качестве программиста как рукой снимет.
Побайтовые сдвиги влево и вправо, Uint8Array и Int8Array, WORD, little endian и прочее для эмуляции ассемблерных команд, поиск путей оптимизации производительности кода путём использования хитрожопых приёмов (округление с помощью >>, быстрое преобразование в восьмибитный unsigned Int с помощью & 0xFF), чтобы requestanimationframe выдавал стабильные ~60 fps и не тормозил, то что это как не байтоёбство?
Ты даун?
method: 'POST',
url: 'https://api.idex.market/returnTicker',
json: {
market: 'ETH_'+token
}
}, function (err,resp, body,){
var idexBid = body.highestBid;
var idexAsk = body.lowestAsk;
console.log("IDEX BID: " +idexBid+ " IDEX ASK: " +idexAsk);
}
)
Господа, как мне передать значения idexBid и idexAsk во вне?
и хули? за пределами функции она будет равно значению заданному снаружи
как горит жопа сука, нахуя так неудобно сделали? почему я имея все данные просто не могу с ними блять нормально работать, а должен хуярить в бубен, колбэки какие-то хуеки сука, какой пидорас догадался придумать такую хуйню
Ответ от сервера ты тоже сразу имеешь, вася?
Не нравятся коллбэки, делай через async/await, кто ж мешает.
я же нуб, только начинаю, нихуя не умею, жопа горит. ведь данные я получаю, а достать их не могу.
покажи пожалуйста на примере моего кода, как это реализовать.
Не будет же никто платить за мою тормознутость и постоянное переделывание кода
Будут. Ведь твой час будет стоить намного дешевле, чем час опытного чувака.
https://ideone.com/C7hRsJ
Пошто у меня в консоли не выводится содержимое первого элемента массива (который сам является массивом)?
Лол, для такого результата пришлось потратить несколько часов изучения мануала.
Но теперь я знаю, как можно использовать рекурсии!
Правда, я так и не понял, что быстрее: цикл или рекурсия?
нет, я всё ещё тут и мой хуй в твоём рту.
Во-первых, вне коллбека success никакой даты нет. Во-вторых, что в дате-то, массив или json? Если второе, то сначала нужно спарсить, а потом уже [0] делать на объекте.
Не знаю, о чём >>45911, но сформулировано хуёво — ни входных, ни ожидаемых выходних данных, ни ссылки правильной хотя бы — нихуя. Плохой вопрос.
>Во-первых, вне коллбека success никакой даты нет
Т.е. данные полученные в запросе обрабатывать нужно в рамках запроса?
А как их использовать вне скрипта-то?
>Во-вторых, что в дате-то, массив или json?
JSON.
>Если второе, то сначала нужно спарсить, а потом уже [0] делать на объекте.
var jsonObj = JSON.parse(data);
>ни входных
Код же я предоставил! Или что-то ещё нужно?
>ни ожидаемых выходних данных,
Содержимое ответа от сервака.
>ни ссылки правильной хотя бы — нихуя. Плохой вопрос.
Ссылки на что?
Теперь такой вопрос: как из аякс-запроса перенести значения в тело сайта.
jQuery
Все так же в глобальной зоне видимости, вставляется тегом script.
Сейчас юзается es modules, когда каждый скрипт загружается через такой же тег, либо через асинхронный import(). зона видимости у каждого модуля своя.
На нодежс есть require и module.exports, но в последней версии появились такие же импорты, только они детектятся не по script type=module, а по расширению .mjs
>Т.е. данные полученные в запросе обрабатывать нужно в рамках запроса?
Да.
>А как их использовать вне скрипта-то?
Вне скрипта жизни нет. ЖС асинхронен изначально. 9-ая строчка твоего выполнится до того, как будет получен ответ на запрос. Никаких данных на тот может ещё быть не может.
Теоретически, ты можешь присваивать данные некой глобальной переменной, либо как белый человек использовать async/await.
>Код же я предоставил!
Входные данные это не код. Это хотя бы вывод того же console.log(data).
>Содержимое ответа от сервака.
Мда.
"Имею массив a = [1,2,3,4]; делаю a[2] и получаю в выводе 582, хотя ожидаемо должно быть 3. Почему так?". Вот тебе пример нормального вопроса.
>Ссылки на что?
Ссылки, по которой ты ajax запрос делаешь, блядь, чтобы мы сами могли его сделать и увидеть, что же там приходит, раз ты немощный такой.
>>45941
> в тело сайта.
?!
В глобальную переменную? Возьми да присовой. В DOM-элементы? Возьми да создай элементы.
1
var npage;
2
fetch('https://news.yandex.ru/yandsearch?rpt=nnews2&grhow=clutop&text=security')
3
.then(function(response) {
4
return response.text();
5
}).then(function(content) {
6
npage = content;
7
});
Если данный код размещен на произвольном веб-ресурсе (например, на https://testsite.com/ ). Какие данные будут в переменной npage ? А что будет в переменной npage , если выполнить этот код на https://news.yandex.ru ? Из-за чего возникла разница?
И возможно ли это вообще? А то мне уже начинает казаться, что загрузка файлов через ajax появилась только с FormData.
Кроме node.js и миллиарда клонов Jquery ничего нового с 2008 толком небыло. Хотя взять тот же GO который от первых версий отличается так, будто это вообще другой язык. Или что это не язык для двигания кнопочек и взаимодействия с интерфейсом - вообще лол.
Сам спросил - сам ответил. Но если я неправильно нагуглил, то поправьте.
Исторически существовало два способа отправить через ajax файл - FormData и самому генерировать FormData вставляя туда через FileReader содержимое файла. На данный момент FileReader.readAsBinaryString() является deprecated, соответственно самый "старый" и "валидный" способ загрузки файла - использование FormData. А может и единственный, хуй знает, насчёт современных возможностей пока не гуглил.
>Как загрузить файл на сервер без использования FormData и jQuery, ёбаный рот?
Эммм. Ну хуй знает. Наверное это загружает файл на сервер. Какое это ещё по твоему может иметь отношение к делу?
Не он, но насколько я знаю в POST позволено крепить файл напрямую к запросу в боди. Тип крепимого дозволен только Blob или File.
Ну так ты и хотел файл отправить. И вот тебе без Jquery и вообще даже без JS!
Ответ уровня PHP. Ну а хули, он же тоже принимает участие в загрузке?
Я спрашиваю, возможно ли без использования FormData передать файл на сервер. Ты еще скажи, что это через интернет делается. Ясен хуй, что POST, а как запихнуть его (файл) в POST? Кроме интерфейса FormData вариантов нет, раз все FileReader.readAs* устарели, кроме readAsDataURL?
>>46344
Что-то типа xhr.send(yobaFileInput.files[0])? Да, спасибо, но про это я знаю (хотя не проверял на практике), интересна возможность отправлять файл и другую информацию. То есть, реализовывать FormData не через new FormData, а руками составлять запрос
https://learn.javascript.ru/xhr-forms
Как в этой статье. Только тут вопрос загрузки файлов обошли стороной, написали
>содержимое файла
А как его получить в формате необходимом для передачи (DataURL, как я понимаю, не подходит) - хуй знает.
>Кроме node.js и миллиарда клонов Jquery ничего нового с 2008 толком небыло.
Жеквери скончался, а его клоны давно в мусоном ведре, потому что всё что в них было давно уже перетащили в нативный яваскрип, в котором "ничего нового с 2008 толком небыло". А промисы, всякие асинки/эвейты, прикрученное ООП и прочее давно уже сделали код неузнаваемым для человека из 2008. Ты либо залётный из других тредов и понятия не имеешь о чём говоришь, либо просто так неловко тралишь.
Пример с fetch, смотри второй ответ.
https://stackoverflow.com/questions/36067767/how-do-i-upload-a-file-with-the-js-fetch-api
>А как его получить в формате необходимом для передачи
https://developer.mozilla.org/ru/docs/Web/API/File
https://developer.mozilla.org/ru/docs/Web/API/Blob
>Жеквери скончался, а его клоны давно в мусоном ведре,
Чот ангуляр с реактом живы до сих пор. Хотя ты конечно же скажешь что это не клоны, ага.
>прикрученное ООП
То что прикрутили только тут могут называть ООП, в других тредах это называют костылями на костыли. Все аспекты ООП вроде инкапсуляции, наследования и полиморфизма тут идут через такие жопные анусы, что даже C чистый после JS кажется чем-то простым и непринуждённым.
>промисы, всякие асинки/эвейты
Это всё было в 2008, да, это было в неявном виде но тем не менее асинки и в 2008 были. Просто это было по другому. Говорить что их прямо таки добавили, потому-что раньше их небыло некорректно.
Ну анон, ты сам изначально задал некорректно вопрос, а теперь недоволен что я тебе посоветовал не то.
>реализовывать FormData не через new FormData, а руками составлять запрос
А как ты впринципе себе это представляешь? Вот я например выбираю на компе файл и запихуиваю его расположение в переменную. У тебя это по другому чтоли?
>Хотя ты конечно же скажешь что это не клоны, ага.
Конечно скажу. Первый это вообще фреймворк, а не либа. Да, ангуляр 1.Х был основан на кастрированной версии жеквери, но к Angular X это отношения не имеет вообще. А Реакт с жеквери вообще ничего общего не имеет.
>Это всё было в 2008, да, это было в неявном виде но тем не менее асинки и в 2008 были. Просто это было по другому.
Пример в студию, особенно интересно про асинки.
Небольшое дополнение к моему посту.
>ангуляр 1.Х
Забыл добавить важное - и отправился он в мусорку вместе с жеквери.
>То что прикрутили только тут могут называть ООП, в других тредах это называют костылями на костыли.
Я знаю. Но тем не менее это всё таки добавили и это развитие относительно того времени, что уже опровергает тезис "ничего нового с 2008 толком небыло".
>Первый это вообще фреймворк, а не либа. Да, ангуляр 1.Х был основан на кастрированной версии жеквери, но к Angular X это отношения не имеет вообще.
Ой, ну так-то да. Сменили такие название с либы на фрэймворк и ХОП, уже совсем не то что было, ага. Чё они вообще не назваличсь новым ЯП тогда?
>А Реакт с жеквери вообще ничего общего не имеет.
Ну это не прямой но всё-таки наследник Jquery. Просто между ними очень много времени и клонов Jquery было много, но таки суть одна и таже.
>Пример в студию, особенно интересно про асинки.
Мне реально лень искать в архивах пример десяти летней давности. На это банально уйдёт часов 10. Могу лишь сказать что на JavaScript.ru это всё есть и как раз тогда и было в самом рассвете. Можешь поискать если интересно.
>>46388
>это всё таки добавили и это развитие относительно того времени
Ну хз, как по мне это больше похоже на болтание в проруби. Вроде и сдвинулись, но сантиметра на два, когда другие ЯП считай заново всю внутреннюю структуру переписали, пересмотрели архитектуру, подходы, усовершенствовали функционал, добавили чуть ли не 100% дополнительного функционала.
>Ой, ну так-то да. Сменили такие название с либы на фрэймворк и ХОП, уже совсем не то что было, ага. Чё они вообще не назваличсь новым ЯП тогда?
Не важно как они называются. Важно что общего у них ничего нет.
>Ну это не прямой но всё-таки наследник Jquery.
В чём?
>Мне реально лень искать в архивах пример десяти летней давности
Не увиливай. Жду примеров. Промисы с асинками специально придумали чтобы бороться с таким явлением как callback hell, и любой кто с ним сталкивался в том самом 2008 не сморозил бы ничего подобного.
Я всё больше убеждаюсь в том что ты понятия не имеешь о чём говоришь. Поэтому в связи с этим:
>когда другие ЯП считай заново всю внутреннюю структуру переписали, пересмотрели архитектуру, подходы, усовершенствовали функционал, добавили чуть ли не 100% дополнительного функционала
выдвигаю вопрос. Может ли человек со знанием ГО первого релиза, сразу разобраться что происходит в современном ГО? Может ли человаек со знанием JS 2008 сразу разобраться в современном ES2017? И почему да/нет?
>Может ли человек со знанием ГО первого релиза, сразу разобраться что происходит в современном ГО?
Нет, изменения в синтаксисе языка слишком сильные. Периодически даже одно обновление ГО вызывало обвал целого проекта. Причём бывало это довольно часто.
> Может ли человаек со знанием JS 2008 сразу разобраться в современном ES2017?
Если говорить про чистый JS - да. Если говорить про всякие либы естественно нет. Но по факту обновлений языка было ну не так много и разобраться во всём можно примерно недели за две.
>Но по факту обновлений языка было ну не так много и разобраться во всём можно примерно недели за две.
А сколько займёт разбирательство в ГО?
>А сколько займёт разбирательство в ГО?
Сильно зависит от твоего уровня. Но если прямо с нуля в программировании - где-то месяца два. Ну за пол года практики ты освоишься на уровне специалиста хреновенького мидла. На джуна примерно месяц хардкора. Основы учатся недели за две по 8-10 часов в сутки.
>>46456
Координальных ломающих изменений действительно не было, но будем учитывать области где применяются эти языки (у ГО например не стоит за спиной туча браузеров разных версий). Однако сам упомянутый тобой факт требуемого временного промежутка для разбирательства говорит о том что язык не стоял на месте и выдвинутый тезис о "кроме Node.js и миллиарда клонов jquery ничего нового толком не было" не верен. Все современные вещи пишутся с использованием последних стандартов языка, которые отсутствовали в прошлом и будут непонятны без разбирательства человеку из 2008. Кончено же общая картина происходящего ему будет ясна, но это относится ко всем языкам в принципе.
Лист короткостолов?
Есть приложение на Express, использует Loki (это такая in-memory БД, но вопрос не по ней).
У меня есть папочка controllers, в ней контроллеры, которые к этой БД обращаются, при том, что она должна по идее создаваться в одном месте как-то так:
let db = new loki('loki.json')
Есть идиоматический способ передать контроллерам эту сраную db без манкипатчинга или заворачивания контроллеров в функции, принимающие db?
а я через some решил и оно походу даже работает
Филадельфийский?
>сть идиоматический способ передать контроллерам эту сраную db без манкипатчинга или заворачивания контроллеров в функции, принимающие db?
Сделай доступным инстанс БД через app.locals, например:
https://expressjs.com/ru/api.html#app.locals
>>47349
Или через res.locals и завернуть в app.use мидлварю:
https://expressjs.com/ru/api.html#res.locals
const passDBInstance = db =>
__(req, res, next) => {
____res.locals.db = db
____next()
__}
app.use(passDBInstance(lokiDB))
Двощую
var variable = {property: value}
как сделать так, чтобы переменной variable присваивался не сам объект, а value определенного property. Ну то есть
var variable = object[property] не пойдет. Нужно шаманить именно с Object.property.methods, которые сидят в {property: value}. Помоги, с меня фотка няши с собакой.
Спасибо, но это не то. Возможно неправильно выразился. Нужно сделать именно так, чтобы const variable ссылалась на сам объект, а не на его определенный 'property', но возвращался именно он. Ну вот для функции, допустим,
const variable = function(){
return 'property';
}
в variable вернется 'property', хотя переменная ссылается на функцию. Есть ли похожее дерьмо для объекта?
https://learn.javascript.ru/object-conversion
Смотри тут toString и valueOf. Правда, придется каждый раз кастить объект к строке\числу. Ну и проперти может быть только строкой или числом в таком случае.
let y = {
property: 'abbbb',
toString: function() {return this.property}
}
let v = y+''; //Получится v==='abbbb'
Сорян, что ракую, только сейчас в голову пришло. Вот короче есть:
Class TNN {
constructor(){}
method1(){}
method2(){}
.
.
finalMethod(){}
}
const exampleOfClass = new TNN();
потом на exampleOfClass вызываются много раз методы его класса (кроме finalMethod), можно ли автоматически запустить finalMethod один раз после всех вызовов тех методов? Ну то есть указанные методы прошли, а потом запустился finalMethod самостоятельно? Промисы? Прост дичь ебучая эти промисы.
Ненене. Возьмем мой предыдущий пример с class TNN.
const exampleOfClass = new TNN();
const result = exampleOfClass.method1.method2.method3.method1..... и так далее. То есть ЯВНО вызываются любые методы из класса TNN, кроме finalMethod. Вопрос, как запустить его НЕЯВНО и только один раз. Я пробовал через setTimeout, но логично, что нихуя не вышло. Он вызывался, но менять value of property не хотел. Эксепшеном не выскакивало никаких. В общем хуйня. Остаются промисы, но я хуй знает сколько уйдет на то, чтобы разобраться в них.
Просто учу все абсолютно сам, и не кого иногда спросить совета или мнения по поводу некоторых вопросов.
Если кто шарит нормальноте кто только вчера написали кнопку со счетчиком и подумали что они фронтендеры идут нахуй, буду рад замутить коллаборацию и вместе дрочить передний конец.
> Пока что ебашу только на удаленке
Если не секрет, где работу искал? Работаешь на бирже или с одной конторой?
Прост тоже реакт юзаю для инхаус прожектов, но за еду, думаю, где бы найти подработку.
Сначала пытался на weblancer, еще когда просто верстал(полтора года назад), но там люди абсолютно мусорные и безответственные. Благо еще со школы было очень неплохое знание английского на разговорном уровне, и я вкатился на upwork. Если хорошо шаришь прогу и можешь свободно читать документацию на английском, проблем не будет, сам знаю пару ребят которые в англ. языке бом-бом, но по тех. части могут спокойной общаться.
@alexalexalex1 телеграмм, если интересно поковоркаться и все в таком духе
Ну, я рад был бы пообщаться по Реакту и смежным темам.
Только опыт работы у меня лежит немного в другой плоскости - я UI на реакте разрабатываю, преимущественно, для систем контроля и управления (HMI и микроскада), лол. Надо бы перекатываться из этого болота.
Пикрил - одна из страниц подобного проекта, ща с коллегой допиливаем.
Это Y плюс пустые кавычки. Таким образом, js понимает, что ты пытаешься этот объект использовать как строку и использует его метод toString.
https://jsfiddle.net/qk3kfrxu/1/
То, что писал выше про valueOf и toString на твоём примере. Эти методы могут внутри себя вызовы на другие методы делать, не только возвращать значение. Туда и можешь запихнуть свой finalMethod. Только, опять же, нужно будет приводить объект к строке/числу, у меня это через плюс перед цепочкой вызовов сделано.
Не знаю каким хуем, но тесты прошли после использования toString. Дописать + к переменной не было возможности т.к. тесты на удаленном серваке. По итогу в переменной z сидел объект, а не его строчное представление свойства, но тесты прошли, и пошло оно все нахуй. Джанкенскрипт - язык будущего. Спасибо, анон! Да преисполнится благодатью твоя келья!
https://hastebin.com/uxeruxaxij.js
Делал как в примере "Complex example" http://www.material-ui.com/#/components/table
Сорри, я долбоёб и вместо круглых скобок использовал фигурные.
Вкатываться в js, надеюсь найти наставника для помощи и товарищей нубов для обмена опытом
Если кому интересно напишите ваши контакты , любые , можем конфу в телеге создать
https://habrahabr.ru/company/ruvds/blog/339176/
Плюсую
Столько таких конф было, умирают меньше чем за неделю.
Сейчас вот сижу в конфе @300knanosec, вроде еще дышит.
Есть список автоматически генерируемых ссылок вида:
<a href="javascript:gg1(<%=rs("InstitutionID")%>)"><%=rs("Brief")%></a>
Сейчас они все открываются только в том окне, в котором кликаешь, а нужно, чтобы их можно было открывать в новой вкладке по желанию (колесиком или Ctrl-кликом)
Что поменять в функции?
Это бэкенд
1.https://t.me/js_ru -JavaScript — русскоговорящее сообщество
2. https://t.me/javascript_ru - Javascript
3. https://t.me/js_begginers - JS Начинающие
Тыкните лицом в ошибки и уебищные места в коде, предложите, что бы вы хотели видеть еще в этом расширении.
Проект – https://github.com/Amaimersion/2ch-helper
Например, 011 почему-то превращается в "9".
> 011 почему-то превращается в "9".
Потому что восьмеричная система счисления. Или ты в школе не учился?
>лупы — это говнокод.
>Соотвественно по дефолту выбираются forEach
>лупы — это говнокод
>выбираются forEach
xD
Ну так ты и пишешь как 99% JS кунов. Всем похуй как-бы.
Это в восьмеричной системе 9. В строку можешь запарсить через такую жопу: 0+011.toString(8);
Тут 011 изначально парсится в 9 в десятичной, потом ты приводишь ее через toString(8) к строке из числа 9 в восьмеричной системе, то есть, 11. И потом (точнее, в начале) добавляешь 0 к строке. Язык будущего, да.
Такое ощущение что два дебила говорят. Первый не смог обьяснить в чём у него конкретно говнокод, а второй ему советует больше этого говнокода писать толком не разобравшись в ситуации.
Что? Вопрос был "как писать красиво?". Хочешь сказать, что большее количество компонентов, когда каждый состоит из других компонентов с понятными названиями и использует state компонента минимально, по сути являясь только view из mvc - это говнокод? Говнокод - это делать весь фронт в одном компоненте и писать миллион методов для управления логикой этого монстра.
Так их надо делать, чтобы код этот потом можно было использовать в других местах, а не просто так. Ясное дело, что каждый див ты не будешь оборачивать в компонент, но кнопку, для которой есть логика и стили - почему бы и нет?
Хочу запилить простой скрипт который в определенное время каждый день постит в дискорд сообщение или с основного моего аккаунта, ну или через Webhook, как это сделать? Как запускать js-скрипт?
Так а нахуя ты этот 0 вводишь-то вообще? Если у тебя на входе число (тип переменной в смысле), то никакого нуля там быть не может, потому что это не строка.
А если нужны нули перед числом, то и добавляй эти нули после перевода в строку.
>>50207
>0+011.toString(8);
Не не проще ли сразу
>'0' + 11
сделать, а не ебаться с переводами туда-сюда?
>011
`${11}`.padStart(3, 0)
>>50508
>Как запускать js-скрипт?
Ну это можно сделать разными способами.
Либо в шедулер добавить скрипт, который через определенный интервал (или по триггеру) будет чекать новые сообщения и постить их, либо написать демон, который будет висеть и сам циклически проверять и постить.
Вопрос: какого хуя он возвращает undefined на почти всех трех и более значных входах, но при этом в консоль все правильно выводит?
Код http://embed.plnkr.co/5OpmwQ/
У меня есть только какие то смутные подозрения по поводу того что я вызываю рекурсивно эту функцию и что-то из за этого идет по пизде, но понятия не имею что именно не так и как фиксить
Если навести мышкой на квадрат, прокрутка под ним перестает работать
Как сделать, чтобы скроллинг работал постоянно?
https://codepen.io/anon/pen/OQeaPN
На данный момент единственное решение - при наведении мышки на красный квадрат переопределять скроллинг для нижнего элемента
https://codepen.io/anon/pen/rJEQxK
Проблема в том, что такой скроллинг будет без сглаживания
Неужели единственный вариант - пилить функционал с интерполяцией, чтобы сымитировать более менее похожий на дефолтный сглаженный скроллинг?
pointer-event использовать нельзя, потому что у красного квадрата будет свой функционал
Но суть в том, что не знаю где мне это тестить. На гитхаб пэйджс написано что можно только в статику, это никак похоже там не реализовать.
Куда мне засунуть приложение, чтобы можно было группой затестить?
Если бэк на пхп, то ищи халявный хостинг с пхп, их есть.
firebase
В пн иду на собесдование на джуна за 25к. Надеюсь возьмут и там хапну опыта в тим разработке inb4 очка.
Вот з-за таких дебсов, JS уже считают быдлоязыком хуже PHP.
>сымитировать более менее похожий на дефолтный сглаженный скроллинг
Откуда ты знаешь включен ли сглаженный скроллинг у пользователя или нет. При условии, что нет, твоя имитация будет непохожа на нативный скроллинг.
>Неужели единственный вариант
>у красного квадрата будет свой функционал
А что ты хочешь и как себе представляешь.
Возможно ты просто пытаешься решить какую-то одну задачу неестественным путем.
Вот нахуя тебе понадобился активный скроллинг под блоком, который должен иметь собственную логику?
>Откуда ты знаешь включен ли сглаженный скроллинг у пользователя или нет.
Это неважно. В этом случае мы по дефолту отключаем скроллинг через event.preventDefault() и переопределяем его как тут
https://codepen.io/anon/pen/rJEQxK
Это самый простой способ котоырй я нашел
Но без сглаживания
>При условии, что нет, твоя имитация будет непохожа на нативный скроллинг.
Я думаю можно максимально приблизиться к этмоу, дописав код с интерполяцией, но я пока не понимаю как это правильно сделать самым простым способом
>А что ты хочешь и как себе представляешь.
>Возможно ты просто пытаешься решить какую-то одну задачу неестественным путем.
>Вот нахуя тебе понадобился активный скроллинг под блоком, который должен иметь собственную логику?
Смотри. Есть основной блок, в котором скроллится длинная пичка вверх и вниз, красный квадрат - это образно переключатели картинок, которые появляются с небольшой прозрачностью при наведении слева и справа В ПРЕДЕЛАХ СКРОЛЯЩЕГОСЯ БЛОКА
То есть ты скроллишь пикчу вниз-вверх, но при этом навел сбоку на переключатель нечаянно и пикча уже не скроллится.
Поэтмоу нужно одновременно, чтобы боковые кнопки при наведении кликались, переключая картинки и в тоже время скроллинг работал над всей областью
Только вкатываюсь в программирование, пробую начинать с JS, и параллельно со штудированием learn.js для понимания языка пробую сам создавать функции из lodash.
Суть такова: проблемы с .compact (Creates an array with all falsey values removed. The values false, null, 0, "", undefined, and NaN are falsey). Не могу добиться того, чтобы в результате был массив с уже удалёнными значениями нулей и false.
Пока подставляю строку: https://codepen.io/JavaHutt/pen/EQqBod
Пытался замутить через continue, он подставляет предыдущее значение: https://codepen.io/JavaHutt/pen/MQNMJE
>Смотри. Есть основной блок, в котором скроллится длинная пичка вверх и вниз, красный квадрат - это образно переключатели картинок, которые появляются с небольшой прозрачностью при наведении слева и справа В ПРЕДЕЛАХ СКРОЛЯЩЕГОСЯ БЛОКА
Во примерно запилил как должно выглядить
https://codepen.io/anon/pen/rJEQxK
>Во примерно запилил как должно выглядить
Карчое не сделал форк. Тут сохранилась рабочая версия сглаженного скролла, который получилось запилить только что
Решение пиздец кривое, но работает
Вообщем, остается вопрос, как сделать тоже самое, но не так уебищно
Так бывает, ничего страшного.
просто в следующий раз обрисовывай конкретно задачу которую ты решаешь, а не только способы которыми ты пытаешься ее решить.
>вам понадобится redux
>а для реакта еще понадобится react-redux
>а для реакт роутера понадобится react-router-redux
>а если вы еще пользуютесь хуйняjs то вам понадобится хуйняjs-redux
>также можете сразу установить react-utils-redux, zalupa-redux и reredux-redux-optimal-redux@next
Еще можно прочесть статью Данюшки Абрамова, ю майт нот нид редукс для большего эффекта
хз кто нахваливает, у нас в конторе говорят говно, а реакт хвалят
вообще вся эта ебатень через 50 часов кода приедается, и как-то автоматом пишется.
Ты это я неделю назад, плевался, а щас вроде понял, удобно, привык, пишу код с улыбкой на лице.
Это шутка, аут.
Ну, а ты html'ку-то смотрел саму? Нет там никаких элементов с классом btn_green_white_innerfade, вот undefined и выдаёт.
Ищи, что за запрос такой в жсе делается, который добавляет это на страницу, если в браузере видно что-то подобное.
И? В allLists только булеаны или нет? === не приводит типы к общим, в отличие от == (собственно, в этом весь смысл ===), а значит элемет вполне может быть как не true, так и не false. 0 !== false // true
Надо было сказать, а не просто "любой айди".
Если ты хочешь выбрать элемент с несколькими классами (а у тебя их там два), то писать надо
>$('.class1.class2')
>const link = $('.btn_green_white_innerfade.btn_small_thin').attr('href');
Хотя я бы рекомендовал идти через взятие href'а от <a>, являющегося дочерним от элемента с классом .profile_in_game_joingame. Это более понятно, чем поиск каких-то непонятных кнопок, уникальность которых никто не гарантирует.
Сам разобрался, ещё раз спасибо!
Ну и что б ты понимал, что вообще было:
точка ставися перед классом, # ставит перед айди, а просто текст - это тэг элемента (div, a, img и т.д.)
Через пробел пишутся "дочерние" элементы. Соответственно, запись вида
$('#id .class img').attr('src')
найдёт ссылку на картинку в html вроде
><div id="id">
> <div class="class">
> <img src="tvoya_mamka.jpg">
> </div>
></div>
И вот твоя первая версия пыталась найти элемент с (несуществующим) тегом btn_small_thin среди детей элементов с классом btn_green...
нулы это не булы.
Но это просто блок на всю высоту, контент этого блока будет прибит к верху страницы.
>контент этого блока будет прибит к верху страницы
Нет. К верху родительского блока. А не страницы.
var falsey = [false, null, 0, '', undefined, NaN];
var compact = function(arr){
return arr.filter(val =>
!~falsey.indexOf(val) && !Number.isNaN(val)
)
}
как-то так походу
HTML:
<button class="btn btn-info mybtn my-1 my-lg-0" id="infoBtn">
<i class="fas fa-info-circle"></i>
</button>
JS:
function createButton(type) {
var btn = document.createElement('button');
var i = document.createElement('i');
$(btn).addClass('btn mybtn my-1 my-lg-0');
$(btn).addClass('btn-info');
$(i).addClass('fas fa-info-circle');
btn.id = 'infoBtn';
btn.appendChild(i);
return btn;
}
forEach какая то хуйня, закос под функциональщину. Либо ичпользуй map, reduce, filter не меняя стейта, либо забей хуй, ибо это уже не имеет значения что forEach, что обычный цикл
И где они разные? Кнопки одинаковые на обоих скринах. Разный у тебя паддинг между ними, и это проблема не кода кнопок.
То есть ты предлагаешь каждый раз, когда надо пройтись по массиву генерировать новый массив, даже если никаких изменений не было? Ты дурак?
>ибо это уже не имеет значения что forEach, что обычный цикл
Обычный цикл не может быть выражением.
У тебя в коде, который ты пишешь чистым html, есть переносы строк между кнопками. А при генерации js, ты эти переносы строк не вставляешь.
Или ты считаешь, что если ты выкинул по пробельному символу, то ничего поменяться не должно?
Обыкновенно.
Относительно этих самых блоков.
Ты вообще в верстку не умеешь что ли? Что за идиотские вопросы.
Прочитал как "недогоспода" и не ошибся.
Нет, не фиксед. У фикседа не может быть родительского блока.
Ты глупый какой-то. Давай прощаться.
Пора отпочковываться и создавать свой нодотред, подальше от этого раковника.
А почему до сих пор нету нодотреда? Сам бы посидел.
Хм, и правда. А я уже привык вайтспесы игнорировать.
Теперь вопрос: можно ли сделать так, чтобы изменение файла file.yoba не приводило к перезагрузке, а вместо этого обрабатывалось моим обработчиком, в котором я бы делал что нужно?
Смотря зачем тебе нужно пройтись по массиву, смысл в том что не должно быть сайд эффектов
Хочу взять новый язык, дабы расширить кругозор.
И очень сложно выбрать - взять функциональщину или ООП и что будет наиболее полезно?
Ебанытые не понимают что можно вывести n за пределы цикла и обращаться к ней один раз вообще, без обращения каждый раз к arr.length?
Я просто параноик и боюсь, что там в библиотеках могут встроенные майнеры или ещё что-то похожее, и нубы по типу меня не поймут и воткнут себе.
Как узнать, что библиотека проверенная, и что люди используют её и всем нормально?
PHP
ну вообще ни то ни другое, хотя можно сказать что это мультипарадигменный язык в котором есть как элементы фп, так и ооп
Посмотреть исходник?
Вот есть два ебаных объекта, которые создаются функцией:
const PIZDA = () => {
return {};
}
obj1 = PIZDA();
obj2 = PIZDA();
Хуле obj1 == obj2 \\выдает false
Даже при том, что уже всю хуйню перепробовал - менять прототип Object.prototype.toString, вхуячивать другие методы строкового представления в сам объект, который возвращается из PIZDЫ и т.д. Хуле не так? alert(obj1) выкидывает строку, alert(obj2) выкидывает ЭТУ ЖЕ строку, например. Но блять при сравнении, хуй оно работает. Я уже в конец охуел, спасите ебанутого.
А как тебе такое?
(![]+[])[+[]]+(![]+[])[+!+[]]+([![]]+[][[]])[+!+[]+[+[]]]+(![]+[])[!+[]+!+[]]
// -> 'fail'
У тебя при каждом вызове пизды создаётся новый объект, вот будь у тебя obj1 = PIZDA(); obj2 = obj1; то obj1 == obj2 выдал бы труе
function createCustomCheckbox(checked) {
var div = document.createElement('div');
var input = document.createElement('input');
var label = document.createElement('label');
$(div).addClass('custom-control custom-checkbox');
$(input).addClass('custom-control-input');
$(label).addClass('custom-control-label');
input.type = 'checkbox';
input.disabled = true;
input.checked = checked;
div.append(input, label);
return div;
}
>встречают по одёжке, провожают по уму, запомните это, тупорылые долбоёбы
>Он опять снимает куртку и я снова вижу эту блевотную ебливую кофту с футболкой с ебучим логотипом JavaScript, которые скрывают его дрыщявую фигуру, делая его ещё более жалким.
Такой жир шо пиздец. Спизданись с от сюда.
Ну так-то да, но нужно сравнить.
>>52365
Такой хуйни уже насмотрелся за эти сцаные пару месяцев js дрочения.
>>52367
Да это понятно, ссылаясь на разные места в памяти получаешь "разные" объекты. Блять да неужели нету метода ебаного подходящего. Шерстить ownproperties и сравнивать каждый с соответсвующим - не варик.
Чет такая себе паста, на 3/10.
Ок, насколько лет вперед я перенесся сейчас?
let div = $('<div class="custom-control custom-checkbox">')
.append($('<input class="custom-control-input">')
.attr('type', 'checkbox')
.attr('disabled', true)
.attr('checked', checked))
.append($('<label class="custom-control-label">'));
return div;
Серьёзно? Проиграл с недоязыка.
На год. Теперь ты в 2006.
>В: Можно выучить только один фреймворк/библиотеку и всё писать на нём?
>О: Не стоит начинать учить отдельный фреймворк или библиотеку, пока отсутствуют базовые знания самого языка. Во-первых, из-за отсутствия знаний самого языка возникнет масса проблем с пониманием принципа работы фреймворка/библиотеки, во-вторых, этим можно сильно испортить себе восприятие языка и после этого будет гораздо сложнее изучать чистый JS и другие фреймворки.
Получается, сначала учить JS, потом уже html?
Нахуя в шапки тогда написаны противоположные вещи? Пишут пройти курс html(в моей осте нету), а потом нет блять, учите сначала js(в моей посте), мда.
моём*
Вопрос на миллион миллиард
Хватит ли мне ориловской книги по JS и курсов на кодакадемии, для какойнить вакансии на хэдхантере или штурмовать весь материал из шапки?
Тред не читал, если там уже ответили, дайте знать целуюв лоб
Для JS даунов вообще достаточно Hello World уметь писать, сразу можешь на джуна с зп 150к рублей претендовать.
https://pastebin.com/QmWuD0mv
Сам проебался, не обнулил переменную, извиняюсь.
Нема. В жсе при обращении к составным типам (тобишь массивам, объектам и функциям) ты всегда работаешь со ссылками на них, поэтому тебе нужно будет обращаться к литералам, из которых этот составной тип состоит.
Единственная для тебя надежда, это что может быть в ECMAScript появится какой-нибудь сахар, чтобы это было проще писать а может и уже такой есть, возможно я что-то упустил. Ну или лодаш какой-нибудь в помощь.
Собсна в lodash это _.isEqual(obj1, obj2)
Ты там хуйню какую-то понаписал, если что.
while луп в getLobby зачем? Типа, link'а не было на момент выхода из функции? А это потому что он асинхронный, на то коллбек/промис (.then) и нужен.
Погугли "джаваскрипт асинхронность коллбеки промисы", почитай, как это работает.
module.exports там нахуя? Глобльную переменную link использовать, которую в лупе постоянно проверяешь, тоже говнокод. Используй свои функции нормально, блин!
Вот тебе что нужно сделать? Скачать страницу с профилем, найти там ссылку, запостить ссылку. Ну так и делай это, промис ведь для того и существует, чтобы "продолжить когда будет ответ". А то ты всё наизнанку вывернул, и начинаешь с последнего действия зачем-то.
https://pastebin.com/fND4ZmDK
Ну и sleep использовать это тоже сомнительное занятие.
Алсо, давай название фукнции в промисе (function steam(html)) совсем не обязательно.
Затем про async/await почитай, шоб красивенько и современненько писать. Ну и это упростит периодические запросы, потому что сейчас они будут друг на друга наезжать, а если вдруг обработка одного занимает дольше периода, то рано или поздно будет плохо.
Пиздец ты тупой.
Учить в таком порядке
HTML -> CSS -> JS-> Фрэймворки
Нахера такую элементарщину писать где-то? Может ещё какие вещи в стиле кэпа писать в тред?
Спасибо за ответ! Пока в силу своего нулевого скилла ничего не понял, но себе схоронил
Постирай шаровары и дальше кодь для своих микроконтроллеров.
То есть, когда ты слишком тупой, то конечно тебе кажется, что всё решают за тебя.
хуйню спизданул, даун
Есть инфа, что ангуляр старое гавно. Вкатывайся Лучше в Вию или реакт. Хотя за Вию пока будущее
Ну я вкатываюсь в реакт без нормальных знаний жса. Чисто на уровне сделать тудулист на стрелочных функциях с мапами знаю и ок (при этом в теории жса нихуя не смыслю, замыканиях там какихнибудь, мне вообще похуй на них, знаю зис, знаю что лет видим в своем блоке, этого хватает пока, недавно колбек как работает увидел и генераторы в редуксе). Потом еще поучу, что понадобится. Бтв оказалось не так сложно без жса.
тооп! просто класс, в начале оффтоп но потом просто - каиф. Если разработчики прочитали (или кто-то из таких) то сори но в начале не очень круто и немного запутанно но потом очень круто!! рекомендую читать сначла чтобы потом вам текстик очень зашел)
Как такое реализовать на rxjs? Я только начал его изучать просто, вдруг тут есть профи в нём.
=ImportJSON("https://api.twitch.tv/kraken/streams?channel=LIRIK&client_id=uoxr3607rgh8dhn3ybwc0lnd2ikltx")
Всё хорошо, но, чтобы обновить статус, нужно вручную перезаписать формулу в ячейку. Хотелось бы это автоматизировать. Например, чтобы формула перезаписывалась через некоторое время. Не знаю, как это можно провернуть через макрос или скрипт, а может нужно изменить формулу, но Twitch API не помог. Есть идеи?
Очевидно, что нужно сделать n+1 копий этих изображений (где n — количество, умещающееся для одновременного показа на экране), и просто двигать их все в какую-то сторону. Как только картинка пропадает из виду, удалять её с той стороны и добавлять с противоположной.
Css учить не обязательно, это синтаксический сахар - он по сути не нужен нигде.
Как _выкатиться_ из JS?
Технологический зашквар он такой. А вообще нужно ли выкатываться? Если что-то продаётся, зачем менять шило на мыло?
Есть кодрелейтед: https://jsfiddle.net/dkpqbgv3/. Оно хватает .жисон и начинает адово вращать на форлупе, вытаскивая с третьего уровня проперти "type". Мне нужно пихнуть собранные тайпы в список и дальше с ним работать. Только хуй пойми как это сделать. Я хоть убей блядь не понимаю как колбеки эти делать, не говоря уже о await/async. Поясните по хардкору пожалуйста.
Через innerHTML или типа того?
Анон, я правильно понимаю, что создать таблицу в JS можно только через цикл?
Да.
У меня задание с выводом таблицы результатов игры.
Как я понимаю, что если так создавать таблицу, то не получится применить какие-либо стили.
Открой для себя библиотеку Lodash, например (это не про асинхронность).
По поводу асинхронности - открой для себя promises (futures). BlueBird посмотри, и т.д.
Блядь, html-таблицу, что-ли?
Ты понятнее выражайся.
jQuery открой для себя, всё там будет и со стилями и со всем остальным.
Вот, например:
https://gist.github.com/jineeshjohn/2044414
Ага. Т.е. в "чистом" JS html-таблицу со стилями не сделать, но это есть в jQuery. Спасибо, Анон!
Почему не сделать? Всё то же самое, но несколько длиннее. document.createElement() etc. Гугол в помощь.
Но, если ничто не запрещает использовать jQuery -
используй. Там много полезного.
Так-то, конечно, лучше использовать Vue.js, но, это несколько другая тема.
Можно ещё просто шаблоны использовать - JsRender, например. Прекрасно сочетается с jQuery, кстати. Но, это тоже другая тема. И Vue.js - лучше.
«Сап тред. У меня встал вопрос, снова. Меня заебал Кантор, его ебучие задачи, которые блядь сделать можно только после перечитывания теории(всей теории блядь), я не могу читать эту тошнотворную хуету. Есть чего-то попроще или это из-за первого раза меня так пидорасит? Я вот "Выразительный JS" начал читать, всё как по маслу, написано ДЛЯ ЛЮДЕЙ. Но я вижу, что инфы то там не так много и всё описывается поверхностно. Ещё книга такая есть — "JS. Подробное руководство", но мнения о ней разнятся.
Так вот, анончики. Чего мне делать дальше? Разумеется на одной книге я не остановлюсь, но нужен какой-то стартовый пинок. И вот вопрос, чего продолжить/начать читать из вышеперечисленного? Или вообще уйти нахуй в справочник MDN и не вылазить оттуда? Жду от вас помощи, аноны, так как от задачек Кантора уже голова болит. Я из-за них на пару недель прервался и нихуя не делал.»
Кхм. Сюда ещё добавлю, что я нацелен больше на JS => Node.js. То есть бекэнд, но наполеоновские планы строить пока что не хочу, поэтому для начал нужно осилить JS.
Надо читать книге не по языку, а по программированию. Для языка - справочник.
Книги по программированию пишут на английском, читать их тоже надо на английском.
Могу посоветовать JavaScript Allonge - про функциональное программирование (в основном) - с нуля.
Addy Osmani - JavaScript Design Patterns - бесплатно, сайт.
Effective Javascript.
Object Oriented JavaScript.
The Modern Web.
Должно хватить для начала.
Прекрати. Ты мне льстишь и вгоняешь в краску.
>от задачек Кантора уже голова болит
>нацелен больше на JS => Node.js. То есть бекэнд
Ну то есть, ты не можешь решить пару изичных задач, которые нацелены на то, чтобы ты понял возможности языка, но уже хочешь в бек с таким вот настроем? Как же ты там себя чувствовать будешь?
По поводу ответа тут все просто. Не можешь решать или не хочешь головой подумать чтобы решить - иди дальше. Учебник этот как справочник, говорит тебе и о возможностях и о подводных. Ни кто не говорит чтобы ты вызубрил от туда все, но хотя бы выучи то с чем работать будешь. Методы, свойства и т.п.
> Ну то есть, ты не можешь решить пару изичных задач, которые нацелены на то, чтобы ты понял возможности языка,
Да, не могу. У меня до сих пор не получается самому решить задачи на Фибоначчи, факториалы, рекурсию — в принципе с подобным только и возникают сложности.
> но уже хочешь в бек с таким вот настроем? Как же ты там себя чувствовать будешь?
Сам не понимаю. Но для этого и говорю, что для начала нужно осилить JS.
> По поводу ответа тут все просто. Не можешь решать или не хочешь головой подумать чтобы решить - иди дальше.
Вот в этом то вся суть. Головой то пытаюсь думать, а всё равно не выходит. С задачами Кантора типу "Что здесь будет?" проблем не возникает. Мне сложно преобразовать какую-то формулу в код, в пример вот та же задача на числа Фибоначчи.
> Учебник этот как справочник, говорит тебе и о возможностях и о подводных. Ни кто не говорит чтобы ты вызубрил от туда все, но хотя бы выучи то с чем работать будешь. Методы, свойства и т.п.
Тогда буду двигаться дальше. Меня попросту очень демотивирует то, что я не могу решить подобные задачи. Но видимо лучший выход, это возвращаться к ним спустя какое-то время.
>лучше использовать Vue.js
>Vue.js - лучше
еще чуть чуть у меня начнет складываться впечатление что из всей тройки подебил в итоге самый чахлый и немодный
есть тут еще аноны с мнением? и агрументами
У тебя видимо проблемы не с языком, а с построением задачи и решением следующей. Тебе поможет тут только практика. Ну и немного теории. Могу порекомендовать просмотреть сперва курс CS50 - поймешь как примерно строить решения задачи и узнаешь пару базовых алгоритмов.
Ну и второе, чтобы знать как решать задачки - надо просто их решать. Я сам как и ты пару месяцев назад не мог решить задачи у кантора. Не мог понять с чего решение начинать. Тогда мне челик знакомый и порекомендовал сайт codewars. Решая там изичные задачи я постепенно набирался опыта и мог строить простые алгоритмы. Потом решал задачи сложнее, но когда есть база они казались уже не такими невыполнимыми.
Короче, потренькай неделю - должно помочь.
$('.nav-menu a').click(function(e) {
e.preventDefault();
$('.nav-menu .active').removeClass('active');
$(this).addClass('active');
var item = $(this).attr('href');
$('.nav-item').not(item).css({'display':'none'});
$(item).fadeIn(600);
});
Но при переходе по ссылке меню из другой страницы к якорю, остальные не скрываются. Отображаются сразу все скрытые. Как починить?
Кто подебил?
Из какой тройки?
Кто чахлый?
C кем ты сейчас разговаривал?
Кто ты?
И почему нам должно быть не похуй, лол?
я уже сказал по делу, дура
При переходе по ссылке с другой страницы у тебя возникает событие click на этой странице?
Вот то-то и оно.
Обрабатывай это отдельно при загрузке страницы.
При загрузке страницы, в $(function(){...}) проверяй window.location.href.
Находишь в URL анкор (если он есть), и в соответсвии с ним - скрываешь, показываешь и т.д.
https://stackoverflow.com/questions/3552944/how-to-get-the-anchor-from-the-url-using-jquery
Только у тебя будет var url = window.location.href;
ну не тупи ебать, нгулур рект и вуй, все всегда знали что первый для воротников подкаблучников, второй для любителей анальных модных игрищь, а третий просто никчемный и не понятно зачем существующий
и вдруг, сейчас мы узнаем что вуй топчик, нихуевый такой поворот
Прошу игнорировать этот пост. Я нашел свою лишнюю хромосому.
???
Ангуляр и Реакт - это очень разные вещи, с совершенно разной философией.
Вью - это Реакт здорового человека. Учли ошибки и т.д.
Как-то так.
Ангуляр не нужен, как и большинство проектов, где заправляет гугол.
Я просто уссываюсь, глядя на то, как они штампуют всё новые и новые несовместимые версии этой бессмысленной мешанины из говна.
Монструозная fragile хуета - это самое малое, что об этом можно сказать. Как это можно использовать в продакшн - не представляю просто. Надо либо денег иметь, как у гугла, либо совершенно не иметь мозгов. Но, хомячки-смузихлёбы продолжают засирать инернет охуительными историями, им всё нипочём.
Так это ведь ты дурачек. Он работает с this в хэндлере. И если бы он использовал стрелочные функции, this бы проебался.
Не говоря уже о том, что для стрелочных функций нужен бабель.
Мамкины прогрессисты заебали уже, лол.
>Вью - это Реакт здорового человека. Учли ошибки и т.д.
охуеть не встать, еще осенью тут гоняли телеги в духе вью это упрощенный недоклон ректа с которым не найти работу, единсвенный плюс тогда был это документация
>Ангуляр не нужен, как и большинство проектов, где заправляет гугол.
кек, строгая типизация или не?)))
фригиль даже не слышал, а вот за флютер что скажешь?
>а вот за флютер что скажешь?
Ничего, не имел дела.
Зашёл на сайт, посмотрел примеры кода.
Возбуждения не почувствовал.
Возможно, потому, что мобильная тема не интересует вообще. Ну и гугол, опять же.
>вью это упрощенный недоклон ректа с которым не найти работу
Это вообще не клон.
А вот насчёт работы - это другой вопрос.
Далеко не всегда больше платят за более правильные вещи. Часто - ровно наоборот.
Но, если ты решаешь сам, и у тебя не смузи-стартап с нуля, а уже есть какой-то код, то vue - это самый подходящий вариант из того, что сейчас есть. Просто потому, что он не диктует тебе, как и что ты должен делать за пределами его компетенции.
Т.е., по-сути, это не фреймворк, а библиотека. В чём и прелесть.
>строгая типизация
TypeScript - это хуета.
Примерно, как морская свинка - ни к свиньям, ни к морю отношения не имеет.
>мобильная тема не интересует вообще. Ну и гугол, опять же
бля валяюсь и это жс девелопер
>это не фреймворк, а библиотека
так и рект вроде так же устроен
>TypeScript - это хуета
швободолюбивые жс девы хех
>TypeScript - это хуета
TypeScript это вафельница, чтобы не зашквариться об JS говно. Годная вещь на самом деле.
>и это жс девелопер
Я не жс девелопер, я просто маску нашёл.
>так и рект вроде так же устроен
Да, почти.
Но, там без JSX ты сразу соснёшь, например.
А JSX - это сразу ебический тулчейн на ровном месте. Нахуй бы он нужен?
Короче, очень затратно. И очень opinionated.
При очень скромном выхлопе.
Я говорю о применимости в уже существующем огромном проекте, со своими особенными заморочками. Жс фреймворки и тулчейны идут нахуй стройными рядами, а ES6 возглавляет колонну.
>TypeScript
Бессмысленная хуйня.
JS - это динамика. Прикрутить к нему нормально статику просто нельзя, хуйня получается.
Хочется статики - пиши на Scala-JS, лол.
Охуенная вещь, кстати.
Но, блядь, рантайма отдельного нет. И всё линкуется сразу в пользовательский код, в итоге хелловорлд получается в мегабайт размером. Про отладку и инструментальную поддержку я вообще промолчу.
Короче - Ангуляр, TypeScript и подобные вещи - это для дорогих больших новых проектов. Где есть куча обезьянок-кодеров, которых завтра можно поменять на других обезьянок, просто потому, что сменилась версия фреймворка или вышел ES-2020.
Сажа откуда-то вылезла, я не ставил, лол.
>Бессмысленная хуйня.
>JS - это динамика. Прикрутить к нему нормально статику просто нельзя, хуйня получается.
TYpeScript это нихуя не статика. Это способ описать контракт, чтобы макака джсная описывала в коде, что функция принимает. Это повышает читаемость кода и позволяет немного пиздить палкой компилятора по голове особо тупым макакам.
>Нахуй бы он нужен?
ну ебать там вроде по минимуму и плюс там я мельком глядел все только выигрывают, бля давно глядел забыл уже, но не просто же так дрочилы заморочились ведь правда же
>ES6 возглавляет колонну
ну вот это ты зря братишка, ес6 прекрасен, на него просто приятно смотреть
Да это понятно.
Но, при попытке написать что-то посложнее, завязанное на существующие js-библиотеки, вечер сразу перестаёт быть томным. Поэтому, см. замечание про большие проекты и кучу кодеров - там это оправдано, да.
>>54011
JSX - это была красивая идея, для своего времени.
Но, в итоге оно себя не оправдало. И это не только на мой взгляд - попадался грамотный анализ этой темы, ссылку не сохранил. Короче - нинужно.
>ES6 прекрасен
Да я же не говорю, что он уродлив.
Просто для не чисто-жс проектов это избыточно, а выигрыш - незначителен.
Я вообще смотрю на всё это именно с точки зрения применения только на клиенте, с бекэндом на джаве. И правила игры получаются несколько другие, модули не нужны, например, и т.д. и т.п.
На фронте наверное соглашусь. Я просто с точки зрения применения в node.js смотрю. Активно в одном стартапе сейчас юзаю. Сам до этого очень долгое время на Java/Scala писал. А сейчас как-то склоняюсь к мысли, что для большинства проектов Java то и не так нужна.
>для большинства проектов Java то и не так нужна.
Да, есть такая тенденция.
Тем более, что эти пидары из оракла прикончили GUI на джаве совершенно.
Если массив без проебов в индексах - создаешь переменную, равную нулю, в нее каждый раз +1, когда нашел четный элемент, нашел все четные => длина массива - переменная = количество нечетных.
var randomArr= [0,1,2,3,4];
function valueArr(randomArr) {
var even
var odd
for (i=0; i<=randomArr.length; i++){
if (myArr%2==1){
zero = ????????
}
мне нудна не сумма четных а количество. как количество потом в консоль вывести???? пиздец ступор
Так вот собственно, что из годного посоветуете? Выучил так основы, ну как выучил прошёл курс на html академии основы джава скрипт, там массивы, объекты, циклы, функции, задачки порешал.
Че дальше делать? Кантора начал читать, но чет как-то туго идет,написано как справочник. Начинать какой-то фреймворк учиь или что? И если здесь есть недавние вкатывальщики можете показать/рассказать тестовые, какие просят сделать при приеме на работу? Хочется примерно понимать уровень до которого расти надо.
>где обучение идет не на абстрактных всяких примерах, а на кокретных, так сказать рабочих примерах?
fl.ru
окно
>мне нудна не сумма четных а количество
Ты даун? Ты считать не умеешь или что?
Вместо суммы каждого своего четного с каждым четным, прибавляй по единице. Пиздец, откуда вы лезете.
Всё просто.
Это ссылка на объект.
Её значение зависит от контекста.
В глобальном контексте - это window.
Внутри объекта - это экземпляр этого объекта.
Просто в функции - может быть по-разному.
Обычно - window.
Но, можно вызвать функцию, задав любой объект в качестве this. Так делает jQuery и многие другие библиотеки.
В этом случае надо смотреть документацию к библиотеке.
https://developer.mozilla.org/ru/docs/Web/JavaScript/Reference/Global_Objects/Function/apply
Ребзя. я пытался вкатиццо в жс и фронт-энт, но не вышло
В общем стоит ли вкатываццо в сети и безопасность? Опыта нет, но на работу вроде как берут.
нет, сиди дома
(vue/src/core/vdom/create-component.js)
children: ?Array<VNode>
Это объявление параметра фунции.
Что это? Typescript? А почему файл с расширением .js?
А что такое контекст? Можешь определение дать? Желательно своими словами.
ебать чурка ну открой ты толковый словарь то сука, тебе куску говна даже оглавлением не нужно уметь пользоваться и считать страницы
Мы вам перезвоним.
Хуя тебе припекло.
Контекст - буквально - окружающий текст (для некоего слова или предложения).
Это одно из главнейших понятий в программировании, я бы советовал с этим освоиться.
Глобальный контекст - это когда ты на самом верхнем уровне, не внутри функции или объекта.
Остальное - я тебе уже написал.
Могу добавить, что строго говоря - там не window а global object. В браузере - это window. В node - его просто нет, насколько я помню, но можно имитировать.
https://learn.javascript.ru/global-object
В node тоже есть и он называется global. В нем инкапсулировано многое из того что есть в window, кроме специфичных для браузера API.
в ноде есть vm.runScriptInContext, где глобальным контекстом можно сделать любой кастомный объект.
Можно сделать != есть, think about it.
>кто-то жиденько пернул и немного обосрался, но кто не скажу, ссылку не сохранил
я тебя услышал
Есть апи написанное, приходит мне с него жсон, я его через жиквери получаю. Теперь нужно в хтмл его загнать, делаю вот так, но чувствую, что это говно какое-то. Как нормально сделать
var newDiv = document.createElement("div");
var title = document.createTextNode(data.results.title);
var id = document.createTextNode(data.results.id);
newDiv.appendChild(title);
newDiv.appendChild(id);
var currentDiv = document.getElementById("div1");
document.body.insertBefore(newDiv, currentDiv);
жсон выглядит так
Посмотри как оно на жквери делается, получится чуть поизящнее, но по сути то же самое.
сосач схавал чутка кода, вот полный
https://pastebin.com/G3VYcZTL
>>55056
Ну как-то не очень получается доставать каждый ключ вручную, как-то всё разом распарсить и закинуть нельзя?
let newDiv = document.createElement("div")
let {title, id}= data.results
newDiv.append(title, id)
Почему мы вызываем её с 2мя параметрами, откуда берется параметр х?
Это отсюда, если что :
http://learn.javascript.ru/closures-usage
Там же понятно написано всё, лол.
Функция возвращает другую функцию, параметр х - это параметр уже возвращаемой функции.
При этом возвращаемая функция продолжает видеть так же параметры внешней функции - а и б. Это называется "замыкание" (closure). А сами подобные фокусы называются "функциональное программирование".
Смысл в том, что ты передаёшь возвращённую функцию в функцию фильтра, и она там, внутри, используется. Но, продолжает видеть твой контекст (это и есть "замыкание").
Т.е. ты так настраиваешь поведение функции-фильтра.
у тебя выражение
>filter(arr, inBetween(3, 6))
разворачивается в
>filter(arr, function(x) { return x >= 3 && x <= 6})
если бы там было
>filter(arr, inBetween(100, 200))
развернуслось бы в
>filter(arr, function(x) { return x >= 100 && x <= 200})
Я, вроде, понял. Как же это сложно новичку дается, стоит ли вообще продолжать учить js, если уже на таких темах большие трудности, или идти улицы подметать? (в универе писал примитивные лабы на джаве, там как-то проще все было)
JS тут ни при чём.
Замыкания, high order functions - это непростая тема для начинающего. И JS - один из самых подходящих языков для не-типизированного фп, так что, всё нормально.
Короче - к этому просто надо привыкнуть.
Потом LoDash посмотри, как немного освоишься.
В расширении иногда рандомно пропадает иконка отображающая уровень звука и подсветка как на первой картинке, а должно быть как на второй.
Ошибка скорее всего в функции https://github.com/bushig/webmtube/blob/master/browser_extension/src/js/common.js#L290
Понятия не имею в чем может быть проблема. Может быть проблема в settings, который, возможно, получается асинхронно.
Кстати, на ту же тему:
В JS очень распростанён такой паттерн, как "немедленно вызываемая функция" (IIF).
На learn.javascript.ru должно что-то быть, лень гуглить.
С непривычки многие охуевают от такого не по детски.
Функция определяется, и сразу же вызывается:
((function(){
...
... всякая хуйня...
...
})());
Часто первая строка идёт в начале файла, а последняя - в конце. И между ними - целая куча всего. Самые наружные скобки - для того, чтобы код не испортился при сжатии.
Для чего всё это?
Для того, что так создаётся локальная область видимости. Внутри такой конструкции можно определять функции, производить вычисления, и т.д. И всё это будет закрыто, имена не будут конфликтовать с наружными.
Так делают модули.
Разумеется, оттуда можно что-то вернуть наружу, при желании. Также и в эту функцию можно что-то передать снаружи. Получается модуль с параметрами.
Короче - подобного жонглирования в JS дохуя и больше. Но, всё это делается по одним и тем же простым схемам. И чем быстрее ты с этим освоишься, тем лучше.
Жалкий ниасилятор
>Люди любят высмеивать то, чего не понимают.
>Сомерсет Моэм.
>Люди осуждают то, чего не понимают.
>Марк Фабий Квинтилиан
>Люди злословят то, чего не понимают.
>2 послание Петра 2 стих 12
>Люди ненавидят то, чего не понимают.
>Batman v Superman: Dawn Of Justice
Всё будет работать, только не так, как ты хочешь: значения будут вычислены один раз, при загрузке страницы, и сколько ты свою функцию не вызывай, какие там значения в n1 и n2 ни прописывай — результат изначальным так и останется.
https://codepen.io/anon/pen/GxoXde
Кстати вполне может быть. У меня вроде иногда инты возвращаются. Спасибо.
Есть компонент Paper, внутри которого засунута Table. В таблице много колонок и все они не умещаются. Те, колонки, что не умещаются, тупо обрезаются. Вопрос: как сделать так, чтобы у меня появился горизонтальный скролл таблицы, чтобы можно было посмотреть непомещающиеся колонки?
Пробовал прописывать overflowX: auto и в Paper, и в Table, и ничего не вышло.
Говнокод:
https://pastebin.com/eewsiQGE
Внезапно. Спасибо.
Ну ты, блядь, посмотри на реализацию функции filter. val туда передается. Или ты слепой?
московский
митап
посвященный
исключительно
vue.js
https://habrahabr.ru/company/acronis/blog/350598/
будущее уже здесь!
road to 3k!11
В Jquery запросы это неудобное говно на коллбэках. Лично мне больше понравился axios — тут всё работает на промисах, и это в миллион раз удобнее.
мб кросы просто и с локалхоста не удастся получить ответ. Хотя если вообще ничего не происходит, то наверное где-то ошибка. Скачай postman расширение на хром, отправь оттуда или с сайта какого-нить
Вот код простенького AJAX запроса:
https://jsfiddle.net/up483ye5/
Сервер у меня на NODE.JS и там простейший обработчик - который просто выводит принимаемое значение в консоль.
Ну и возвращает введенное значение обратно в див.
Все это работает, но почему то к отправляемому значениею (пусть 123) прибавляется null. Тоесть по итогу приходит 123null.
Что я сделал не так?
>мб кросы просто и с локалхоста не удастся получить ответ
Нет, запрос с локалхоста на локалхост, и ответ есть, просто он почему-то не открывается как надо. Вот код метода: https://jsfiddle.net/pvmm58en/ Даже если убрать часть с заголовками, ответ все равно просто выводится в консоль.
А как сделать, чтобы при нажатии на prompt отмена оно просто закрылось, а не KY-KY null? И как сделать возврат при нажатии ОК при пустом имени обратно в вводу имени?
if (confirm("R You sure?")) {
person = prompt("What's your name?");
if (person == "")
alert("Enter your name");
else
alert("KY-KY, " + person);
}
Тут я уже дописал, чтобы при пустом промпте просило имя, но по ОК закрывает все нафиг
1) есть ли в реакте DI.
2) как в реакте делают сервис лейер со стейтом.
например мне надо иметь сервис который хранит текущие данные которые стримятся с сервера.
И есть компоненты реакта которые подписываются на эти данные (например график, таблица), оба подписываются на эти данные.
В ангуларе я бы заинжектил некий DataService и в него бы подписал их и было бы норм - понимаю что в реакте свой особый путь, поэтому вопрос - как в реакте это делают?
Спс заранее.
Отмена пропмпта всегда возвращает налл.
Ты алёртом
> alert("KY-KY, " + person);
выводишь промпт, естественно он налл покажет.
> И как сделать возврат при нажатии ОК при пустом имени обратно в вводу имени?
Циклом?
Inside the carton is a push-button unit fastened to a small wooden box. A glass dome covers the button. If you push the button, somewhere on the Internet some websites would break. It could be any site. It would have real users, real people using them, relying on them. But we guarantee it wouldn’t be your site. In return you will receive a convenient method that you could’ve implemented in 20 lines of code or imported from a library.
Заодно репортнул, чтоб бесконечный тред включили, я заебался уже через каталог заходить. Кто за - кидайте тоже репорты, чтоб точно включили
Я вернулся.
https://jsfiddle.net/zb7snyfj/
Как мне вернуть значение из этой функции? return очевидно срабатывает раньше промисов и возвращает undefined, return в последнем .then() очевидно возвращает промис. Мне нужно передать этот список параметром других функций.
Да мне не так это важно, просто интересно, почему я делаю вроде бы одинаковые вещи, а результат разный.
Зачем оправдывать поехавшего? Старое говно не нужно. В эволюции выживает только более сильный/умный/ловкий. Все разговорные языки это проходили и что-то я не вижу в современной литературе грамматики и слов времён 14 века или например шумерского вовсе.
Чета я запутался уже. Снова.
Как заставить постоянно требовать ввода в окно, пока не введу?
При таком только один раз переспросит и вызовет промпт для имени.
person1 = prompt("ВВЕДИТЕ ИМЯ",);
if (person1 == "")
{
alert("НУЖНО ВВЕСТИ ИМЯ");
person1 = prompt("ВВЕДИТЕ ИМЯ");
}
и вообще есть ли что то лучше стайлиша, т.к мне кажется он только цеску может поменять
ну хз, как то сложна, как мне адресс то к сайту прописать в скрипте, чето я потерялся
>// @include
ну ок, ну все равно как то по уебански, вики никакая, мех
он ес6 знает? как мне классы то поменять
// ==UserScript==
// @name Hello World
// @namespace http://www.oreilly.com/catalog/greasemonkeyhacks/
// @description example script to alert "Hello world!" on every page
// @include
// @exclude http://oreilly.com/
// @exclude http://www.oreilly.com/*
// ==/UserScript==
alert('Hello world!');
>>Самые наружные скобки - для того, чтобы код не испортился
Нет же. Не разрешается вызывать Function Declaration на месте. Скобки "делают " его часть выражения - и тогда все работает. Можно и + ткнуть.
Хотя в сущности ты прав
У кантора отлично это все разжевано.
Ничего особо страшного в замыканиях и контекстах вызова нет. Просто внимательно нужно вчитываться .
ок, ну так он ес6 то знает?
function smeNi(){
document.getElementsByClassName(div.col-lg-7.col-md-6.col-lg-offset-2.col-md-offset-2.col-sm-11.col-sm-offset-1.col-xs-offset-1.main.col-lg-10).className = div.col-lg-7.col-md-6.col-lg-offset-2.col-md-offset-2.col-sm-11.col-sm-offset-1.col-xs-offset-1.main.col-lg-12)
};
smeNi();
>div.
Вот ты вот это нахуя в названии класса оставил?
Ну и прочитай, как document.getElementsByClassName работает с несколькими классами (подсказка: не через точку).
А с чего бугурт у него? Даже предыстории или ссылки никакой нет, лень гуглить самому.
ладно я уже понял что по уебански через переменную
но чот совсем все плохо аноний, подключенные жс не работает =((
положил в голову
><script src="/monkey.js"></script>
в скрипт
>function alert() {
>window.alert("blah-blah");
>}
>alert();
и ничего, инлайново все само само пашет
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
ПЕРЕКАТ >>1157660 (OP)
>что по уебански через переменную
Какую переменную, что ты несёшь? Прочти ещё раз моё сообщение. Ты просто неправильно элемент выделяешь. Ну и getElementsByClassName возвращает набор элементов, даже если 1, так что нужно ещё [0] добавить перед .className.
И вообще, используй лучше classList.add и classList.remove, если только порядок как-то особенно не влияет.
>положил в голову
Ты на своём сайте хочешь что-то сделать или где? Если на чужом, то и monkey.js браузер будет пытаться скачать с website.com/monkey.js при таком элементе. А если на своём, то какой-то странный способ сменить класс элемента.
Бесконечный нинужен, лучше пусть просто бамплимит до 1-2к поднимут.
>getElementsByClassName возвращает набор элементов
я просто все позабыл нахуй, помню ебался с этой же хуйне, как же сука нелогично зделоли вот и на своем пока тренькаюсь, так то ясно что обизьяна мой жс не утащит лол
>.className
вот тоже тупо, я ведь и так написал класснейм в селекторе, нахуй мне еще глубже идти и там тоже пояснять!?
бло, ну я только проснулся лел
>чот
>зделоли
>обизьяна
>бло
>лел
Даун ИТТ поясняет, что логично, а что нет. Спешите видеть.
>васм приджэ — порядок навэджэ
говна поешь, я лентяй и нахую вертел тебя и эти ваши уебанские задроченные скриптики, делают для выдрочей, а нормальные люди потом ебутся сука
Это копия, сохраненная 26 апреля 2018 года.
Скачать тред: только с превью, с превью и прикрепленными файлами.
Второй вариант может долго скачиваться. Файлы будут только в живых или недавно утонувших тредах. Подробнее
Если вам полезен архив М.Двача, пожертвуйте на оплату сервера.