try/catchブロックをシンプルにする

try/catchブロック内の処理は、それぞれ関数として抽出すると良いとされています。

try{
  // ここに細かい処理を書かかない。関数に抽出してそれを呼び出す
  calcPrice()
}catch(e){
  // 上記と同様
  reportError(e)
}

また、try/catch自体が一つの処理なので、関数の中でtry/catchを行う際はそれがコードの最上位にくる必要があります。(ネストされたところtry/catchなどは行わないようにすr)