みなさんこんにちは、かじりです。例外処理とchrome拡張機能のcontent scriptについて考えました
この記事1を読んで気になりました。
chrome拡張機能のcontent script2やscriptのinject3は対象のサイトに対してスクリプトを実行できます。
これらは対象のサイトに埋め込むので、エラーが出ても拡張機能側でエラーハンドリングがやりづらかった。
例えばchromeを使っていたら、devtoolのconsoleを見れば確認できるがわかりづらい。
なのでその場合は、戻り値を使って表現している。okプロパティにtrueかfalseを入れることは強制して、あとはいい感じにする。これをしないと、エラーの時に戻り値がなくて辛い。
先ほどのzennの記事の話に戻ると、エラーはJavaScriptのようなtry/catch方式、関数言語のようなOption/Either方式、Goのような戻り値方式がある。
場合によって使い分けたい。
例外は原則キャッチしない。は同意。
ただ、なんだっけ、JavaScriptのfetchメソッド?は400, 500とか200以外でエラーが出た気がする。あの場合はそもそも例外が出ないようにカスタムfetchを作った記憶がある。