JavaScript : Escape (), encodeuri () 및 encodeUricomponent ()에서 URL 문자열을 인코딩하는 몇 가지 방법이 있습니다. 이 인코딩의 역할은 다양합니다.
탈출 () 메소드 :
지정된 문자열은 ISO 라틴 문자 세트를 사용하여 인코딩됩니다. 모든 공간 문자, 구두점 마크, 특수 문자 및 기타 비 ASCII 문자는 %XX 형식 문자 인코딩으로 변환됩니다 (XX는 문자 세트 테이블에 인코딩 된 16 진수와 같습니다). 예를 들어, 공간 문자의 해당 인코딩은 %20입니다.
이 방법으로 인코딩되지 않는 문자 : @ * / +
encodeuri () 메소드 :
URI 문자열을 UTF-8 인코딩 형식으로 탈출 형식 문자열로 변환하십시오.
이 방법으로 인코딩되지 않는 문자 :! @ # $ & * () = : /; ? + '
encodeUricOComponent () 메소드 :
URI 문자열을 UTF-8 인코딩 형식으로 탈출 형식 문자열로 변환하십시오. encodeuri ()와 비교 하여이 메소드는 / 등과 같은 더 많은 문자를 인코딩합니다. 따라서 문자열에 URI의 여러 부분이 포함 된 경우이 메소드를 사용하여 인코딩하는 데 사용할 수 없습니다. 그렇지 않으면 / 문자가 인코딩 된 후 URL이 오류를 표시합니다.
이 방법으로 인코딩되지 않는 문자 :! * () ''
따라서 중국 문자열의 경우 문자열 인코딩 형식을 UTF-8 형식으로 변환하지 않으려면 (예 : 원본 페이지의 숯이 동일 할 때) 탈출 만 사용하면됩니다. 페이지가 GB2312 또는 기타 인코딩이고 매개 변수를 허용하는 페이지가 UTF-8 인코딩 인 경우 Encodeuri 또는 EncodeUricomponent를 사용해야합니다.
또한, Encodeuri/EncodeUricomponent는 JavaScript 1.5 이후에 소개되었으며 Escape는 JavaScript 1.0 버전으로 제공되었습니다.