JavaScript Q&A Logo
JavaScript Q&A Part of the Q&A Network
Real Questions. Clear Answers.
Ask any question about JavaScript here... and get an instant response.
Q&A Logo Q&A Logo

How can I create a custom error type to handle specific network failures in a try/catch block in JavaScript?

Asked on Nov 27, 2025

Answer

To create a custom error type in JavaScript for handling specific network failures, you can extend the built-in Error class. This allows you to throw and catch instances of your custom error type in a try/catch block.
<!-- BEGIN COPY / PASTE -->
        class NetworkError extends Error {
            constructor(message) {
                super(message);
                this.name = "NetworkError";
            }
        }

        try {
            // Simulate a network failure
            throw new NetworkError("Failed to fetch data from the server.");
        } catch (error) {
            if (error instanceof NetworkError) {
                console.error("Network error occurred:", error.message);
            } else {
                console.error("An unexpected error occurred:", error);
            }
        }
        <!-- END COPY / PASTE -->
Additional Comment:
  • The "NetworkError" class extends the built-in "Error" class.
  • The constructor sets the error message and assigns a custom name to the error type.
  • In the try block, a "NetworkError" is thrown to simulate a network failure.
  • The catch block checks if the error is an instance of "NetworkError" to handle it specifically.
  • This approach helps in distinguishing between different types of errors in your application.
✅ Answered with JavaScript best practices.
← Back to All Questions

Q&A Network
The Q&A Network
JavaScript
Ask Questions / Get Answers about JavaScript!
AI Writing
Ask Questions / Get Answers about AI Writing!
Networking
Ask Questions / Get Answers about Networking!
CSS
Ask Questions / Get Answers about CSS!
AI Marketing
Ask Questions / Get Answers about AI Marketing!
HTML
Ask Questions / Get Answers about HTML!
Web Languages
Ask Questions / Get Answers about Web Languages!
Cloud Computing
Ask Questions / Get Answers about Cloud Computing!
Chatbots
Ask Questions / Get Answers about Chatbots!
Cybersecurity
Ask Questions / Get Answers about Cybersecurity!
Security
Ask Questions / Get Answers about Website Security!
Web Hosting
Ask Questions / Get Answers about Hosting!
AI Ethics
Ask Questions / Get Answers about AI Ethics!
AI Images
Ask Questions / Get Answers about AI Images!
AI Education
Ask Questions / Get Answers about AI Education!
Analytics
Ask Questions / Get Answers about Analytics!
Monetization
Ask Questions / Get Answers about Ad & Monetization!
SEO
Ask Questions / Get Answers about SEO!
AI
Ask Questions / Get Answers about AI!
AI Business
Ask Questions / Get Answers about AI Business!
Data Science
Ask Questions / Get Answers about Data Science!
DevOps
Ask Questions / Get Answers about DevOps!
Tailwind
Ask Questions / Get Answers about Tailwind!
Bootstrap
Ask Questions / Get Answers about Bootstrap!
WordPress
Ask Questions / Get Answers about WordPress!
AI Audio
Ask Questions / Get Answers about AI Audio!
Robotics
Ask Questions / Get Answers about Robotics!
VR & AR
Ask Questions / Get Answers about VR & AR!
Quantum
Ask Questions / Get Answers about Quantum Computing!
AI Video
Ask Questions / Get Answers about AI Video!
Film Production
Ask Questions / Get Answers about Film Production!
AI Coding
Ask Questions / Get Answers about AI Coding!
Web Development
Ask Questions / Get Answers about Web Development!
AI Design
Ask Questions / Get Answers about AI Design!
Photography
Ask Questions / Get Answers about Photography!
Performance
Ask Questions / Get Answers about Web Vitals!
Video Editing
Ask Questions / Get Answers about Video Editing!
IoT
Ask Questions / Get Answers about IoT!
MobileDev
Ask Questions / Get Answers about Mobile Developement!