escape()

已棄用:此特性不再推薦。雖然某些瀏覽器可能仍然支援它,但它可能已經從相關的網路標準中刪除,可能正在刪除過程中,或者可能僅為相容性目的而保留。請避免使用它,如果可能,請更新現有程式碼;請參閱本頁底部的相容性表格以指導您的決策。請注意,此特性可能隨時停止工作。

注意: escape() 是瀏覽器實現的非標準函式,僅為跨引擎相容性而標準化。它並非所有 JavaScript 引擎都必須實現,並且可能無法在所有地方都工作。如果可能,請使用 encodeURIComponent()encodeURI()

escape() 函式會計算一個新字串,其中某些字元已被十六進位制轉義序列替換。

語法

js
escape(str)

引數

str

要編碼的字串。

返回值

一個新字串,其中某些字元已被轉義。

描述

escape() 是全域性物件的一個函式屬性。

escape() 函式將所有字元替換為轉義序列,除了 ASCII 單詞字元(A-Z、a-z、0-9、_)和 @\*_+-./。字元透過 UTF-16 碼元進行轉義。如果碼元的值小於 256,則以 %XX 格式的兩位十六進位制數表示,必要時左側用 0 填充。否則,它以 %uXXXX 格式的四位十六進位制數表示,必要時左側用 0 填充。

注意: 此函式主要用於百分號編碼,並部分基於 RFC 1738 中的轉義格式。此轉義格式不是字串字面量中的轉義序列。您可以將 %XX 替換為 \xXX,將 %uXXXX 替換為 \uXXXX 以獲得包含實際字串字面量轉義序列的字串。

示例

使用 escape()

js
escape("abc123"); // "abc123"
escape("äöü"); // "%E4%F6%FC"
escape("ć"); // "%u0107"

// special characters
escape("@*_+-./"); // "@*_+-./"

規範

規範
ECMAScript® 2026 語言規範
# sec-escape-string

瀏覽器相容性

另見