배워서 남주는 개발자 :)

Web

[ javascript ] encodeURI(), encodeURIComponent() 차이

핏짜보이 2022. 8. 2. 21:03
반응형

1. encodeURI() : decodeURI() 
escape()와 같이 변환을 하지만, 인터넷 주소에서 쓰는 특수 문자  : ; / = ? &  는 변환을 하지 않습니다. 

2. encodeURIComponent() : decodeURIComponent() 
인터넷 주소에서 쓰는 특수 문자  : ; / = ? &  까지 변환을 합니다. 인터넷 주소를 하나의 변수에 넣을때 쓸 수 있습니다.

★ 덧붙임 : encodeURIComponent() 는 UTF-8 로 인코딩 하는 것과 같음

 

encodeURI는 알파벳, 0~9의 숫자, ; , / ? : @ & = + $ #    - _ . ! ~ * ' ( ) 를 제외한 문자를 인코딩(이스케이프 처리)

encodeURIComponent는 알파벳,0~9의 숫자 - _ . ! ~ * ' ( ) 를 제외한 문자를 이스케이프 처리

 

결론!!!

URL을 통째로 인코딩할 때는 encodeURI(), 

URL의 파라메터만 인코딩할 때는 encodeURIComponent()를 쓰면 된다.

 

**인코딩 : 어떤 네트워크에서도 사용할 수 있게 문자를 코드(ASCII,유니코드 등)로 변환하는 것

**이스케이프 : 문자열을 인코딩하는 것

 

728x90