• Difference between escape(), encodeURI(), encodeURIComponent()


    Difference between escape(), encodeURI(), encodeURIComponent()

    回答1

    For the visually minded, here's a table showing the effects of encodeURI(), encodeURIComponent() and escape() on the commonly-used symbolic ASCII characters:

    Char  encUrI  encURIComp  escape
    *     *       *           *
    .     .       .           .
    _     _       _           _
    -     -       -           -
    ~     ~       ~           %7E
    '     '       '           %27
    !     !       !           %21
    (     (       (           %28
    )     )       )           %29
    /     /       %2F         /
    +     +       %2B         +
    @     @       %40         @
    ?     ?       %3F         %3F
    =     =       %3D         %3D
    :     :       %3A         %3A
    #     #       %23         %23
    ;     ;       %3B         %3B
    ,     ,       %2C         %2C
    $     $       %24         %24
    &     &       %26         %26
          %20     %20         %20
    %     %25     %25         %25
    ^     %5E     %5E         %5E
    [     %5B     %5B         %5B
    ]     %5D     %5D         %5D
    {     %7B     %7B         %7B
    }     %7D     %7D         %7D
    <     %3C     %3C         %3C
    >     %3E     %3E         %3E
    "     %22     %22         %22
         %5C     %5C         %5C
    |     %7C     %7C         %7C
    `     %60     %60         %60
    

    Another vital difference is that unescape() does not handle multi-byte UTF-8 sequences whereas decodeURI[Component]() does:

    decodeURIComponent("%C3%A9") == "é"
    unescape("%C3%A9") == "é"
    

    回答2

    • escape — broken, deprecated, do not use
    • encodeURI — encodes characters that are not allowed (raw) in URLs (use it to fix up broken URIs if you can't fix them beforehand)
    • encodeURIComponent — as encodeURI plus characters with special meaning in URIs (use it to encode data for inserting into a URI)
  • 相关阅读:
    PKU1008
    PKU 1007
    PKU 3983
    PKU 1005
    PKU1004
    PKU 1003解题
    new.target
    debugger 关键字
    React 高阶组件
    CSS|规范
  • 原文地址:https://www.cnblogs.com/chucklu/p/15219568.html
Copyright © 2020-2023  润新知