JavaScript でエラーを拡張してカスタム エラー処理を行う方法

Patricia Arquette
リリース: 2024-10-23 19:03:30
オリジナル
412 人が閲覧しました

How to Extend Errors in JavaScript for Custom Error Handling

JavaScript でのエラーの拡張: 総合ガイド

エラー処理は、あらゆるプログラミング言語の重要な部分です。 JavaScript では、Error はすべてのエラーの基本クラスです。ただし、基本的な Error クラスから継承し、追加の機能やプロパティを提供する独自のカスタム エラー タイプを作成したい場合があります。

ES6 を使用したエラーの拡張

ES6の導入により、Errorの拡張がかなり楽になりました。 extends キーワードを使用して、Error を継承する新しいクラスを作成できるようになりました。

class MyError extends Error {
  constructor(message) {
    super(message);
    this.name = 'MyError';
  }
}
ログイン後にコピー

このクラスは、Error クラスを拡張し、カスタム名のプロパティを追加します。次のように MyError のインスタンスをスローできるようになりました:

throw new MyError('Something went wrong');
ログイン後にコピー

MyError のインスタンスをキャッチして処理すると、そのカスタム名プロパティにアクセスできるようになり、エラーの種類を識別するのに役立ちます:

try {
  // ...
} catch (error) {
  if (error instanceof MyError) {
    console.error(`MyError: ${error.message}`);
  } else {
    console.error(`Unknown error: ${error.message}`);
  }
}
ログイン後にコピー

レガシー JavaScript を使用したエラーの拡張

レガシー JavaScript では、プロトタイプ チェーンを使用してエラーを拡張できます。

function MyError(message) {
  this.message = message;
}

MyError.prototype = Object.create(Error.prototype);
MyError.prototype.constructor = MyError;
MyError.prototype.name = 'MyError';
ログイン後にコピー

このアプローチはもう少し冗長です。ただし、ES6 をサポートしていない古いバージョンの JavaScript でも動作します。

結論

JavaScript でエラーを拡張すると、次のようなカスタム エラー タイプを作成できます。エラーに関するより詳細な情報を提供し、エラーを具体的に処理するために使用されます。 ES6 を使用するか従来の JavaScript を使用するかに関係なく、ニーズに合わせて Error を拡張する適切な方法があります。

以上がJavaScript でエラーを拡張してカスタム エラー処理を行う方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート