Rumah >hujung hadapan web >tutorial js >Bagaimana untuk Membalikkan Rentetan Di Tempat dalam JavaScript?

Bagaimana untuk Membalikkan Rentetan Di Tempat dalam JavaScript?

Linda Hamilton
Linda Hamiltonasal
2024-12-15 16:25:15731semak imbas

How to Reverse a String In-Place in JavaScript?

Pembalikan Rentetan Di Tempat dalam JavaScript

Apabila bekerja dengan rentetan dalam JavaScript, mungkin terdapat situasi di mana anda perlu membalikkan rentetan dalam -tempat tanpa bergantung pada fungsi terbina dalam seperti .reverse() atau .charAt(). Ini boleh dicapai apabila rentetan dihantar ke fungsi dengan pernyataan pulangan.

Untuk membalikkan rentetan di tempat:

  • Tukar kepada Tatasusunan: Gunakan fungsi split('') untuk menukar rentetan kepada tatasusunan aksara.
  • Terbalikkan Tatasusunan: Gunakan kaedah reverse() pada tatasusunan yang terhasil untuk menterbalikkan susunan aksara.
  • Sertai Tatasusunan: Akhir sekali, gunakan fungsi join('') untuk menggabungkan terbalikkan aksara kembali ke dalam rentetan.

Contoh 1 (ASCII Aksara):

function reverse(s) {
    return s.split("").reverse().join("");
}

const original = "Hello";
const reversed = reverse(original);
console.log(reversed); // "olleH"

Contoh 2 (Sokongan Unikod):

Untuk rentetan yang mengandungi aksara berbilang bait (cth., UTF-16), a Penyelesaian sedar Unikod diperlukan.

  • Gunakan Pengembangan Tatasusunan Operator: Operator ... (pengendali penyebaran) mencipta tatasusunan baharu dengan aksara individu. Ini menyokong aksara Unicode dan menghasilkan rentetan unikod yang sah.
function reverse(s) {
    return [...s].reverse().join("");
}
  • Pisah dengan Bendera Unicode: Sebagai alternatif, anda boleh menggunakan split() dengan u (Unicode) bendera sebagai pemisah, yang juga menyokong Unicode aksara.
function reverse(s) {
    return s.split(/(?:)/u).reverse().join("");
}

Dengan melaksanakan penyelesaian ini, anda boleh membalikkan rentetan secara berkesan di tempat dalam fungsi, tanpa mengira set aksara yang digunakan.

Atas ialah kandungan terperinci Bagaimana untuk Membalikkan Rentetan Di Tempat dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn