Демистификация обработки ошибок в TypeScript: освоение распространенных методов

Обработка ошибок — важный аспект создания надежных и надежных программных приложений на TypeScript. В этой статье блога мы рассмотрим различные методы выдачи ошибок и обработки исключений в TypeScript. Мы углубимся в мельчайшие детали, предоставим примеры кода и будем использовать разговорный язык, чтобы сделать концепции более доступными. Итак, начнём!

  1. Использование оператора throw.
    Самый простой способ выдать ошибку в TypeScript — использовать оператор throw. Это позволяет вам явно вызывать исключение, которое может быть перехвачено и обработано соответствующими механизмами обработки ошибок. Вот пример:
function divide(a: number, b: number): number {
  if (b === 0) {
    throw new Error("Cannot divide by zero!");
  }
  return a / b;
}
try {
  console.log(divide(10, 0));
} catch (error) {
  console.error(error.message);
}
  1. Пользовательские классы ошибок.
    В TypeScript вы можете создавать собственные классы ошибок, расширяя встроенный класс Error. Это позволяет определять конкретные типы ошибок и добавлять к ним дополнительные свойства или методы. Давайте посмотрим пример:
class DatabaseError extends Error {
  constructor(message: string) {
    super(message);
    this.name = "DatabaseError";
  }
}
try {
  throw new DatabaseError("Failed to connect to the database!");
} catch (error) {
  console.error(error.name + ": " + error.message);
}
  1. Коды ошибок и сообщения.
    Чтобы предоставить более подробную информацию об ошибках, вы можете использовать коды ошибок и сообщения. Код ошибки может быть уникальным идентификатором, а сообщение об ошибке содержит удобочитаемое объяснение. Вот пример:
class NetworkError extends Error {
  code: number;
  constructor(code: number, message: string) {
    super(message);
    this.name = "NetworkError";
    this.code = code;
  }
}
try {
  throw new NetworkError(404, "Resource not found!");
} catch (error) {
  console.error(
    error.name + " (" + error.code + "): " + error.message
  );
}
  1. Промежуточное программное обеспечение для обработки ошибок в Express.js:
    Если вы работаете с Node.js и платформой Express.js, вы можете использовать промежуточное программное обеспечение для обработки ошибок для централизованной обработки ошибок. Это промежуточное программное обеспечение может обнаруживать ошибки, возникающие в маршрутах или другом промежуточном программном обеспечении, и реагировать соответствующим образом. Вот пример:
app.use((error, req, res, next) => {
    console.error(error);
    res.status(500).json({ error: "Internal Server Error" });
});

В этой статье блога мы рассмотрели несколько методов выдачи ошибок и обработки исключений в TypeScript. Мы рассмотрели основы использования оператора throw, создания пользовательских классов ошибок, включения кодов ошибок и сообщений, а также обработки ошибок в Express.js с использованием промежуточного программного обеспечения. Освоив эти методы, вы сможете создавать более надежные и отказоустойчивые приложения TypeScript.