잠시만 기다려 주세요

HOME   |  여기는?   |  바다물때표   |  여러가지 팁 (829)  |  추천 및 재미 (93)  |  자료실 (18)  |  끄적거림 (474)  |  시나리오 (760)  |  드라마 대본 (248)  |  

2020년 01월 28일
술을 이기려 하지 마라. 그의 강함을 인정하고 그저 겸손해 져라. 너의 이성은 그 앞에선 단지, 지푸라기 하나에 지나지 않다. - 바다아이
 




    javascript/jquery

javascript/jquery - 자바스크립트 url encode decode 하기, 인코딩, 디코딩, javascript 한글 깨짐
이 름 : 바다아이   |   조회수 : 2474         짧은 주소 : https://www.bada-ie.com/su/?81523141533
javascript 에서 encoding, decoding 하는 함수는 다음과 같다.

escape <-> unescape

encodeURI <-> decodeURI

encodeURIComponent <-> 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
| |


      1 page / 3 page
번 호 카테고리 제 목 이름 조회수
73 javascript/jquery , cookie class 바다아이 324
72 javascript/jquery select 3 바다아이 542
71 javascript/jquery , ... 바다아이 1112
70 javascript/jquery , timezone, , ... moment.js 바다아이 1102
69 javascript/jquery textarea cursor . focus, cursor ... 바다아이 1176
68 javascript/jquery (block) , ... 바다아이 1147
67 javascript/jquery textarea cursor , , focus 바다아이 1403
66 javascript/jquery jquery ajax option .... 바다아이 1287
65 javascript/jquery jquery open api , ajax JSONP cross domain , , error 0 ... sop 바다아이 1329
64 javascript/jquery javascript , , , , () 바다아이 1402
63 javascript/jquery javascript (date ) 바다아이 1490
62 javascript/jquery CSS3 javascript 바다아이 1539
61 javascript/jquery javascript , cookie, , , , , 바다아이 1584
60 javascript/jquery javascript 바다아이 1826
59 javascript/jquery javascript / , , , 바다아이 1872
58 javascript/jquery url , , encode, decode ... 바다아이 1438
57 javascript/jquery javascript ... frame location.href 바다아이 1574
56 javascript/jquery File Upload Progress, .... . 바다아이 1840
55 javascript/jquery javascript, json , json Highlight 바다아이 1805
54 javascript/jquery javascript json , , JSON.stringify, JSON.parse, 바다아이 1872
53 javascript/jquery javascript innerHTML, innerTEXT ... 바다아이 1698
52 javascript/jquery javascript entity , , encode, decode 바다아이 1872
51 javascript/jquery javascript post, get , 바다아이 2635
50 javascript/jquery text copy, , How to copy a TEXT to Clipboard on a Button-Click 바다아이 2048
49 javascript/jquery jquery autocomplete , , . 바다아이 1868
48 javascript/jquery javascript, jquery, , autocomplete 바다아이 2054
47 javascript/jquery substring, substr, indexOf, lastIndexOf (javascript , , ) 바다아이 1902
46 javascript/jquery Javascript event.keyCode , , ACSII 바다아이 1588
현재글 javascript/jquery url encode decode , , , javascript 바다아이 2475
44 javascript/jquery javascript 바다아이 1638
| |




Copyright ⓒ 2001.12. bada-ie.com. All rights reserved.
이 사이트는 리눅스에서 firefox 기준으로 작성되었습니다. 기타 브라우저에서는 다르게 보일 수 있습니다.
[ FreeBSD + GoLang + PostgreSQL ]
서버위치 : 서울 Amazon Lightsail  실행시간 : 0.02427
to webmaster... gogo sea. gogo sea.