У меня есть что-то вроде следующего:
var myTimeout;
function delayStuffUntil( when ){
if( myTimeout) clearTimeout( myTimeout );
myTimeout = setTimeout( stuff, when - Date.now() );
}
delayStuffUntil
будет вызван хорошей сделкой, и, вероятно, он будет вызываться с тем же значением when
несколько раз подряд.
Является ли setTimeout
/clearTimeout
достаточно дорогим, что я должен проверить текущую when
на мое последнее значение when
(и только менять таймеры, если они разные)?
Я думал об этом, но правда в том, что when
немного сложнее сравнивать, и я решил, что преждевременная оптимизация - это корень всего зла, поэтому я мог бы работать, когда мне не нужно было.