1文字の変数がもたらすストレス
forループや短い関数内で1文字の変数が使われることがあります。
これらの変数がどのように可読性に影響するのかを考えてみました。
この変数が非常に狭い範囲ででてくるのであれば、そこまで読む時にストレスは感じない ...
ボーイスカウトから学ぶコードをきれいに保つ心得
キャンプ場を、自分が見つけたときよりもきれいにすること
というボーイスカウトの規則があります。
プログラミングの世界でもこの言葉が用いられることがあります。
つまり、コードを綺麗に保つには常日頃から ...
賢いコードはできるだけ書かない
時にプログラミングをしていると、他の人が思いつかないような巧みなコードを書きたくなる。
でもチームでの開発ではそういったトリッキーなコードはできるだけ書かない方がみんなのためになる。
むしろ、誰もが思い浮かべる ...
Reactの関数コンポーネントでlodashのdebounceを使用するときはuseCallbackを使う
Reactの関数コンポーネントでlodashのdebounceをそのまま使うと、毎回関数が実行されてしまってうまく機能しません。
これはdebounceが内部的にsetTimeoutを使用していることと、関数コンポーネント ...
JavaScript 連続して関数を呼び出したくないときに便利なlodashのdebounce
mouseoverやscrollイベントが発火した際に何か処理を行いたいことはよくあることですが、これらのイベントは大量に発生するため、イベントが発火する度に関数を実行するとかなりの負荷がかかります。
lodashのdeb ...
React コンポーネントに関数を渡すときの書き方による違い
ボタンコンポーネントにonClick時に実行したい関数を渡す場合は、以下のように書くことができます。
<button onClick={this.handleClick}/><button onClick={( ...
Promiseのcatchで共通処理を行い時を考えてみた
Promiseのcatchで、共通の処理を行い時場合にカスタマイズされたcatchを追加してみました。
myCatch という関数を追加しています。
myCatch は、渡されたハンドラーを実行するとともに、共 ...
JavaScript ソースマップとは
Webpackを使うとJSファイルを一つのファイルにバンドルできますが、圧縮されたファイルなのでエラーが発生したときはどこでエラーが発生したかを調査するのが難しくなります。
ソースマップとは変換後のコードと変換前のコードを ...
ブラウザのコンソールでタイマーを使う
console.time を使用することで処理時間を計測することができます。
console.time('hoge')alert('1回目のアラート')console.timeLog('h ...
バグが発生する原因とバイアスについて考えてみた
なぜシステムでバグが発生するのかを考えてみました。
例えば二つの値を加算した結果を返す処理を書きたいとします。
const add = (a, b) => a + badd(1,2)//3add(2,10)// ...









