JavaScript 配列メソッドチートシート
最もよく使う JavaScript の配列メソッドと各戻り値、そして決定的に、元の配列を変更するか新しい配列を返すか。この列を正しく押さえるとバグをまとめて防げます: map や filter は元をそのまま残すので安全、sort・reverse・splice はその場で変更します。
更新 2026-07-06
| メソッド | 動作 | 戻り値 | 変更 |
|---|---|---|---|
| map() | すべての要素を変換 | 新しい配列 | いいえ |
| filter() | テストに通る要素だけ残す | 新しい配列 | いいえ |
| reduce() | 配列を 1 つの値に集約 | 任意の値 | いいえ |
| forEach() | 各要素に関数を実行 | undefined | いいえ |
| find() | テストに通る最初の要素 | 要素 / undefined | いいえ |
| findIndex() | 最初に一致したインデックス | インデックス / -1 | いいえ |
| some() | 1 つでも通れば true | 真偽値 | いいえ |
| every() | すべて通れば true | 真偽値 | いいえ |
| includes() | 値が存在するかどうか | 真偽値 | いいえ |
| indexOf() | 値のインデックス | インデックス / -1 | いいえ |
| slice() | 配列の一部をコピー | 新しい配列 | いいえ |
| concat() | 配列を新しい 1 つに結合 | 新しい配列 | いいえ |
| join() | 要素を文字列に結合 | 文字列 | いいえ |
| flat() | ネストした配列を平坦化 | 新しい配列 | いいえ |
| flatMap() | map() の後に 1 段平坦化 | 新しい配列 | いいえ |
| at() | インデックスで要素(負数対応) | 要素 | いいえ |
| push() | 末尾に 1 つ以上追加 | 新しい長さ | はい |
| pop() | 最後の項目を削除 | 削除された項目 | はい |
| shift() | 最初の項目を削除 | 削除された項目 | はい |
| unshift() | 先頭に項目を追加 | 新しい長さ | はい |
| splice() | 任意のインデックスで追加/削除 | 削除された項目 | はい |
| sort() | 配列をその場でソート | その配列 | はい |
| reverse() | 配列をその場で反転 | その配列 | はい |
| fill() | 静的な値で埋める | その配列 | はい |
| Array.from() | イテラブルから配列を作成 | 新しい配列 | いいえ |
| Array.isArray() | 値が配列か確認 | 真偽値 | いいえ |
ヒント: 元をそのままに、ソートしたコピーが欲しいときはまず展開します — [...arr].sort()。最新の JavaScript には新しい配列を返す非変更版(toSorted、toReversed、toSpliced、with)もあります。