>  기사  >  웹 프론트엔드  >  decodeURIComponent_javascript 팁을 사용하여 Javascript에서 Urlencode 인코딩 및 디코딩 방법

decodeURIComponent_javascript 팁을 사용하여 Javascript에서 Urlencode 인코딩 및 디코딩 방법

WBOY
WBOY원래의
2016-05-16 18:29:001013검색

ASP(Server.UrlEncode), PHP(urlencode()) 함수 또는 asp, php 등의 동적 언어를 통해 COOKIES에 직접 작성한 한자의 인코딩 결과를 JS로 읽어오면 인코딩이 발생하게 됩니다. 즉, 최종 문자열이 urlencode로 인코딩되어 클라이언트 측에서 JS의 데이터를 읽어야 하는 경우가 있습니다.

이 글에서는 js에서 이 문제를 시스템 자체 기능을 통해 어떻게 해결하는지 간략하게 설명하겠습니다.

이 문제를 겪은 친구들은 어느 정도 이해해야 한다고 생각합니다. 현재 이 문제를 해결하기 위해 vbscript(URLDecode()), javascript(UrlDecode( ))기다리다. 이 두 함수 중 어느 것도 asp(Server.UrlEncode) 및 php(urlencode())와 잘 통신할 수 없습니다.
vbscript(함수 URLDecode()) 및 javascript(함수 UrlDecode())에 대한 내용도 이 글의 마지막 부분에 재현됩니다.

이 글의 주인공은 javascript(UrlDecodedecodeURIComponent())입니다. 이 함수 이름은 너무 흔해서 개인적으로는 잘 이해가 안 되네요. 그리워요. 우연히 이 기능을 발견한 Worry!

인코딩 함수: encodeURIComponent()
디코딩 함수: decodeURIComponent()
decodeURIComponent() 구문

코드 복사 코드는 다음과 같습니다.

decodeURIComponent(URIstring)
매개변수: (URIstring)이 필요합니다. 인코딩된 URI 구성 요소 또는 디코딩할 기타 텍스트가 포함된 문자열입니다.
반환 값: 16진수 이스케이프 시퀀스가 ​​해당 시퀀스가 ​​나타내는 문자로 대체되는 URIstring의 복사본입니다.

예:
코드 복사 코드는 다음과 같습니다.

< ;script type="text/javascript">
var test1="Trouble";
var test2="Trouble"
document.write("인코딩(original=" test1 ") :" encodeURIComponent (test1) "
");
document.write("Decode (original =" test2 "): " decodeURIComponent(test2));



결과:
코드 복사 코드는 다음과 같습니다.

인코딩(original=Trouble):문제
디코딩(original=Trouble):문제


참고: 이 문서는 UTF-8 인코딩 환경에서만 테스트되었습니다. 왜냐하면 다른 인코딩 환경에서는 asp(Server.UrlEncode)의 컴파일된 코드가 다른 것처럼 보이고 테스트가 필요하기 때문입니다!
첨부된 재판본:
vbscript(function URLDecode())
코드 복사 코드는 다음과 같습니다.




javascript(함수 UrlDecode())其实还是柔和使用了vbscript,好image在javascript环境中,对于asc、hex、chr상关的转换,如 str.charCodeAt(0).toString(16 ) 及 String.fromCharCode(str) 는 동일하지 않습니다.复代码


代码如下:




javascript str2asc/asc2str




复代码

代码如下:




演示:







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