169 похожих чатов

Можно ли сократить данный блок ? function intro (str, element, time)

{
(function writer() {
document.querySelector(element).innerHTML = str.shift();
setTimeout(writer, time);
}())
}

16 ответов

11 просмотров

Можно, перенести функцию write внутрь settineout, удали переменную value

Xlebp-Rjanoi Автор вопроса
Xlebp Rjanoi
Изменил, еще как-то можно?

Я бы ещё каррировал, если скрипт часто вызывается на одном и том же тексте или элементе

хах, setInterval по сути

Xlebp-Rjanoi Автор вопроса
Eldar Dadashov
хах, setInterval по сути

Спасибо. Код не сократит, но поможет в его продолжении точно

Xlebp Rjanoi
Спасибо. Код не сократит, но поможет в его продолж...

в коле главное, чтобы его было читать просто

Xlebp-Rjanoi Автор вопроса
Eldar Dadashov
в коле главное, чтобы его было читать просто

Я на это всегда делаю акцент по возможности (знаниям)

Xlebp Rjanoi
Спасибо. Код не сократит, но поможет в его продолж...

и в предыдущем подходе нужно тогда логику выхода из рекурссии писать если понадобится, а setInterval можно через clearInterval где угодно приостановить

Xlebp-Rjanoi Автор вопроса
Eldar Dadashov
и в предыдущем подходе нужно тогда логику выхода и...

Знаю. Как раз таки ее и писал. Не удобная она оказалась. А во втором методе все отлично.

Eldar Dadashov
и в предыдущем подходе нужно тогда логику выхода и...

Дык таймаут тоже можно чарез клир таймаут почистить) но, лучше сеттаймаут внутри колбэка вызвать, если задача долгая, то сетинтервал и сеттаймат с разными промежутками будет отрабатывать и в итоге 1й раз через 3 секунды, а 2й раз уже через 2 может запуститься (если функа будет секунду отрабатывать)

Joe Beretta
Дык таймаут тоже можно чарез клир таймаут почистит...

Почистить то можно, но создастся новый и еще, пока выход из рекурсии не приостановит

Eldar Dadashov
Почистить то можно, но создастся новый и еще, пока...

Не совсем понял, покажи как если написать, то из рекурсии не выйти? Просто я бы вместо iife вложенный таймаут бы сделал и все и если надо кильнуть ее то внешний таймаут в переменную и по достижении условия изнутри или где-то еще через переменную бы почистил

Joe Beretta
Не совсем понял, покажи как если написать, то из р...

Ну в коде выше, самый первый, как cleartimeout остановит вызов функции

Eldar Dadashov
Ну в коде выше, самый первый, как cleartimeout ост...

Поэтому и сказал про вложенные таймауты

Eldar Dadashov
хах, setInterval по сути

Нет, текущий код остановимся, если внутри будет ошибка, к примеру элемента больше не будет. Setinyerval будет запускаться с ошибкой постоянно

Sergey 🧻🤲
Нет, текущий код остановимся, если внутри будет ош...

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

Похожие вопросы

Обсуждают сегодня

Мужики и девушки, привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных...
Kraszx
14
Добрый вечер. Есть вопрос, а может и предложение. Был у меня диалог в другой группе о делфи и я задался вопросом: "А нельзя ли в делфи цвет //коментария и {комментария} сде...
Kraszx
24
Всем привет! Подскажи, пожалуйста, как передать в TComboBox сразу значение и id записи. На Delphi я делал так: ComboBox1.Items.AddObject('Какое-то значение', Pointer(id запис...
Евгений
13
А вот это что за конструкция? Вернее, она тут нафига?
Serjone
10
Привет. Подскажите, как правильно сматчить лист фиксированного размера, чтобы компилятор не говорил мне о неполном паттерне? Допустим что-то такое [x', y'] = sort [x, y]?
Arseny
8
Мдя, прикол, боевая сборка запускается (именно под отладчиком) после F9 примерно полторы минуты (97 секунд если быть точным). Начал копать - проблема детектится сразу - зависа...
Александр (Rouse_) Багель
38
Здравствуйте, вопрос по структурам данных. Были у вас случаи, когда пришлось писать деревья или двунаправленные списки?
/ /
50
Мужики. привет) в Вelphi xe7 в настройках во вкладке "Editor Options" далее " Color" есть список: "Elements", открыв который мы можем настраивать отображение разных элементов...
Kraszx
2
Товарищи, кто работа с iphelper? Или может я в самой логике ошибки фигачу, не пойму.... var ifTable : PMIB_IFTABLE; size, corSize: DWORD; Buffer ...
Warfarellen
4
я так понимаю, я так подозреваю, что создание такого плагина для человека, кто умеет писать плагины для делфи потребует минут 5-10 времени. но это мое подозрение. хотелось бы ...
Kraszx
7
Карта сайта