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.unshift() mutates the array and returns its new numeric length, not the array itself.
The fix: Return a new array using spread syntax: [newItem, ...items]
Remember: In JavaScript, array.unshift() returns a number (the new length), not the array.
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/a5b9ab96-7e6a-43dd-b322-0a322ac73e1c" title="Debugging challenge: Array unshift returns new length instead of prepended array" 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/a5b9ab96-7e6a-43dd-b322-0a322ac73e1c">TryBugHunt</a></p>