logo
/
エラーの返却にthrowを使わず、正常系として返す選択肢
 const errorThrow = cond => {
   return new Promise((resolve, reject) =>
     cond ? resolve({ result: 'success' }) : resolve({ error: 'fail' })
   );
 };

 const main = async () => {
   const { result, error } = await errorThrow(true);
   console.log({ result, error }); 
 };

 main();
エラーハンドリングにtry-catchを使うと、ネストされるので変数のスコープ上constが使いにくい
標準関数上でthrowが発生しない場合は正常系でerrorプロパティを返すのはありかもしれない。
エラーハンドリング例外の取り扱い