--- title: Array.prototype.join() slug: Web/JavaScript/Reference/Global_Objects/Array/join tags: - Array - JavaScript - Join - Method - Prototype - Reference - メソッド translation_of: Web/JavaScript/Reference/Global_Objects/Array/join --- <div>{{JSRef}}</div> <p><span class="seoSummary"><code><strong>join()</strong></code> メソッドは、配列 (または<a href="/ja/docs/Web/JavaScript/Guide/Indexed_collections#Working_with_array-like_objects">配列風オブジェクト</a>) の全要素を順に連結した文字列を新たに作成して返します。区切り文字はカンマ、または指定された文字列です。配列にアイテムが一つしかない場合は、区切り文字を使用せずにアイテムが返されます。</span></p> <div>{{EmbedInteractiveExample("pages/js/array-join.html")}}</div> <p class="hidden">このデモのソースファイルは GitHub リポジトリに格納されています。デモプロジェクトに協力したい場合は、 <a href="https://github.com/mdn/interactive-examples">https://github.com/mdn/interactive-examples</a> をクローンしてプルリクエストを送信してください。</p> <h2 id="Syntax" name="Syntax">構文</h2> <pre class="syntaxbox notranslate"><var>arr</var>.join([<var>separator</var>])</pre> <h3 id="Parameters" name="Parameters">引数</h3> <dl> <dt><code><var>separator</var></code> {{optional_inline}}</dt> <dd>配列の各要素を区切る文字列を指定します。 separator は、必要であれば文字列に変換されます。省略した場合、配列の要素はカンマ (",") で区切られます。 <code>separator</code> に空文字列を渡した場合、すべての要素の間が区切り文字無しで繋がれます。</dd> </dl> <h3 id="Return_value" name="Return_value">返値</h3> <p>配列の全要素が連結された文字列です。 <code><em>arr</em>.length</code> が <code>0</code> だった場合、空の文字列が返されます。</p> <h2 id="Description" name="Description">解説</h2> <p>配列のすべての要素を文字列に変換したものが、1 個の文字列に繋がれます。</p> <div class="warning"> <p>要素が <code>undefined</code> または <code>null</code> または空配列 <code>[]</code> であった場合は、空の文字列に変換されます。</p> </div> <h2 id="Examples" name="Examples">例</h2> <h3 id="Joining_an_array_three_different_ways" name="Joining_an_array_three_different_ways">3 通りの異なる形で配列をつなぐ</h3> <p>以下の例は、3 個の要素を持つ配列 <code>a</code> を作成し、デフォルト引数、カンマとスペース、そして「と」と空文字を使った 4 パターンの結合を行っています。</p> <pre class="brush: js notranslate">var a = ['風', '水', '火']; a.join(); // '風,水,火' a.join(', '); // '風, 水, 火' a.join(' + '); // '風 + 水 + 火' a.join(''); // '風水火'</pre> <h3 id="Joining_an_array-like_object" name="Joining_an_array-like_object">配列風オブジェクトを連結する</h3> <p>次の例は<font face="Arial, x-locale-body, sans-serif"><span style="background-color: #ffffff;">、</span></font>配列風オブジェクト ( <code><a href="/ja/docs/Web/JavaScript/Reference/Functions/arguments">arguments</a></code> )を連結するために、 <code>Array.prototype.join</code> を {{jsxref("Function.prototype.call")}} を使用して呼び出します。</p> <pre class="brush: js notranslate">function f(a, b, c) { var s = Array.prototype.join.call(arguments); console.log(s); // '<span class="message-body-wrapper"><span class="message-flex-body"><span class="devtools-monospace message-body"><span class="objectBox objectBox-string">1,a,true'</span></span></span></span> } f(1, 'a', true); //expected output: "1,a,true" </pre> <h2 id="Specifications" name="Specifications">仕様書</h2> <table class="standard-table"> <thead> <tr> <th scope="col">仕様書</th> </tr> </thead> <tbody> <tr> <td>{{SpecName('ESDraft', '#sec-array.prototype.join', 'Array.prototype.join')}}</td> </tr> </tbody> </table> <h2 id="Browser_compatibility" name="Browser_compatibility">ブラウザーの互換性</h2> <div class="hidden">このページの互換性一覧表は構造化データから生成されています。データに協力していただけるのであれば、 <a class="external" href="https://github.com/mdn/browser-compat-data">https://github.com/mdn/browser-compat-data</a> をチェックアウトしてプルリクエストを送信してください。</div> <p>{{Compat("javascript.builtins.Array.join")}}</p> <h2 id="See_also" name="See_also">関連情報</h2> <ul> <li>{{jsxref("String.prototype.split()")}}</li> <li>{{jsxref("Array.prototype.toString()")}}</li> <li>{{jsxref("TypedArray.prototype.join()")}}</li> </ul>