본문 바로가기
JavaScript

JavaScript - URL 인코딩(encodeURI) / 디코딩하기(decodeURI)

by 새발개발JA 2021. 6. 17.
반응형

신입 네 달차, 프로젝트의 URL 안의 특수문자가 유니코드로 인코딩되어 표시되었다.

그래서 URL 을 사용하는 메소드의 결과가 제대로 나오지 않는 이슈가 발견되었다.

문제해결을 위해 encodeURI() 의 문서를 살펴보며 해결을 모색하였다. 

 


URL 전체를 건들고 싶을 때, 

URL 의 (영어제외) 전체가 인코딩 / 디코딩 된다.

 

endcodeURIComponent()

var encodeStr = encodeURI("http://www.mywebpage.com/한글.jsp");

console.log(encodeStr);
// "http%3A%2F%2Fwww.mywebpage.com%2F%ED%95%9C%EA%B8%80.jsp"

 

decodeURIComponent()

var decodeStr = decodeURI(encodeStr);

console.log(decodeStr);
// "http://www.mywebpage.com/한글.jsp"

 

 

 

URL 문자만 바꿔야 한다면, (특수문자 빼고)

URL 의 영어랑 특수문자를 제외한 나머지 문자들만 인코딩 / 디코딩 된다.

 

encodeURI()

const uri = 'https://mozilla.org/?x=шеллы';

console.log(encodeURI(uri));
// "https://mozilla.org/?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B"

 

decodeURI()

const uri = 'https://mozilla.org/?x=%D1%88%D0%B5%D0%BB%D0%BB%D1%8B';

console.log(decodeURI(uri));
// "https://mozilla.org/?x=шеллы"

 

반응형

댓글