• escape、encodeURI 、encodeURIComponent 编码与解码


    JS escape、encodeURI 、encodeURIComponent 编码与解码

    本文讨论如何对传递参数用JS编码与解码

    1:编码与解码方法的对应关系

    escape -----------------------------------------------------unescape

    encodeURI -------------------------------------------------decodeURI

    encodeURIComponent -----------------------------------encodeURIComponent

    2:解码与编码方法用法

    如var value1=escape('1²');  var getValue1=unescape(value1);  encodeURI ,decodeURI,encodeURIComponent ,encodeURIComponent 用法和escape,unescape用法都是一样的。

    3:三种编码方法的区别和联系

    编码方式:encodeURI ,encodeURIComponent 都是采用UTF-8进行对参数编码,而escape 则不是。

    不会被编码的字符:encodeURI 不对:":"、"/"、";" 和 "?"字符进行编码。

    用法场合:escape 不对URL进行编码,如果要对URL进行编码,应该使用encodeURI 或者encodeURIComponent ,对应的解码方法也是这样。

    推荐使用的方法顺序:encodeURIComponent --encodeURI --escape 。

    注意:用encodeURIComponent 、encodeURI 在前台编码后的字符串,可以直接在后台用Java解码的方式URLDecoder.decode(val,"UTF-8");进行解码,原因是这两个方法本身就是以UTF-8进行编码的。用起来很方便。

  • 相关阅读:
    微信Jssdk 认证签名
    枚举的变换
    mysql 事务
    Java中的堆和栈
    mysql-索引
    mysql-事务隔离 为什么你改了我还看不见
    mysql 一次更新语句是如何执行的
    mysql-一条sql的执行过程
    随笔
    设计模式之装饰者
  • 原文地址:https://www.cnblogs.com/feb9903/p/5044478.html
Copyright © 2020-2023  润新知