escape()
首先,escape()已经被废弃了,我们不应该再在新的代码中使用它,但是我们可能在维护旧代码时遇到它。所以需要了解 escape()主要用于对字特电进行编码,它会将所有非字母数字字特转换为它们的十六进制转义序列。
console.log(escape("Hello World! @*_+-./"));
// 输出: Hello%20World%21%20@*_+-./
encodeURI()
只会对参数进行转义
console.log(encodeURI("https://example.com/path?name=张三&age=18"));
// 输出: https://example.com/path?name=%E5%BC%A0%E4%B8%89&age=18
encodeURIComponent()
会对整个url进行转义
console.log(encodeURIComponent("https://example.com/path?name=张三&age=18"));
// 输出: https%3A%2F%2Fexample.com%2Fpath%3Fname%3D%E5%BC%A0%E4%B8%89%26age%3D18