Implement the scenario utility: DOM event delegation target. Discuss edge cases, runtime performance, and alternative paradigms.
01
01
Understand the problem
js-codingutilityalgorithm
02
02
Attempt it yourself
Sketch your approach before reading the solution — that's what interviews test.
Stuck? AI Nudge Available
Get a conceptual hint to guide your logic without spoiling the final implementation.
03
03
Study the solution
The solution is waiting
Give it an honest attempt first — then compare your thinking with the full walkthrough.
04
04
Read the code
Example usage
function delegate(parentEl, selector, eventType, callback) {
if (!parentEl || typeof parentEl.addEventListener !== 'function') return () => {};
const handler = function(e) {
const match = e.target.closest(selector);
if (match && parentEl.contains(match)) {
callback.call(match, e);
}
};
parentEl.addEventListener(eventType, handler);
// Return unbind teardown callback to follow event-handling best practices
return () => parentEl.removeEventListener(eventType, handler);
}
// Example placeholder (requires DOM environment)
// const cancelDelegation = delegate(document.body, '.btn-action', 'click', e => alert('Clicked!'));05
05
Join the discussion
Discussion (0)
Sign in to join the discussion.
No responses yet. Be the first to share what you think.