Panda Noir

JavaScript の限界を究めるブログでした。最近は幅広めに書いてます。

Jestいいぞ

今更コードのカバレッジを気にし始めたクロパンダです(プログラミング歴7年目())。今までは結構ざっくりとテストを書いてきていました。というのも、コードカバレッジという概念がどうも七面倒でやる気が起きなかったのです。

しかし、JavaScriptテストツール「Jest」を試してみたところ、かなり使いやすかったので紹介したいと思います(今更)

続きを読む

Vimで選択した内容で検索する

「選択範囲内で検索する」ではなく、「選択した文字列で検索する」というTipです。

  1. ヤンクする
  2. /を入力する
  3. <C-r>を押す
  4. ヤンクしたレジスタ名を入力する(yでヤンクした場合は無名レジスタなので"を押せばOK)

まあこれだけのTipです。

置換する

まず上の手順で検索してください。次に:%s//と入力してください。そのあとに置換したい文字を入力すればOKです。実はVimは置換対象を省略すると直前に検索していた文字列となります。そのためこれで検索していた文字を置換できます。

enumをそこそこ綺麗に書く

今日で本ブログは6周年となりました。特に何かするわけではありませんが。

本題に入ります。enumをJavaScriptでそこそこ綺麗に書くテクニックの紹介です。

const [SUN, MON, TUE, WED, THU, FRI, SAT] = Array(7).keys();

これだけのTipです。Array(7)Array(20)くらいにしておくと、ほとんどのケースで対応可能かと思います。

一応解説

さすがに短すぎるのでコードの解説をします。まず、Array(7).keys()[0, 1, 2, 3, 4, 5, 6]という配列を用意します。あとはこれをES2015の分割代入でSUN、MON、…のそれぞれに代入するだけです。

使い方

const days = [SUN, SUN, MON, FRI];
days.filter(day => day === SUN).length; // 2

すみません、いい例が思いつきませんでした。