JavaScriptおすすめのライブラリはlodash

異なるシステムでも、同じようなコードを書くことがよくあります。

二つの値が同じかどうか、データをソートする、オブジェクトから特定のプロパティのみを抽出するなどなど。

このような処理を汎用的に共通化し、再利用できる形で提供しているライブラリーを使うことで、コードの安全性と開発スピードの向上が見込めます。

lodashはそんなライブラリーの一つです。

ドキュメントは以下です。いろいろな関数が提供されているので眺めてみると良いでしょう。

https://lodash.com/docs/

英語で書かれていますが、実際の使い方のサンプルもあるので、イメージはしやすいと思います。

また、ライブラリーで提供されている関数がどのような実装になっているかを見ることで、とても勉強になります。

lodash は関数型プログラミングするのに大いに役立つと思っています。

例えば、chainという関数のサンプルは以下のようになっています。

var users = [
  { 'user': 'barney',  'age': 36 },
  { 'user': 'fred',    'age': 40 },
  { 'user': 'pebbles', 'age': 1 }
];
 
var youngest = _
  .chain(users)
  .sortBy('age')
  .map(function(o) {
    return o.user + ' is ' + o.age;
  })
  .head()
  .value();

処理が順番に書かれているので、実際にsortByやmap、headがどのような実装になっているかを知らなくても、youngest がどのような結果になるかは、容易に想像がつくのではないでしょうか。

関数型プログラミングでは、上記のようにyoungestがなんなのかを定義するので、細かい処理がわからなくても、コードを読むことができます。

少し脱線しましたが、プログラミングに慣れてきたら、少しライブラリーも触ってみて、その知見を吸収しましょう!