JavaScriptで配列の各要素を文字列に変換するには、arrayオブジェクトの持つjoin()メソッドを使います。
join()メソッドの基本的な使い方
1 |
array.join("区切り文字"); |
join()メソッドは、配列の全要素を連結した文字列を返します。各要素は全て文字列に変換され、引数として要素を連結する区切り文字を指定することができます。
区切り文字を省略した場合は、カンマ(,)として見なされ、区切り文字に空文字を指定した場合、各要素は区切り文字なしで連結されます。
サンプル
次の例を見てみましょう。
1 2 3 4 5 6 7 8 9 10 11 12 13 |
var arr = ["太郎", "二郎", "三郎", "花子"]; //引数を省略 var str1 = arr.join(); alert(str1); //'太郎,二郎,三郎,花子' //区切り文字は"と" var str2 = arr.join("と"); alert(str3); //'太郎と二郎と三郎と花子' //区切り文字は空文字列 var str3 = arr.join(""); alert(str3); //'太郎二郎三郎花子' |
なお、配列の要素がnullあるいはundefinedの場合、空文字として扱われます。
要素が配列・オブジェクトであった場合
多重配列だった場合、ネストされた配列の要素も文字列に変換されます。
1 2 3 4 |
var arr = [["田中"], "太郎", "二郎", "三郎", "花子"]; var str4 = arr.join(); alert(str4); //田中,太郎,二郎,三郎,花子 |
また、配列の中身がオブジェクトであった場合は、[object Object]に変換されます。
1 2 3 4 |
var arr = [{"name":"田中"}, "太郎", "二郎", "三郎", "花子"]; var str5 = arr.join(); alert(str5); //[object Object],太郎,二郎,三郎,花子 |