인코딩/디코딩은 네트워크를 통해 데이터를 전송할 때 어떤 시스템 환경에서든 읽을 수 있게 ASCII 문자형으로 변경/복원해주는 것을 말한다.


서버에 데이터를 전송할 때 한글이나 특수문자가 깨지는 문제가 발생하는데 이것을 해결하기 위해서 자바스크립트에서 다음과 같은 함수를 사용하는데 조금씩 차이가 있다.


1. escape(), unescape()

2. encodeURI(), decodeURI()

3. encodeURIComponent(), decodeURIComponent()


1. escape() / unescape()

- 영문대문자, 영문소문자, 숫자, 특수문자 중  * @ - _ + . / 를 제외한 모든 문자를 변환


- escape와 유사하지만 인터넷 URL에서 사용되는  , / ? : @ & = + $ # 특수문자는 변환하지 않음


- 인터넷 URL에서 사용되는 , / ? : @ & = + $ # 특수문자도 변환






※ 한줄요약

- URL 전체를 인코딩은 encodeURI(), 

- 파라메터만 인코딩은 encodeURIComponent() 사용





AND