Konstrukcja try...catch...finally jest kluczowa w obsłudze błędów w JavaScript. Kryje jednak w sobie subtelną pułapkę, która może prowadzić do wyjątkowo mylących błędów.

W czym konkretnie tkwi problem? W umieszczeniu instrukcji return lub throw wewnątrz bloku finally.

Użycie ich w tym miejscu nadpisze każdą instrukcję return oraz throw z bloków try i catch. Może to prowadzić do niezwykle mylącego zachowania i trudnych do zlokalizowania błędów. Taki kod jest szczególnie niebezpieczny, gdy nie pracujemy sami – inni członkowie zespołu mogą spędzić długie godziny na debugowaniu, jeśli nie są zaznajomieni z tą specyficzną właściwością.

Wniosek? Należy unikać umieszczania return lub throw w bloku finally. Jeśli czujesz taką potrzebę, może to być oznaką większego problemu z architekturą Twojego kodu. W rzadkich przypadkach, gdy masz ku temu konkretny powód, dodaj czytelny komentarz, aby oszczędzić zespołowi przyszłych problemów.

Data publikacji: 28.07.2025 11:46