今回は、Array.filter()メソッドについて試していきます。
.filter()メソッドとは?
.filter()メソッドは、Arrayオブジェクトの中で、条件に合った新たな配列を生成できます。
const fruit = ['りんご', 'みかん', 'ばなな', 'すいか', 'いちご'];
const fruitFilter = fruit.filter(function (value) {
return value.match('ん')
});
Logger.log(fruit);
Logger.log(fruitFilter);
実行ログ
情報 [りんご, みかん, ばなな, すいか, いちご]
情報 [りんご, みかん]
上記のように書いた場合は、配列の中から「ん」が含まれた要素だけが取り出されて、「りんご」「みかん」の新たな配列が生成されました。
.filter()メソッドの短縮形
下記のよう短縮形で表記することもできます。
const fruit = ['りんご', 'みかん', 'ばなな', 'すいか', 'いちご'];
const fruitFilter = fruit.filter(value => value.match('ん'));
Logger.log(fruit);
Logger.log(fruitFilter);
実行ログ
情報 [りんご, みかん, ばなな, すいか, いちご]
情報 [りんご, みかん]
str.match( 検索条件 )で「ん」を含んだ文字を取り出して、新たな配列を作っています。
まとめ
2次元配列では.filter()メソッドを使うことで、データを効率的に扱うことができるようになります。
さらに応用については、また次回。