この記事は闇の魔術に対する防衛術 Advent Calendar 2018の5日目の記事です。 概要 VueやReact,Expressなどの各フレームワーク特有のアンチパターンではなく、JavaScriptプログラミングで全般的に見かけるであろうアンチパターンたちです。 以下の3つについて書いています 副作用の処理 プロパティーチェック コールバック地獄 副作用の処理 副作用という言葉を、ここでは「ある処理に注目したときに、それに付随して行われるべき処理」という意味合いで使用します。 どの言語でやってもあるものなのですが、副作用というのはめんどくさいものです。 例えば、「aという値を変更したらbを変更してcという関数を実行する」という処理をjsで書くと以下のようになります。