优选主流主机商
任何主机均需规范使用

JS字符串编码和解码方法

在JavaScript中,可以使用以下两个方法来进行字符串的编码和解码:

  1. encodeURIComponent()decodeURIComponent()
  • encodeURIComponent() 方法用于对整个URI(统一资源标识符)进行编码,其中除了字母、数字和特定的字符(- _ . ! ~ * ' ( ))之外的所有字符都会被替换为%xx的形式,其中xx是字符的十六进制ASCII码值。

示例:

var originalString = "Hello, 你好!";
var encodedString = encodeURIComponent(originalString);
console.log(encodedString); // 输出:Hello%2C%20%E4%BD%A0%E5%A5%BD%EF%BC%81

var decodedString = decodeURIComponent(encodedString);
console.log(decodedString); // 输出:Hello, 你好!
  1. encodeURI()decodeURI()
  • encodeURI() 方法用于对整个URI进行编码,但不包括特定字符如:/?#[]@!$&'()*+,;=。该方法通常用于编码URL而不影响主机部分,因此它在URL中保留了冒号、正斜杠和问号等字符。

示例:

var originalURL = "https://example.com/search?q=JavaScript编码";
var encodedURL = encodeURI(originalURL);
console.log(encodedURL); // 输出:https://example.com/search?q=JavaScript%E7%BC%96%E7%A0%81

var decodedURL = decodeURI(encodedURL);
console.log(decodedURL); // 输出:https://example.com/search?q=JavaScript编码

需要注意的是,以上方法只能进行单层的编码和解码操作。如果需要进行多层次的编码或解码,可以使用上述方法的组合,或者借助第三方库如querystringURLSearchParams来处理更复杂的情况。

未经允许不得转载:搬瓦工中文网 » JS字符串编码和解码方法