fnDelay = (function(){
var timer = 0;
return function(callback, ms){
clearTimeout(timer);
timer = setTimeout(callback, ms);
};
})();
И сразу же покажу как ее использовать.
document.getElementById('search').addEventListener('keyup', function() {
fnDelay(function() {
search();
}, 200);
});
//http://plutov.by/post/fn_delay