说明:RFC 1738做了硬性规定:“只有字母和数字[0-9a-zA-Z]、一些特殊符号"$-_.+!*'(),"[不包括双引号]、以及某些保留字,才可以不经过编码直接用于URL”。Javascript用于编码的函数,共有三个:
  • escape():最古老的一个,已不提倡使用
  • encodeURI():对"; / ? : @ & = + $ , #"这个特殊富豪不进行编码,编码后以utf-8形式输出,且在每个字节前加上%
  • encodeURIComponent():用于对URL的组成部分进行个别编码,而不用于对整个URL进行编码,且对以上符号也会编码