HOWTO · JavaScript
JavaScript で配列を文字列に変換する
この記事では、JavaScript で配列を文字列に変換するさまざまな方法を説明します。
このページの内容
配列は、日常のプログラミング生活で使用する可能性のある最も一般的で柔軟なデータ構造です。JavaScript プログラミング言語によって提供される配列メソッドがたくさんあるので、配列を操作したり、実行したい操作を簡単に実行したりできます。
同様に、配列を文字列に変換することも、事前定義されたメソッドを使用して、他のいくつかの方法に従って簡単に行うことができます。この記事では、配列データ構造全体(つまり、その配列内に存在するすべての要素)を単一の文字列に変換するさまざまな方法について説明します。
JavaScript で toString() メソッドを使用して配列を文字列に変換する
配列を文字列に変換する最も簡単な方法は、JavaScript で事前定義されたメソッド toString() を使用することです。このメソッドは、配列だけでなく、他のさまざまなデータ型でも機能します。toString() を使用すると、ほとんどすべてのものを文字列に変換できます。
以下に示すように、これを配列の最後に追加して、このメソッドを使用できます。その配列内のすべての要素を受け取り、それらを単一の文字列として連結します。
var arr = ['Google', 'is', 'no', '1', 'search engine'].toString();
console.log(arr);
出力:
"Google,is,no,1,search engine"
ここで、出力が表示されている場合、それは文字列ですが、コンマで区切られています。ここで、上記の文字列からコンマを削除する場合は、次のように replace() メソッドを使用できます。replace() メソッドは 2つのパラメーターを取ります。最初のパラメーターは、置き換える必要のある文字自体(この場合、/, で表されるコンマ)であり、2 番目のパラメーターは、文字を何に置き換えるか(この場合は空白)を決定します。/はエスケープ文字です。
arr.replace(/,/g, ' ')
出力:
"Google is no 1 search engine"
この場合、/g で表される文字列からすべてのコンマを削除します。
JavaScript の .join() メソッドを使用して配列の要素を結合する
配列を文字列に変換する別の方法は、join() メソッドを使用することです。このメソッドは、配列から各要素を取得し、一緒に文字列を形成します。ここで、toString() と同様の配列でこのメソッドを直接使用すると、コンマで区切られた文字列も生成されます。
ただし、ここでは、文字列内の要素を区切るパラメータとして他の区切り文字を直接渡すことができるため、replace() のような他のメソッドを使用する必要はありません。
var arr_1 = ['Google', 'is', 'no', '1', 'search engine'].join();
var arr_2 = ['Google', 'is', 'no', '1', 'search engine'].join('-');
var arr_3 = ['Google', 'is', 'no', '1', 'search engine'].join('##space##');
console.log(arr_1);
console.log(arr_2);
console.log(arr_3);
出力:
"Google,is,no,1,search engine"
"Google-is-no-1-search engine"
"Google##space##is##space##no##space##1##space##search engine"
JavaScript で JSON.stringify() を使用して配列を文字列に変換する
JSON.stringify() メソッドを使用すると、JavaScript オブジェクトまたは値を文字列に変換できます。これは、配列内の文字列を引用し、ネストされた配列を適切に処理するため、よりクリーンです。このメソッドは、次のように最大 3つのパラメーターを取ることができます。
JSON.stringify(value, replacer, space)
value パラメータは、文字列に変換する必要のある任意の値を取ります。このパラメーターを渡すには必須です。replacer は、文字列内のいくつかの要素を置き換えるために渡すことができる関数です。読みやすくするために出力文字列に空白を追加する場合は、space パラメーターを使用できます。これらのパラメータ、replacer と space はどちらもオプションです。
var arr = JSON.stringify(['Google', 'is', 'no', '1', 'search engine']);
console.log(arr);
出力:
"[\"Google\",\"is\",\"no\",\"1\",\"search engine\"]"
上記の例では、上記の出力が読み取れないため、必ず置換関数を使用する必要があります。JSON.stringify() メソッドは、配列の個々の要素を直接取得し、それらを構造を含む文字列に変換します。
JavaScript で配列を文字列に変換するために型強制を使用する
配列を文字列に変換する最後の方法は、型強制を使用することです。型強制は、値をある型から別の型に変換するプロセスです。JavaScript には、暗黙的強制と明示的強制の 2 種類の強制があります。
暗黙的な強制は、さまざまな型の値にさまざまな演算子(+、-、' '、/など)を適用する場合であり、明示的な強制は、String()、Number()などの関数を使用する場合です。など。両方の型強制の例を以下に示します。
var str_1 = ['This', 'is', 11, 'clock'] + '';
var str_2 = String(['This', 'is', 11, 'clock']);
console.log(str_1);
console.log(str_2);
出力:
This,is,11,clock
This,is,11,clock
str_1 は、2つの異なるタイプの値(1つは配列、もう 1つは文字列)の間で演算子を使用している暗黙の強制の例です。この操作の結果の出力は文字列です。str_2 は、配列全体を String() 関数内に渡して、配列を文字列に変換した明示的な強制の例です。