• JS 中的编码和解码(encode和decode)


    JS 中对于文字的编码和解码,涉及3个函数:

      1. escape()和unescape()方法

        escape() 方法能够把 ASCII 之外的所有字符转换为 %xx 或 %uxxxx(x表示十六进制的数字)的转义序列。从 u000 到 u00ff 的 Unicode 字符由转义序列 %xx 替代,其他所有 Unicode 字符由 %uxxxx 序列替代。

        escape ("字符串")  // 编码

        unescape ("字符串")  //  解码

      2.encodeURI() 和 decodeURI() 方法

        ECMAScript v3.0 版本推荐使用 encodeURI() 和 encodeURIComponent() 方法代替 escape() 方法,使用 decodeURI() 和 decodeURIComponent() 方法代替 unescape() 方法。

        encodeURI (URIstring)  // 编码

        decodeURI (URIstring)  //  解码

      3.encodeURICompoent() 和 decodeURICompoent()

        encodeURICompoent() 与 encodeURI() 方法不同。它们的主要区别在于,encodeURICompoent() 方法假定参数是 URI 的一部分,例如,协议、主机名、路径或查询字符串。因此,它将转义用于分隔 URI 各个部分的标点符号。而 encodeURI() 方法仅把它们视为普通的 ASCII 字符,并没有转换。

        encodeURIComponent (URIstring)  // 编码

        decodeURIComponent (URIstring)  // 解码

    总结:

      总的来说,转换普通字符串(不包含 / ? = 这类的符号)时,推荐使用方法2,转换URL中的包含 / = ? 这类符号的字符串,推荐使用方法3。

        

  • 相关阅读:
    [CTSC2018]暴力写挂
    【bzoj 2870】 最长道路tree
    [CTSC2010]珠宝商
    [JXOI2018]守卫
    [JXOI2018]排序问题
    [AHOI2014/JSOI2014]骑士游戏
    [SNOI2017]遗失的答案
    【LGP5437】【XR-2】约定
    【LGP5349】幂
    hdu-2688 Rotate---树状数组+模拟
  • 原文地址:https://www.cnblogs.com/panic404/p/13031709.html
Copyright © 2020-2023  润新知