2
私は以下のようなJavaScriptクラスを持っており、入力変数のデータ型を制御する必要があります。JavaScriptクラスにエラーを投げるのは悪い習慣と考えられますか?
class Store
{
constructor (name)
{
if (typeof name !== "string")
throw new Error("The first argument must be a string!");
createStore(name);
}
// [...]
}
悪い習慣とは考えられますか?より良い解決策がありますか?
なぜそれは良い習慣ではないでしょうか?失敗は速いです。 – Li357
これは、この「店舗」の意向によって異なります。タイプチェッカーで制御フロー全体が中断されるようにしますか? IMOでは、エラーを返してユーザーが自分が何をしたいかを決めることができます。 –
また、関数の引数で静的型を強制するライブラリである 'Flow'を見ることもできます:https://flow.org/ –