>  기사  >  웹 프론트엔드  >  JavaScript_javascript 기술의 URL 인코딩 함수 코드

JavaScript_javascript 기술의 URL 인코딩 함수 코드

WBOY
WBOY원래의
2016-05-16 18:12:16747검색

다음은 변수값의 URL 인코딩을 요약한 것입니다. encodeURIComponent() 사용을 권장하며, GET, POST 메소드 모두 전송 가능합니다.

JavaScript에서 URL 문자열을 인코딩하는 방법에는 escape(), encodeURI() 및 encodeURIComponent() 등 여러 가지가 있습니다. 이러한 인코딩은 서로 다른 역할을 합니다.

escape() 메서드:
ISO 라틴 문자 집합을 사용하여 지정된 문자열을 인코딩합니다. 모든 공백, 구두점, 특수 문자 및 기타 비ASCII 문자는 %xx 형식의 문자 인코딩으로 변환됩니다(xx는 문자 집합 테이블에 있는 문자 인코딩의 16진수와 동일합니다). 예를 들어 공백 문자에 해당하는 인코딩은 입니다.
이 메소드로 인코딩되지 않는 문자: @ * /

encodeURI() 메소드:
UTF-8 인코딩 형식을 사용하여 URI 문자열을 이스케이프 형식으로 변환합니다. .
이 방법으로 인코딩되지 않는 문자: ! @ # $& * ( ) = : / ? '

encodeURIComponent() 방법:
URI 문자열 변환 UTF-8 인코딩 형식을 사용하여 이스케이프 형식의 문자열로 변환합니다. encodeURI()와 비교하여 이 메서드는 / 및 기타 문자와 같은 더 많은 문자를 인코딩합니다. 따라서 문자열에 URI의 여러 부분이 포함되어 있으면 이 방법을 사용하여 인코딩할 수 없습니다. 그렇지 않으면 / 문자가 인코딩된 후 URL에 오류가 표시됩니다.
이 방법으로 인코딩되지 않는 문자: ! * ( ) '
따라서 중국어 문자열의 경우 문자열 인코딩 형식을 UTF-8 형식(예: 원본 페이지 및 target 페이지의 문자셋이 일치하는 경우) Escape만 사용하면 됩니다. 페이지가 GB2312 또는 기타 인코딩이고 매개변수를 허용하는 페이지가 UTF-8로 인코딩된 경우 encodeURI 또는 ​​encodeURIComponent를 사용해야 합니다.

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.