首頁 >web前端 >js教程 >如何在 JavaScript 中就地反轉字串?

如何在 JavaScript 中就地反轉字串?

Linda Hamilton
Linda Hamilton原創
2024-12-15 16:25:15736瀏覽

How to Reverse a String In-Place in JavaScript?

JavaScript 中的就地字串反轉

在JavaScript 中處理字串時,可能存在需要反轉字串的情況-place 不依賴.reverse() 或.charAt() 等內建函數。這可以透過將字串傳遞給帶有 return 語句的函數來實現。

就地反轉字串:

  • 轉換為陣列:使用 split('') 函數將字串轉換為字元陣列。
  • 反轉陣列: 對結果陣列使用reverse() 方法來反轉字元的順序。
  • 連接陣列: 最後,使用 join('') 函數連接將字元反轉回字串。

示例1(ASCII字符):

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

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

示例2(Unicode 支持):

對於包含多位元組字元(例如UTF-16)的字串,a需要支援Unicode的解決方案。

  • 使用陣列擴充運算子: ... 運算子(擴充運算子)建立一個包含單一字元的新陣列。這支援 Unicode 字元並產生有效的 unicode 字串。
function reverse(s) {
    return [...s].reverse().join("");
}
  • 使用Unicode 標誌分割: 或者,您可以將split() 與u (Unicode) 一起使用flag 作為分隔符,也支援Unicode 字符。
function reverse(s) {
    return s.split(/(?:)/u).reverse().join("");
}

透過實作這些解決方案,您可以在函數內有效地就地反轉字串,無論使用什麼字元集。

以上是如何在 JavaScript 中就地反轉字串?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn