이 름 : 바다아이
|
조회수 : 10864
짧은 주소 : https://www.bada-ie.com/su/?251591777646
javascript 에서 encoding, decoding 하는 함수는 다음과 같다.
escape <-> unescapeencodeURI <-> decodeURIencodeURIComponent <-> decodeURIComponent
위 함수들은 각각 문자열을 부호화 하거나 부호화된 문자열을 되돌리는 함수이다.
기본적으로 javascript에 내장되어 있다.
각각 부호화 하는 범위가 다르기 때문에 상황에 맞게 적절히 사용하는 것을 권장한다.
escape
사용방법 : escape("문자열");
- 문자열의 각 문자들을 '%16진수코드값' 형태로 변환
- 1바이트 문자는 '%XX' 형태로 표시
- 영문 알파벳과, 숫자, 일부 특수문자(@, *, -, _, +, ., /)를 제외 문자만 인코딩
- 한글이 깨지는 것을 방지하기 위하여 사용
- 한글, 한자등(2바이트)은 '%u16진수4자리'로 표시
unescape
사용방법 : unescape("%16진수코드값");
- 코드값에 맞는 문자로 변환 (escape 로 변환된 코드값만 문자로 변환)
encodeURI
사용방법 : encodeURI(uri);
- 인터넷 주소에 사용되는 일부 특수문자(:, ;, /, =, ?, & 등)를 제외 문자만 인코딩
- 보통 인터넷 주소의 파라미터 전체를 인코딩할 때 사용
decodeURI
사용방법 : decodeURI(encodedURI로 인코딩 한 문자열);
- encodeURI 로 인코딩한 값을 다시 원래대로 디코딩
encodeURIComponent
사용방법 : encodeURIComponent(url 전체);
- encodeURI이 제외한 일부 특수문자까지도 인코딩
- url 전체(인터넷 주소 전체)가 파라미터로 전송될 경우 사용가능
decodeURIComponent
사용방법 : decodeURIComponent(decodeURIComponent로 인코딩 한 문자열);
- encodeURIComponent 로 인코딩한 값을 다시 원래대로 디코딩
페이지의 charset 이 다를 경우 한글이 특히 깨지는 경우에 위의 함수들을 각각 성격에 맞게 사용하면 될 것 같다.
단순하게 한글만을 위해서는 escape를 사용하면 되겠다.
encodeURI 를 사용해도 큰 문제는 없다.
url의 파라미터 전체를 전송할 경우에는 encodeURI 사용하는것이 좋다.
url 자체가 파라미터로 들어가게 된다면 encodeURIComponent 를 사용해야 한다.
출처: http://cofs.tistory.com/310
|
|
번 호
카테고리
제 목
이름
조회수
Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ Ubuntu + GoLang + PostgreSQL + Mariadb ]
서버위치 : 오라클 클라우드 춘천 실행시간 : 0.06057 초 to webmaster... gogo sea. gogo sea.