js轉碼方法

我超凶的發表於2024-09-03

專案開發傳參時會遇到用漢字或者特殊字元當做引數值的情況,這時需要轉碼一下才能正常傳參,不然會因為不支援漢字而報錯

轉碼方法共有三種:

escape()
encodeURI()
encodeURIComponent()

前兩種不過多討論,因為encodeURIComponent()能夠正確處理更多的特殊字元,並確保整個 URI 都得到正確的編碼,因此encodeURIComponent()使用的地方也是最多的。

例子:

能夠很明顯的看出來,encodeURIComponent()轉碼最為徹底,而想要解碼,也很簡單,使用 decodeURIComponent()就行。

例子:

下面是encodeURIComponent()的詳細功能:
功能:encodeURIComponent() 用於編碼 URI 中的組成部分,將字串轉換為適合在 URI 中傳輸的形式,使用 UTF-8 編碼。與 encodeURI() 不同,它會對 URI 中的更多字元進行編碼,包括 URI 中的一些特殊字元。
不支援編碼的字元:這些字元包括 !、'、(、)、*、-、.、_、~ 以及所有的數字和字母(0-9、a-z、A-Z)。

相關文章