概要
JavaScriptの配列操作っていろいろなメソッドありますよね。
- forEach()
- map()
- filter()
- reduce()
ここら辺が主にあると思うんですが、皆さん何使ってますか?
僕はreduce()を推したい...!!
じゃあ何が嬉しいんだよってことで実際に動かして確認します。
実際にやってみた
先に結論言います。
配列でも、文字列でもなんでも作れます
filterとかmapだと、結果として新しい配列を作ることになります。
reduceだと配列でも、文字列でもなんでも作れます。
以下、サンプル。
まず文字列作る。
文字列作る.js
const tanakaList = ["田中1.男",
"田中2.女",
"田中3.男",
"田中4.男",
"田中5.女",
"田中6.男"];
const genderCheck = (list) => {
return list.reduce((pv, cv) => {
const [name, gender] = cv.split('.');
gender === "男" ? pv += name : '';
return pv;
}, "");
};
console.log(genderCheck(tanakaList));
"田中1田中3田中4田中6"
次に配列作る。
配列作る.js
const tanakaList = ["田中1.男",
"田中2.女",
"田中3.男",
"田中4.男",
"田中5.女",
"田中6.男"];
const genderCheck = (list) => {
test = []
list.reduce((pv, cv) => {
const [name, gender] = cv.split('.');
gender === "男" ? test.push(name) : '';
}, "");
return test;
};
console.log(genderCheck(tanakaList));
Array ["田中1", "田中3", "田中4", "田中6"]
こんな感じ。