使用 javascript 对 URI 进行转义

文章目录

    escape, encodeURI, encodeURIComponent 的区别

    escape 已经废弃使用。

    encodeURI 是对整个 URL 进行转义。

    encodeURIComponent 是对作为参数值的字符串进行转义。
    encodeURI 不对以下字符进行转义 “:”, “/”, “;”, “?”. 需要使用 encodeURIComponent 对这些字符进行转义.

    > var s = "http://sunzhongwei.com/nice wiki";
    
    > encodeURI(s)
    "http://sunzhongwei.com/nice%20wiki"
    
    > encodeURIComponent(s)
    "http%3A%2F%2Fsunzhongwei.com%2Fnice%20wiki"
    
    > escape(s)
    "http%3A//sunzhongwei.com/nice%20wiki"
    

    参考