Time: 0:00
Test a custom input to verify an edge case (e.g. empty lists, negative numbers, duplicates).
This bug belongs to the type errors pattern
Totals that concatenate, sorts that put 10 before 9, comparisons that refuse to run.
What went wrong: Array.prototype.reduce() requires an initial accumulator value when called on an empty array. Without one, JavaScript throws a TypeError.
The fix: Provide 0 as the second argument to reduce(): cartItems.reduce((total, item) => total + item.tax, 0)
Remember: Always supply an initial value to array.reduce() to safely handle empty collections.
The pattern behind it: type errors.
Paste this into any web page or blog post. Visitors fix the bug right there, in their browser.
<iframe src="https://trybughunt.com/embed/c0e867ef-72eb-4b5f-af36-331c6b2f5de0" title="Debugging challenge: Empty cart tax calculation raises TypeError in reduce" width="100%" height="580" loading="lazy" style="border:1px solid #d4d4d8;border-radius:12px;max-width:760px"></iframe>
<p style="font-size:14px">Debugging challenge from <a href="https://trybughunt.com/challenges/c0e867ef-72eb-4b5f-af36-331c6b2f5de0">TryBugHunt</a></p>