Jawaban:
Anda dapat melakukan ini dalam JavaScript biasa, gunakan Array.prototype.join
:
arrayName.join(delimiter)
Saya tidak tahu fungsi jQuery yang lebih baik.
Array.join
adalah apa yang Anda butuhkan, tetapi jika Anda suka, orang-orang yang ramah di phpjs.org telah membuatkan implode
untuk Anda.
Kemudian beberapa topik yang agak off mengomel. Seperti yang ditunjukkan @jon_darkstar, jQuery adalah JavaScript dan bukan sebaliknya. Anda tidak perlu tahu JavaScript untuk bisa memahami cara menggunakan jQuery, tetapi tentu saja tidak ada salahnya dan begitu Anda mulai menghargai penggunaan kembali atau mulai melihat gambar yang lebih besar Anda benar-benar perlu mempelajarinya.
Untuk referensi di masa mendatang, jika Anda ingin meniru perilaku PHP implode()
ketika tidak ada pembatas yang ditentukan (secara harfiah cukup gabungkan potongan-potongan itu), Anda perlu memasukkan string kosong ke Javascript join()
jika tidak defaultnya menggunakan koma sebagai pembatas:
var bits = ['H', 'e', 'l', 'l', 'o', ' ', 'W', 'o', 'r', 'l', 'd'];
alert(bits.join()); // H,e,l,l,o, ,W,o,r,l,d
alert(bits.join('')); // Hello World
Gunakan metode join () membuat dan mengembalikan string baru dengan menggabungkan semua elemen dalam sebuah array.
Contoh kerja
var arr= ['A','b','C','d',1,'2',3,'4'];
var res= arr.join('; ')
console.log(res);
Kita dapat membuat alternatif implode dalam 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
konstruktor alih-alih literal tidak perlu dilakukan secara verbal. Jika Anda ingin membuat ulang fungsi implode, hal yang cerdas adalah membungkus metode join built-in dengan fungsi Anda sendiri. Yang lebih cerdas adalah mempelajari bahasa tempat Anda pemrograman.
array.join
tidak mengenali ";" bagaimana pemisah, tetapi menggantinya dengan koma. Menggunakan jQuery, Anda dapat menggunakan $.each
untuk memasukkan array (Perhatikan bahwa output_saved_json adalah array dan tmp adalah string yang akan menyimpan array yang meledak):
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
Saya telah menggunakan substring untuk menghapus yang terakhir ";" ditambahkan di final tanpa perlu. Tetapi jika Anda mau, Anda bisa menggunakan substring
sesuatu seperti:
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;
Saya pikir solusi terakhir ini lebih lambat dari yang pertama karena perlu memeriksa apakah indeks berbeda dari panjang array setiap kali sementara $.each
tidak berakhir.
your_array.join(';')