Get to know MDN better
このページはコミュニティーの尽力で英語から翻訳されました。MDN Web Docs コミュニティーについてもっと知り、仲間になるにはこちらから。
This feature is well established and works across many devices and browser versions. It’s been available across browsers since 2015年7月.
concat() は Array インスタンスのメソッドで、2 つ以上の配列を結合するために使用します。 このメソッドは既存の配列を変更せず、新しい配列を返します。
新しい配列に連結する配列や値です。 すべての valueN 引数が省略された場合、 concat は呼び出された既存の配列のシャローコピーを返します。 詳しくは下記の解説をお読みください。
新しい Array インスタンス。
concat メソッドは新しい配列を作成します。この配列には、まず、このメソッドが名付けられたオブジェクトの要素が入ります。それから、それぞれの引数に対して、その値が配列に追加されます。通常のオブジェクトやプリミティブの場合、引数自体が最終的な配列の要素になります。配列や 配列風のオブジェクトで Symbol.isConcatSpreadable プロパティを真値に設定している場合、各引数の要素は独立して最終的に配列に追加されます。 concat メソッドは入れ子になった配列の引数に再帰的にアクセスすることはありません。
concat() はコピーメソッドです。 this や引数として与えられた配列を変更せず、代わりに元の配列の要素と同じ要素を含むシャローコピーを返します。
concat() メソッドは、元の配列のいずれかが疎配列であった場合には空のスロットを維持します。
concat() メソッドは汎用的です。 this 値は他の引数と同じように扱われます(ただし、先にオブジェクトに変換されます)。つまり、素のオブジェクトは直接結果の配列に追加され、 [Symbol.isConcatSpreadable] を持つ配列風オブジェクトは結果の配列に展開されます。
以下のコードは 2 つの配列を連結させます。
以下のコードは 3 つの配列を連結させます。
以下のコードは配列に値を連結させます。
以下のコードはネストした配列同士を連結させます。また、元の配列からの参照を保持しています。
concat は既定ですべての配列風オブジェクトを配列として扱いません。 Symbol.isConcatSpreadable が真値(true など)に設定された場合のみ、配列として扱います。
元の配列のいずれかが疎配列の場合、結果の配列も疎配列になります。
もし this の値が配列でなければ、オブジェクトに変換され、 concat() の引数と同じように扱われます。この場合、返値は常に新しい素の配列になります。
| ECMAScript® 2027 Language Specification # sec-array.prototype.concat |
Enable JavaScript to view this browser compatibility table.
This page was last modified on 2025年8月8日 by MDN contributors.
Your blueprint for a better internet.
Visit Mozilla Corporation’s not-for-profit parent, the Mozilla Foundation.
Portions of this content are ©1998–2026 by individual mozilla.org contributors. Content available under a Creative Commons license.