回答:
プレーンなJavaScriptでこれを行うことができますArray.prototype.join
:
arrayName.join(delimiter)
私はもっと良いjQuery関数を知りません。
Array.join
が必要ですが、必要に応じて、phpjs.orgのフレンドリーな人々が作成implode
してくれます。
次に、若干の話題から外れた発言。@jon_darkstarがすでに指摘したように、jQueryはJavaScriptであり、その逆はありません。jQueryの使用方法を理解するためにJavaScriptを理解する必要はありませんが、確かに害はありません。再利用性を高く評価し始めたり、全体像を見始めたら、絶対に学ぶ必要があります。
join()メソッドを使用すると、配列内のすべての要素を連結して新しい文字列を作成して返します。
実施例
var arr= ['A','b','C','d',1,'2',3,'4'];
var res= arr.join('; ')
console.log(res);
JavaScriptでの内破の代替を作成できます。
function my_implode_js(separator,array){
var temp = '';
for(var i=0;i<array.length;i++){
temp += array[i]
if(i!=array.length-1){
temp += separator ;
}
}//end of the for loop
return temp;
}//end of the function
var array = new Array("One", "Two", "Three");
var str = my_implode_js('-',array);
alert(str);
Array
リテラルの代わりにコンストラクタを使用すると、不必要に冗長になります。内破する関数を再作成したい場合は、組み込みの結合メソッドを独自の関数でラップするのが賢明です。賢く事はあなたがプログラミングしている言語を学ぶことです。
array.join
「;」を認識していなかった 区切り記号ですが、コンマに置き換えます。jQueryを使用$.each
すると、配列を分解するために使用できます(output_saved_jsonは配列で、tmpは分解された配列を格納する文字列です)。
var tmp = "";
$.each(output_saved_json, function(index,value) {
tmp = tmp + output_saved_json[index] + ";";
});
output_saved_json = tmp.substring(0,tmp.length - 1); // remove last ";" added
サブストリングを使用して最後の「;」を削除しました 決勝で必要なく追加。ただし、必要に応じて、代わりにsubstring
次のようなものを使用できます。
var tmp = "";
$.each(output_saved_json, function(index,value) {
tmp = tmp + output_saved_json[index];
if((index + 1) != output_saved_json.length) {
tmp = tmp + ";";
}
});
output_saved_json = tmp;
この最後の解決策は、インデックスが$.each
終了しないうちに毎回配列の長さと異なるかどうかをチェックする必要があるため、最初の解決策よりも遅いと思います。
your_array.join(';')