Главная Настройка Mobile Контакты NSFW Каталог Пожертвования Купить пасскод Pics Adult Pics API Архив Реквест доски Каталог стикеров Реклама
Доски


[Ответить в тред] Ответить в тред

Check this out!

[Назад][Обновить тред][Вниз][Каталог] [ Автообновление ] 126 | 10 | 34
Назад Вниз Каталог Обновить

Аноним 21/09/17 Чтв 20:05:56  161526884  
image.png (167Кб, 1024x768)
image.png (28Кб, 475x325)
/web/ как всегда мёртв, и я как всегдапишу здесь

Посоны, снова я со своим JS тредом.

У МЕНЯ ВСТАЛ вопрос, как лучше быть, для примера моего вопроса приведу цикл, который тупо создаёт например DIV блоки указанное количество раз в указанном месте, так вот, как будет лучше со стороны того чтобы создавать меньше нагрузки и увеличить скорость скрипта, создать переменную и загрузить в неё блок с которым мы будем работать и в который будем помещать DIV блоки, или постоянно напрямую добавлять DIV в указанное место постоянно обращаясь к нему через например querySelector, ниже примеры того о чём я

Харкач блокирует скринт, по этому ссылка http://jsbin.com/doribaveye/edit + прикрепил код пикчей

Какие плюсы и минусы в каждом способе и каким лучше делать?
Аноним 21/09/17 Чтв 20:16:40  161527433
>>161526884 (OP)
первый лучше
мимо не знаю js
Аноним 21/09/17 Чтв 20:17:20  161527473
14952257346100.jpg (155Кб, 413x535)
Сап, двач.
Хочу пояснить тебе за такую хуйню как КОНКУРЕНЦИЯ.
Вот смотри. Рубль упал, время непростое, количество рабочих мест сокращается. Да ты и сам или твои родители испытали на себе сокращение. Но тем не менее каждый день здесь проскакивает как минимум 1 тред о вкатывании в программирование. И при этом находятся те, кто готов помогать левому хую, советовать куда обращаться и какие технологии учить. ЗАЧЕМ?
Ты понимаешь, анон, что чем больше мудаков вкатится в айти, тем меньше у тебя будет зарплата и тем выше шанс, что тебя просто пидорнут? Работодатели и так смекнули, что бывает выгоднее взять три залупы после универа с горящими глазами, которые будут въебывать по 12 часов, получая при этом копейки, чем одного мидла. В 40 лет у тебя будут серьезные проблемы с тем, чтобы задержаться в профессии, если только не свалишь за бугор.
Или вот. Совсем недавно тестировщики получали хорошие деньги. Буквально год назад туда повалило очень много скама с улиц - и зарплата просела. ТЫ этому поспособствовал, если давал советы в таких тредах. Вместо того, чтобы вайпать или хотя бы игнорировать тред, ты помогал вчерашнего официанту и быдлу с завода, который в школе тебя травил, вкатиться в программирование. Ты не только не получил НИКАКИХ профитов с этого многие мудаки на этой борде даже спасибо не говорят, но и ухудшил свое положение как специалиста. Это банальная статистика.
Думаешь, быдло - тупое и не сможет в кодинг? Ошибаешься. Оно может и тупое, но его можно надрочить на выполнение однотипных задач. То, что раньше ты выполнял сам, сейчас будет делать он, а твоя квалификация постепенно станет не нужна. Да, ему будут платить не больше чем платили на заводе, но теперь станет выгодно иметь 1-2 координаторов - сильных синьоров - и десяток обслуживающего скама, который вчера разносил пиццы. А вот тебе попасть в эти 1-2 синьора станет значительно сложнее, потому что спрос на них упадет, а предложение не изменится, ибо никто из нынешних синьоров не захочет съябывать в макдаки и другие сферы, уж поверь.
Так что не способствуй тому, чтобы в айти лезло всякое говно, выталкивая тебя оттуда.
Аноним 21/09/17 Чтв 20:27:02  161528018
>>161526884 (OP)
Ты занимаешься хуйнёй.
мимо 3 года JS макака
Аноним 21/09/17 Чтв 20:27:24  161528039
>>161527433
На чём основаны такие выводы?
Аноним 21/09/17 Чтв 20:28:52  161528119
>>161528018
Ну братишка, занимаюсь я написанием скрипта, это просто пример, вопрос в том как лучше, создавая переменные, или постоянно обращаться к дом дереву. Логика мне говорит что метод с объявлением переменных лучше, но я не знаю так ли это, вот и хочу узнать у вас.
Аноним 21/09/17 Чтв 20:29:05  161528133
>>161528039
Операции с дом очень ресурсоемкие. Иди кантора читай, пидор.
Аноним 21/09/17 Чтв 20:37:38  161528691
>>161528133
Вот я так и думал, но не верил своим мыслямзачем ты пидор
Аноним 21/09/17 Чтв 20:38:38  161528765
>>161528691
>но не верил своим мыслям
Ееее вайти вайти
Аноним 21/09/17 Чтв 20:39:14  161528808
>>161528119
Вот зачем ты учишься JS?
Аноним 21/09/17 Чтв 20:40:00  161528859
>>161528691
На самом деле оба варианта хуйня. Никогда не тереби дом в цикле. Сначала пиши все элементы в переменную а уже после цикла вставляй пачку в дом.
Аноним 21/09/17 Чтв 20:51:36  161529503
>>161528859
Спасибо, понял, получается всё же лучше создать переменные для всех используемых из дом элементов и уже потом извращаться над ними, а как быть с единичными случаями, например onclick, его тоже вешать на переменную, или можно напрямую через querySelector?

>>161528808
Не учу, уже учил, нужен скрипт, вот пишу его и нужна информация как поступить, чтобы не сделать говно.
Аноним 21/09/17 Чтв 20:54:54  161529679
14493547229290.png (393Кб, 765x1044)
Чего вы до ОП-хуя доебались? Человек задал вопрос, захотел узнать, как лучше, а не просто написал ШОБРАБОТАЛО, а вы как пидорасы какие-то. Из-за таких, как вы, людям сложно учить пограммирование.
Аноним 21/09/17 Чтв 20:55:43  161529725
>>161529679
Странно, что ещё за фреймворки никто не начал затирать.
Аноним 21/09/17 Чтв 20:59:50  161529978
РЕАКТОПИДОРЫ СОСУТ У АНГУЛЯРОБОГОВ
Аноним 21/09/17 Чтв 21:01:58  161530093
>>161529679
Те кто хотят учиться читают стаковерфлоу а не создают треды на дваче.
Аноним 21/09/17 Чтв 21:02:45  161530131
>>161526884 (OP)
зачем z в цикле объявляешь?
Аноним 21/09/17 Чтв 21:06:17  161530318
>>161530131
Да похуй же, ибо hoisting ее в глобальную область видимости вынесет.
Аноним 21/09/17 Чтв 21:08:10  161530425
image.png (4Кб, 663x100)
>>161530131
Потому что вариант как на пике, создаёт пустоту

>>161530093
Чтобы не читать тонны документации из-за 1 вопроса и создают тред.
Аноним 21/09/17 Чтв 21:10:58  161530610
>>161530093
>стаковерфлоу
И спасибо, буду и им мозги ебать.
Аноним 21/09/17 Чтв 21:12:00  161530667
>>161526884 (OP)
хуевые оба.медленно. бравсер охуеет дом перерисовывать.
Аноним 21/09/17 Чтв 21:12:48  161530705
>>161530425
Да просто можно z вынести из цикла, чё ты её там дрючишь каждый раз при прогоне-то. Хотя мб в жс на это похуй как тут заметил анан >>161530318, я не шарю
Аноним 21/09/17 Чтв 21:21:28  161531209
>>161526884 (OP)
Очевидно первый лучше, потому что во втором ты 100 раз ищешь в доме узел, а в первом - один. Хороший ты способ попракростинировать нашёл: создать тред с идиотским вопросом и читать ответики, обманывая себя и свой мозг, что занимаешься серьезным делом.
Аноним 21/09/17 Чтв 21:22:59  161531299
>>161530705
>Да просто можно z вынести из цикла, чё ты её там дрючишь каждый раз

Я не жабомакака, но поясни, как ты z вынесешь? Чо, надо так писать?
var z;
loop {
z = create element...

это значительно быстрее, чем
loop {
var z = create element...

Правда штоле? т.е. жава-интерпретатор 1) не сумеет оптимизировать этот кусок и 2) обосрется сто раз несколько байт под указатель аллоцировать?

хуясе вы работники языка высокого уровня.
Аноним 21/09/17 Чтв 21:25:01  161531407
>>161531209
>Очевидно первый лучше, потому что во втором ты 100 раз ищешь в доме узел, а в первом - один.

Чувак задает норм.вопрос, потому что если это дешевая операция, то похуй как. И ему норм.отвечают, что дом шатать дорого.
Аноним 21/09/17 Чтв 21:25:35  161531440
image.png (7Кб, 444x126)
>>161530705
Наверно потому что изначальный пример был такой как на пике, я подумал что z будет забиваться мусором, и постоянным её объявлением заново, она типа чистится, хз даже, не проверял, будет ли она забиваться, если её вынести за цикл.
Аноним 21/09/17 Чтв 21:26:06  161531466
>>161530425
>Потому что вариант как на пике, создаёт пустоту

бля, а вот это схуяли? эквивалентная же запись?

a = new element
b.add(a)

или

b.add(new element)

это чо, в скрипте разные вещи?
Аноним 21/09/17 Чтв 21:26:42  161531499
>>161531299
обосрется не байты телебонькать а 100 раз страничку перерисовавать.
Аноним 21/09/17 Чтв 21:28:07  161531597
>>161531407
А что насчёт второго вопроса

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

Как мне кажется можно и через querySelector, я думаю сильно пользователь не нагрузит браузер, максимум 2 клика в секунду по элементу реагирующему на клики
Аноним 21/09/17 Чтв 21:30:04  161531718
>>161531440
>Наверно потому что изначальный пример был такой как на пике, я подумал что z будет забиваться мусором, и постоянным её объявлением заново, она типа чистится, хз даже, не проверял, будет ли она забиваться, если её вынести за цикл.

Из моих глаз текут кровь и слезы. "Типа чиститься"- этокак? каким мусором она забьется? из кучи говна и палок ветром принесет?

рекомендую тогда писать вот так:

var z = 5;
if (z ==5)... // а вдруг забилась мусором? вдруг я многопоточную систему невзначай на js написал и между этими двумя строками другой поток мне все засрал? где там мои мьютексы, падажжи ебана....
Аноним 21/09/17 Чтв 21:33:37  161531947
>>161531718
Имелось ввиду предыдущими созданными блоками, и тогда за цикл у меня будет появляться не 1 блок, а предыдущий блок + новый блок, и так будет расти в геометрической прогрессии лол
Аноним 21/09/17 Чтв 21:34:20  161531984
>>161531597
Ну ты совсем дурак или толстишь? Будешь переиспользовать этот элемент в коде - херачь в переменную, нет - нет. Скачай себе вебшторм, он тебе будет такую хуйню подсказывать. Учил он жаваскрипт а не учит нахуй.
Аноним 21/09/17 Чтв 21:35:25  161532044
>>161531499
>обосрется не байты телебонькать а 100 раз страничку перерисовавать.

Ты тогда формулируешь стремно, потому что z в любом случае должна быть внутри цикла, потому что нужно создавать сто дивов.

нахуяч свой вариант "без z внутри цикла", плиз.

(кстати, SO вашу общую идею "инсертить в дом медленно" не очень поддерживает)
Аноним 21/09/17 Чтв 21:35:55  161532084
>>161531984
Ну учил я как им пользоваться, а не как он создаёт нагрузки, спасибо понял.
Аноним 21/09/17 Чтв 21:36:52  161532143
А я вот, например, вообще ненавижу JS. По этому сделал сайт без него. И все работает.
Аноним 21/09/17 Чтв 21:37:39  161532199
>>161532143
Все ненавидят JS.
Аноним 21/09/17 Чтв 21:39:11  161532296
>>161531947
>Имелось ввиду предыдущими созданными блоками, и тогда за цикл у меня будет появляться не 1 блок, а предыдущий блок + новый блок, и так будет расти в геометрической прогрессии лол

вот так, штоле?

z = createElement('div');
z = createElement('div'); // теперь в z сразу два элемента! первый дивчик потеснился!

Братан, мне кажется, ты что-то проебал на раннем этапе, когда про ссылки/указатели читал. Это серьезный проеб, он тебя заведет в Адъ костылей. Перечитай.
Аноним 21/09/17 Чтв 21:39:27  161532317
>>161531407
Я просто хотел сказать, что это не то, чем стоит забивать голову вкатывальщику. Разница в плане производительности между 1 и 2 не велика. мЫ НЕ В 2007
Аноним # OP  21/09/17 Чтв 21:40:00  161532353
image.png (6Кб, 357x128)
>>161532044
Если вынести, вроде как вот так получится, хз даже, будет это работать или нет, щас проверю.
Буду подписываться ОПом, чтобы не путали меня с другими.
Аноним 21/09/17 Чтв 21:40:56  161532412
>>161526884 (OP)
>2k17
>быть мартыхой
)
Аноним # OP  21/09/17 Чтв 21:41:11  161532429
>>161532317
Не велика, но хочется чтобы было идеальноже
Аноним 21/09/17 Чтв 21:42:18  161532483
>>161532317
>Разница в плане производительности между 1 и 2 не велика. мЫ НЕ В 2007

Вот это называется говнопрограммирование "и так сойдет". Представь себе огромный документ, в котором querySelector работает долго, а тебе нужно добавить много блоков. И ты тупо будешь искать это сто раз. Полсекунды разницы могут стоить тебе 20% раздраженных клиентов.

Не нужно преждевременно оптимизировать, но представление о стоимости операций нужно иметь.
Аноним # OP  21/09/17 Чтв 21:42:39  161532503
>>161532296
Проебался, а ещё это было 2 года назад, вот и пытаюсь всё вспомнить и вернуть по полочкам.
Аноним 21/09/17 Чтв 21:43:12  161532543
carlfacepalm.jpg (15Кб, 480x360)
>>161531947
>предыдущий блок + новый блок, и так будет расти в геометрической прогрессии лол
Пока искал пик, уже пояснили >>161532296
Аноним 21/09/17 Чтв 21:43:51  161532578
>>161526884 (OP)
возьми да померяй.
Аноним # OP  21/09/17 Чтв 21:43:53  161532582
>>161532483
>это называется говнопрограммирование
Верно, об этом я и хотел сказать, если делать, то сразу правильно.
Аноним 21/09/17 Чтв 21:44:29  161532620
>>161532353
>Если вынести, вроде как вот так получится, хз даже, будет это работать или нет, щас проверю.
>Буду подписываться ОПом, чтобы не путали меня с другими.

Ах ты пидор. Я подозревал, но не хотел верить, что кто-то эту хуйню спорет. Иди в дизайнеры. Это не будет работать, это один и тот же див, который будет перемещаться сто раз по документу.

https://stackoverflow.com/questions/6244985/insert-html-element-two-or-more-times-using-javascript
Аноним # OP  21/09/17 Чтв 21:44:29  161532621
>>161532578
Как и где?
Аноним 21/09/17 Чтв 21:44:48  161532638
>>161532353
var
str = '',
i = x.length,
div = .....;
// end vars

while(i--) {
str += '<p><p>';
}

div = str;

В переменную собирай и одной вставкой вставляй. В одной функции, один var, все переменные туда выноси все через запятую, в конце точка запятой

Читай книги:
крокфорд сильные стороны
оптимизация производительности
javascript подробное руководство фленеган
javascript шаблоны- стоян стефанов
Аноним 21/09/17 Чтв 21:44:56  161532647
>>161532621
в браузере?
Аноним 21/09/17 Чтв 21:45:58  161532708
>>161532582
>Верно, об этом я и хотел сказать, если делать, то сразу правильно.

я тебя поддерживаю. И "сразу правильно" - это не обращаться к безграмотному двачу, а спрашивать гугль "js dom fast append" и идти по ссылкам на SO.
Аноним 21/09/17 Чтв 21:47:37  161532805
Пиздец ты, ОП, необучаемый.
Аноним 21/09/17 Чтв 21:48:47  161532861
>>161532638
>В переменную собирай и одной вставкой вставляй.

Еще раз говорю, народ неоднозначно пишет насчет innerHtml - разницы почти нет с аппендом. https://stackoverflow.com/questions/634878/fastest-dom-insertion

Но сто раз искать по документу один блок, конечно, не надо.
Аноним 21/09/17 Чтв 21:53:31  161533134
>>161532647
Ты можешь в браузере на глаз определить насколько его загрузит создание 100 блоков циклом?
Аноним 21/09/17 Чтв 21:53:57  161533167
>>161533134
а что, мерять время запретили?
Аноним 21/09/17 Чтв 21:57:31  161533372
>>161532621
var d = new Date();
//код
console.log(new Date() - d);
Аноним # OP  21/09/17 Чтв 21:59:02  161533457
>>161532620
Что-то вроде этого я и думал, проверил, действительно не работает, создаёт только 1 DIV.
Аноним 21/09/17 Чтв 21:59:31  161533491
>>161533167
Два чая
Аноним # OP  21/09/17 Чтв 21:59:56  161533516
>>161533167
И как же ты собираешься измерять миллисекунды глазом.
Аноним # OP  21/09/17 Чтв 22:00:30  161533551
>>161533372
Лол, и правда, спасибо за подсказку.
Аноним 21/09/17 Чтв 22:02:00  161533625
>>161532638
>В одной функции, один var, все переменные туда выноси все через запятую, в конце точка запятой

Вот это уже какая-то фанатичная хуйня преждевременного оптимизатора. Нахуй такое ухудшение читаемости надо ценой нескольких микросекунд.
Аноним 21/09/17 Чтв 22:05:19  161533826
>>161533625
может его в детстве Вирт покусал.
Аноним # OP  21/09/17 Чтв 22:09:39  161534044
Пацаны, а такой вопрос, при достижении какого количества обращений к одному и тому же элементу в скрипте с помощью querySelector, стоит этот элемент поместить в переменную?
Аноним 21/09/17 Чтв 22:11:43  161534151
>>161534044
ты там что вообще делаешь, демон? у тебя же код уровня jquery, так уже десять лет не пишут. куда тебе его ускорять.
Аноним 21/09/17 Чтв 22:14:23  161534283
>>161534044
>Пацаны, а такой вопрос, при достижении какого количества обращений к одному и тому же элементу в скрипте с помощью querySelector, стоит этот элемент поместить в переменную?

Двенадцати раз, но это не точно.

Чо ты стремные вопросы задаешь, это должна быть жопная чуйка. Если цикл есть, я бы сразу выносил, так более читаемо. Смотри на красоту кода, иногда даже если цикла нет, но код типа

а = querySelector
a.add(x)
a.add(y)
a.add(z)

красивше смотрится.
Аноним 21/09/17 Чтв 22:17:14  161534429
14734646199390.jpg (64Кб, 600x600)
>>161526884 (OP)
>20!8
>var
Аноним 21/09/17 Чтв 22:18:06  161534478
>>161526884 (OP)
Используй версию html на спидах haml какой-нибудь
Аноним 21/09/17 Чтв 22:18:56  161534527
Нахуй вы вообще DOM руками теребите? Не делайте так, если не умеете, возьмите какой нибудь реакт, там этих проблем нет.
Аноним # OP  21/09/17 Чтв 22:19:15  161534551
14848353134960.jpg (129Кб, 960x960)
>>161534429
Аноним 21/09/17 Чтв 22:21:30  161534674
>>161534151
Да ничего такого, приятные плюшки для пользователей на свой говносайт.

>>161534283
Возьму для себя на пометку помещать элемент из DOM в переменную, если к нему идёт от 10 обращений во всём коде, а то что элементы из цикла помещать в переменные обязательно, это я уже запомнил.

Спасибо аноны.
Аноним 21/09/17 Чтв 22:21:34  161534682
>>161526884 (OP)
for(let i of Array(10).keys())
{
console.log(i)
}
Аноним 21/09/17 Чтв 22:22:35  161534737
>>161534429
две стрелочных функции этому промису
Аноним 21/09/17 Чтв 22:29:54  161535146
>>161534527
>Нахуй вы вообще DOM руками теребите? Не делайте так, если не умеете, возьмите какой нибудь реакт, там этих проблем нет.

НАЧ.ОТДЕЛА ПРОДАЖ РАСКРОЕЧНЫХ СТАНКОВ / БУРОВЫХ ХУЕВ НУЖНО В КАЧЕСТВЕ ХОББИ ДОБАВИТЬ DIV НА ХОМПЕЙДЖ
@
УЧИТЬ КАКУЮ-ТО ГРОМОЗДКУЮ ХУЙНЮ, КОТОРАЯ ЧЕРЕЗ ДВА МЕСЯЦА СТАНЕТ НЕМОДНОЙ, А ЧЕРЕЗ ПОЛГОДА ЗА ЕЕ УПОМИНАНИЕ НАЧНУТ ПИЗДИТЬ


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

"давайте перепишем все на фреймворк+1!"

Ничо, остынете.
Аноним 21/09/17 Чтв 22:31:08  161535211
>>161534527
мне кажется он обосрется с реактом, если вспоминает js, уж точно с redux
Аноним # OP  21/09/17 Чтв 22:33:14  161535319
Аноны, а что вы думаете о том, чтобы поместить весь DOM в переменную, и потом уже во всём коде обращаться не к document, а к этой переменной, в чём плюсы и минусы?
Аноним 21/09/17 Чтв 22:34:47  161535403
>>161535319
гугли shadow dom
Аноним 21/09/17 Чтв 22:34:50  161535407
>>161535319
Проще взять блок нужный, скопировать и уже с ним манипуляции делать, а потом заменить старый полученным.
Аноним 21/09/17 Чтв 22:37:43  161535540
>>161535319
>Аноны, а что вы думаете о том, чтобы поместить весь DOM в переменную, и потом уже во всём коде обращаться не к document, а к этой переменной, в чём плюсы и минусы?

Основной и единственный плюс - можно сделать забавно, если ты не любишь слово document, а любишь слово pidor, то можно сделать так:

var pidor = document;
pidor.querySelector(...

минусов никаких нет, других плюсов тоже.

Еще раз тебе говорю, перечитай про ссылки/указатели как таковые (даже не применительно к js)
Аноним 21/09/17 Чтв 22:43:37  161535857
>>161535540
если я тебя правильно понял, то плюсы есть. например мы что-то делаем с виртуальным домом, потом сравниваем изменения и пачкой добавляем в реальный дом
Аноним 21/09/17 Чтв 22:51:14  161536312
>>161535857
>если я тебя правильно понял, то плюсы есть. например мы что-то делаем с виртуальным домом, потом сравниваем изменения и пачкой добавляем в реальный дом

Не нужно тебе это, падаван юный. Тебе придется обмазываться React (или чо щас там модно для Virtual DOM).

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

DOM достаточно быстр для всех твоих любительских начинаний, если ты не начнешь искусственно тупить.

Не занимайся преждевременной оптимизацией.
Аноним 21/09/17 Чтв 23:01:35  161536944
>>161536312
Реакт существует не для "оптимизаций" производительности, а для поддерживаемости и простоты кода. Когда у тебя пара-тройка манипуляций с домом - это ок, а когда их будет десятки или сотни - это превратится в неподдерживаемое говно и ты в любом случае придешь к компонентной модели. Так почему сразу не начать делать нормально?
Аноним # OP  21/09/17 Чтв 23:01:59  161536969
>>161535540
>pidor.querySelector
Если шутить, то тут ещё плюс, если код спиздит какой-то школьник, он весь мозг сломает, что за такая переменная и почему нихуя не работаетесли конечно не весь код скопипастит
Аноним # OP  21/09/17 Чтв 23:04:20  161537106
>>161535403
>shadow dom
Спасибо почитаю.
>>161535407
Двачую, копируем часть дома с которой работает весь скрипт и ебём только её.
Аноним 21/09/17 Чтв 23:05:20  161537162
>>161536944
>а когда их будет десятки или сотни - это превратится в неподдерживаемое говно и ты в любом случае придешь к компонентной модели. Так почему сразу не начать делать нормально?

Если меня заебет, что моя хомпейдж неподдерживаемое (кем?) говно, я тогда брошу продажу своих горизонтально-расточных станков и пойду в реакт-макаки. Но к тому времени вы уже бросите реакт и начнете дрочить на что-нибудь другое (или реакт станет частью стандарта и изменится, или ебнет третья мировая).
Аноним 21/09/17 Чтв 23:09:33  161537417
>>161526884 (OP)
Оба варианта хуёвые по скорости. Нужно сначала создать все дивы, а потом одним действием их зааттачить.
мимо 300к в секунду фронт-энд бог
Аноним 21/09/17 Чтв 23:12:22  161537566
>>161537162
А ты с чего решил что ОП делает хомпейдж неподдерживаемый? Он вроде как учится чему-то, а не просто конкретную хуйню решает.
Аноним # OP  21/09/17 Чтв 23:21:13  161538042
>>161537417
Точно, создаём все дивы добавляя их в переменную, а потом выводим всю пачку в нужном месте, спасибо за подсказку.
Аноним 21/09/17 Чтв 23:21:57  161538081
>>161537566
судя по тому что он делает, и какие вопросы при этом задаает, я бы не сказал что он чему-то учится.
Аноним 21/09/17 Чтв 23:27:07  161538341
>>161537566
>А ты с чего решил что ОП делает хомпейдж неподдерживаемый?

"Чо делаешь, демон? - Да ничего такого, приятные плюшки для пользователей на свой говносайт."

и да, двачую другого анона, который про "непохоже, что учится"
Аноним 21/09/17 Чтв 23:39:54  161538994
>>161526884 (OP)
Если вынести querySelector за цикл, , то перфоманс повысится. В примере 1 и 2 отличий существенных нет.
Аноним 21/09/17 Чтв 23:47:13  161539388
>>161538994
алсо, хер который писал что z не надо создавать, а надо просто запихать выражение в append(...) прав.
Аноним 22/09/17 Птн 00:22:39  161541192
>>161529978
Вы все пидоры и у вас тотальный фреймворк головного мозга
Аноним # OP  22/09/17 Птн 00:23:37  161541246
Аноны, а вот создали мы 100 блоков, а как теперь обратиться к определённому из них? Пример

<div class="block">
<div>Текст 1</div>
<div>Текст 2</div>
<div>Текст 3</div>
</div>

Вот нам нужно загрузить содержимое 2 блока, как это сделать?
Аноним 22/09/17 Птн 00:24:43  161541294
>>161541246
Есть селектор css, выбирающий номерной див, или можно id назначить в цикле создания.
Аноним 22/09/17 Птн 00:25:49  161541345
>>161541246
http://htmlbook.ru/css/nth-child
Аноним 22/09/17 Птн 00:26:09  161541361
>>161541246
я прочитал тред и теперь я знаю ответ: надо поместить этот блок в переменную.
Аноним # OP  22/09/17 Птн 00:36:02  161541829
>>161541294
>>161541345
Плохой пример привёл, тогда такой

<div class="block">
<ul><li>Текст 1</li><li>Текст 1</li><li>Текст 1</li></ul>
<ul><li>Текст 2</li><li>Текст 2</li><li>Текст 2</li></ul>
<ul><li>Текст 3</li><li>Текст 3</li><li>Текст 3</li></ul>
</div>

Как нам загрузить в переменную x содержимое второго списка ul и например задать его элементам li какой-нибудь класс
Аноним 22/09/17 Птн 00:36:02  161541830
>>161541246
>Вот нам нужно загрузить содержимое 2 блока, как это сделать?

Ты нелечибельный, и те, кто тебе советуют nth-child, тоже. Блядь, ты только что этот блок создавал в цикле, ты ЗНАЕШЬ его содержимое - вот там сразу и пиздячь что тебе нужно.

Я тебе серьезно говорю - иди в дизайнеры интерьеров. Судя по тому, какие вопросы ты задаешь по js, у тебя должен быть охуенный талант в дизайне.
Аноним 22/09/17 Птн 00:37:51  161541912
>>161541829
Тогда задать им id по какому-нибудь правилу. Типа id="muhvarx1y1", а потом получать через getElementById
Аноним 22/09/17 Птн 00:45:18  161542237
>>161541912
>Тогда задать им id по какому-нибудь правилу. Типа id="muhvarx1y1", а потом получать через getElementById

Ты даешь хороший совет ОПу, как лучше достать гланды через жопу. Да, можно сделать и через nth-child, и через айдишник - но ЗАЧЕМ? Он же сам генерит эти блоки, один из них он хочет пометить классом.

var pidor = document;
block = pidor.querySelector(...
for (let i=1; ...
let z = pidor.createElement('div');
if (i==1488)
z.setAttribute("class", "EBANIS");
block.addElement(z)
}

}
Аноним # OP  22/09/17 Птн 00:45:36  161542253
>>161541830
Лол, я перефразировал вопрос здесь >>161541829 мне нужно получить содержимое блока созданного не скриптом. В дизайнеры не могу, нет фантазии.

>>161541912
Можно задать, но вопрос как это можно сделать, имея в блоке элементы без идентификаторов.
Аноним 22/09/17 Птн 00:47:39  161542354
>>161541830
>Ты нелечибельный, и те, кто тебе советуют nth-child, тоже.
Ну а хули, каков вопрос таков и ответ.
Аноним # OP  22/09/17 Птн 00:49:08  161542442
>>161542237
Про цикл можно забыть, он был для вопроса о нагрузках, нужно достать содержимое списка, созданного не скриптом.
Аноним 22/09/17 Птн 00:57:03  161542819
>>161541829
у тебя есть блок, ты можешь взять i-th child этого блока.
Аноним 22/09/17 Птн 00:57:29  161542828
>>161542442
xpath выражение напиши, хех.
Аноним 22/09/17 Птн 00:58:09  161542853
>>161542442
>Про цикл можно забыть, он был для вопроса о нагрузках, нужно достать содержимое списка, созданного не скриптом.

Тогда тебе уже сказали - css selectors
или
document.querySelectorAll("td")[48]

ВСЕ ЭТО ЕСТЬ В ЕБАНОЙ УВЛЕКАТЕЛЬНОЙ ДОКУМЕНТАЦИИ
Аноним 22/09/17 Птн 01:01:29  161542991
>>161528119
лол, естественно, с созданием переменной. смысл при каждом проходе цикла искать элемент?
Аноним 22/09/17 Птн 01:04:26  161543118
ПИШИ СКРИПТЫ
@
СОЗДАВАЙ ПЕРЕМЕННЫЕ
Аноним # OP  22/09/17 Птн 01:10:04  161543329
>>161542853
>document.querySelectorAll("td")[48]
Ты охуенен анон, то что нужно, я знаю про документацию, но иногда не знаешь что искать.

Аноны ещё раз спасибо, реально помогли.
Аноним 22/09/17 Птн 01:10:10  161543333
>>161543118
надо БОЛЬШЕ переменных!
Аноним 22/09/17 Птн 01:25:20  161543805
Быстрее по производительности будет сгенерировать html текст и вставить его через innerHTML
Или же создать элемент, потом вставить в него 100 элементов-детей и вставить этот элемент со 100 детьми в контейнер.
Не надо делать операции, которые вызовут перерисовку в браузера на каждую итерацию цикла
Аноним 22/09/17 Птн 01:26:20  161543832
>>161543329
>Ты охуенен анон, то что нужно
Тебе это выше не раз говорили.
Аноним 22/09/17 Птн 01:28:06  161543897
>>161543805
Нормальные люди это через фрагменты делают, но где они, эти нормальные люди?
Аноним 22/09/17 Птн 01:32:46  161544034
untitled12.PNG (22Кб, 731x738)
>>161526884 (OP)
12 лет назад, когда был малолетним долбоёбом, тоже так переменные называл. Наверное это свойство всех малолетних долбоебов - называть переменные одной буквой.
Аноним 22/09/17 Птн 01:34:50  161544094
>>161544034
отступы где? переменные из одной буквы ему не нравятся.
Аноним 22/09/17 Птн 01:47:21  161544461
>>161527473
>Вот смотри. Рубль упал, время непростое, количество рабочих мест сокращается. Да ты и сам или твои родители испытали на себе сокращение. Но тем не менее каждый день здесь проскакивает как минимум 1 тред о вкатывании в программирование. И при этом находятся те, кто готов помогать левому хую, советовать куда обращаться и какие технологии учить. ЗАЧЕМ?
Те, кто бегут сразу на двощик с вопросами "как?" и "сделайте за меня", нормально в программирование не вкатятся. Максимум там месяц (а то и неделей все ограничится) потывкаются помыкаются и съебут в веб-дизайн или верстальщики.
Тот, кто действительно хочет и может осилить погромирование - пойдет мануалы читать, форумы разные, на которых подобный вопрос уже обсуждали, если нихуя не найдет - пойдет сам тестировать свой код с разными данными, на разных платформах (или в разных браузерах), еще и баг может какой в результате найдет или не обычные результаты получить - пойдет статейку куда-нить на хабр или специализированный форум пиздонет.
Я с удовольствием помогаю малолетним долбоебам в области, в которой специализируюсь. Иногда даже, по доброте душевной могу сделать задание, за которое обычно деньги беру. А все потому, что они нихуя не КОНКУРЕНЦИЯ. Вот я ему один раз помог, второй раз помог - он и привык, что все за него делают. А третий раз мне впадло было. А он уже на рабочем месте сидит - задание ему дали, которое он не сделает и его пидорнут со свистом.
А еще в универе вон тоже всей группе делал лабораторные по погромированию (вот серьезно, 25 человек в группу и каждый ко мне хотя бы один раз обратился, чтобы я ему лабу сделал). Чтобы они сами своими мозгами не думали и в будущем не заняли мое рабочее место.
Аноним # OP  22/09/17 Птн 01:53:49  161544645
>>161544034
Это сделано намеренно, чтобы не напрягать глаза анону лишней информацией, и вообще во всех учебниках примеры буквами.
Аноним 22/09/17 Птн 01:55:17  161544689
>>161544094
Висуал Васик же. Мне 18 лет было, когда тот код писал.
Потом в универе на Паскале научился табуляции ставить.
Вот тут примеры моего JS https://habrahabr.ru/post/328568/ (тож далеко не идеал)
Аноним 22/09/17 Птн 01:56:59  161544739
>>161544461
а ты коварный.
Они все потом стали начальниками твоими, а ты батрачишь?
Аноним 22/09/17 Птн 02:00:06  161544838
>>161544689
>https://habrahabr.ru/post/328568/
О, я помню в книжке "парк юрского периода" каждая глава начиналась с итерации этого дракона, я потом его на двойных листах больших рисовал часами.
Аноним 22/09/17 Птн 02:00:33  161544855
>>161544739
Не, я в 2012 полгода в офисе посидел и сижу 5 лет хуи пинаю.
Аноним 22/09/17 Птн 02:12:41  161545210
>>161528018
Фу, вкатывальщик, да ещё и жс
Аноним 22/09/17 Птн 02:39:50  161546133
>>161544689
Дианон уебка
Аноним 22/09/17 Птн 02:48:41  161546425
>>161546133
Орнул. Мамку пойди свою задиванонь
Аноним 22/09/17 Птн 05:42:33  161549901
>>161526884 (OP)
Работа с DOM - самые длительные операции в JS, и если время на поиск в современном мире уже не столь важно, то вот вставки по прежнему могут очень существенно замедлить производительность, потому что при вставке новой ноды перерисовывается все дерево, а не конкретный элемент.
Поэтому разницы между первым и вторым вариантом особо нет (А современный браузер скорее всего даже соптимизирует эту конструкцию и сведет её к одной единственной вставке-перерисовке, но лишь в таком примитивном варианте, как в ОП-посте), куда важнее помнить об особенностях перерисовки DOM и подготавливать фрагменты для вставки в памяти, вместо манипулирования живой нодой.
Аноним 22/09/17 Птн 07:54:07  161551542
>>161546133
ICQ: 203 012 679.
Скайп: rasty2222
Звонит или пишите всем все объясню
Аноним 22/09/17 Птн 07:54:52  161551557
>>161544689
Хахол не человек а гнида

[Назад][Обновить тред][Вверх][Каталог] [Реквест разбана] [Подписаться на тред] [ ] 126 | 10 | 34
Назад Вверх Каталог Обновить

Топ тредов
Избранное