あまり知らなかったのでErrorオブジェクトについて勉強してみました。
let a = new Error();とすることにより変数にエラーオブジェクトを格納できます。
Errorオブジェクトにはmessageプロパティが存在し、Errorの第一引数に渡した文字列はmessageプロパティに設定されます。
以下、例です。
1 2 |
let a = new Error('エラー!!!'); console.log(a.message); |
結果は以下のようになります。
1 |
エラー!!! |
nameプロパティ
Errorオブジェクトはnameプロパティも持っています。
デフォルトでは値はErrorが入っているようです。以下のように代入することで変更することができます。
1 2 3 4 |
let a = new Error(); console.log(a.name); a.name = 'CustomError'; console.log(a.name); |
結果は以下のようになります。
1 2 |
Error CustomError |
lineNumberプロパティ
lineNumberプロパティはthrowした行が設定されます。
throwされていない場合は、undefinedが設定されています。以下、例です。
1 2 3 4 |
let a = new Error(); console.log(a.lineNumber); throw a; console.log(a.lineNumber); |
結果は以下のようになります。
1 2 |
undefined 3 |
Errorを継承したカスタムエラークラスを作成する
Errorオブジェクトをextendsすることによって独自のエラーオブジェクトを作成することができます。
1 2 3 4 5 6 |
class CustomError extends Error () { constructor() { super(); } … } |
KHI入社して退社。今はCONFRAGEで正社員です。関西で140-170/80~120万から受け付けております^^
得意技はJS(ES6),Java,AWSの大体のリソースです
コメントはやさしくお願いいたします^^
座右の銘は、「狭き門より入れ」「願わくは、我に七難八苦を与えたまえ」です^^