そもそも LINQ って?
Language-Integrated Queryの略です。
ASP.NET で配列をクエリで簡単に操作することが出来ます。
linq.js とは?
LINQ を JavaScript で使えるようにしたライブラリです。
https://github.com/mihaifm/linq
linq.js 機能紹介
よく使う機能を紹介していきます。
まず適当な配列を用意します。
var list = [
{ "id": 0, "name": "hoge1", "order": 3},
{ "id": 1, "name": "fuga1", "order": 5},
{ "id": 2, "name": "hoge2", "order": 1},
{ "id": 3, "name": "piyo1", "order": 4},
{ "id": 4, "name": "fuga2", "order": 2}
];
Any/Contains
配列に指定した条件のものが含まれるかを調べるのに使います。
// true
Enumerable.From(list).Any(x => { return x.name == "hoge1" });
// false
Enumerable.From(list).Any(x => { return x.name == "hogee" });
// true
Enumerable.From(list).Select(x => { return x.name }).Contains("hoge1");
// false
Enumerable.From(list).Select(x => { return x.name }).Contains("hogee");
スポンサー
OrderBy/OrderByDescending
配列を昇順、降順にソートできます。
// 昇順
Enumerable.From(list).OrderBy(x => { x.order });
// 降順
Enumerable.From(list).OrderByDescending(x => { x.order });
Select/Where
要素の抽出、フィルタに用います。
Enumerable.From(list).Select(x => { return x.id }).ToArray();
Enumerable.From(list).Where(x => { return 1 <= x.id && x.id <= 3 }).ToArray();
動作確認にどうぞ。
関連情報
フロントエンドに関連する記事を以下にまとめています。
テレワークしている方には以下の記事がおすすめです。
私のお気に入りは REALFORCE と R&F BELX のルイボスティーです。
エンジニア初心者向けに本当に使えるツールを紹介しています。
特に Notion はタスク管理に本当に便利です。