window.ENTITIES={'/api/snippets/javascript/javascript%20-%20debounce%20callback%20example%20(delayed%20callback)':[{"result":true,"message":null,"batch":{"type":"javascript","name":"javascript - debounce callback example (delayed callback)","items":[{"id":"p2ZmAp","type":"javascript","name":"JavaScript - debounce callback example (delayed callback)","content":"// ONLINE-RUNNER:browser;\n\nvar createDebounceCallback = function(delay) { // or: delayed debounce callback\n var handle = null;\n if (delay == null) {\n delay = 100;\n }\n return function(callback) {\n if (handle) {\n clearTimeout(handle);\n }\n handle = setTimeout(callback, delay);\n };\n};\n\n\n// Usage example:\n\nvar debounceCallback = createDebounceCallback(500);\n\ndebounceCallback(function() {\n console.log('Debounce called!!!');\n});\n\ndebounceCallback(function() {\n console.log('Debounce called!!!');\n});\n\ndebounceCallback(function() {\n console.log('Debounce called!!!');\n});\n\n// `Debounce called!!!` should be displayed only once after 500 ms since last debounceCallback() call.","source":"","author":{"id":"1DqYJD","name":"starcraf35","avatar":"1629030449433__1DqYJD__w40px_h40px.png","points":754,"role":"BASIC"},"creationTime":1653174261000,"updateTime":1710982997000,"removalTime":null}]}}]};