js字符串三个编码的区别

1、escape():编码目的为了防止字符串中特殊字符造成运算错误,主要在字符串运算中使用;

不进行编码的69个字符:A-Z、a-z、0-9、@、*、_、+、-、.、。

2、encodeURI(): 编码目的为了防止字符串中特殊字符造成URI传递错误,主要在URI跳转中使用;

不进行编码的82个字符:A-Z、a-z、0-9、;、?、:、&、@、=、$、,、#、-、~、!、‘、*、_、+、.、/、(、)。

3、encodeURIComponent():编码目的为了防止字符串中特殊字符造成URI参数的读取错误,主要在URI的参数传递使用;

不进行编码的71个字符:A-Z、a-z、0-9、-、~、!、'、*、_、.、(、)。

原文地址:https://www.cnblogs.com/detanx/p/jsString.html