joinメソッド
メソッドjoinは、配列の要素を指定された区切り文字で文字列に結合します(区切り文字は配列要素の間に挿入されます)。
区切り文字はメソッドのパラメータで指定され、必須ではありません。指定されなかった場合、デフォルトではカンマが区切り文字として使用されます。
区切り文字なしで配列要素を結合したい場合は、空の文字列''を指定してください。
構文
配列.join([区切り文字]);
例
ある配列があるとします。この配列の要素を区切り文字'-'で結合してみましょう:
let arr = [1, 2, 3];
let str = arr.join('-');
console.log(str);
コードの実行結果:
'1-2-3'
例
次に、区切り文字を指定せず、デフォルトでカンマが区切り文字となる場合を見てみましょう:
let arr = [1, 2, 3];
let str = arr.join();
console.log(str);
コードの実行結果:
'1,2,3'
例
区切り文字なしで配列要素を結合してみましょう:
let arr = [1, 2, 3];
let str = arr.join('');
console.log(str);
コードの実行結果:
'123'
例 . 応用
文字列の文字を逆順に並べ替えてみましょう。
そのためには、splitメソッドと区切り文字''を使って文字列を配列に分割します(この区切り文字は文字列の各文字を個別の配列要素にします)。
次に、reverseメソッドでこの配列を反転させ、joinメソッドで反転した配列を結合します:
let str = '123456789';
let arr1 = str.split('');
let arr2 = arr1.reverse();
let res = arr2.join('');
console.log(res);
コードの実行結果:
'987654321'
例 . 応用
前の問題の解決法を簡略化し、すべてのメソッドをチェーンでつなげてみましょう:
let str = '123456789';
let res = str.split('').reverse().join('');
console.log(res);
コードの実行結果:
'987654321'
例 . 応用
'2025-12-31'形式の日付があるとします。
これを'31.12.2025'形式に変換してみましょう。
そのためには、splitメソッドで文字列を配列に分割し、reverseメソッドでこの配列を反転させ、joinメソッドで反転した配列を結合します:
let date = '2025-12-31';
let res = date.split('-').reverse().join('.');
console.log(res);
コードの実行結果:
'31.12.2025'