자바스크립트 - 인코딩과 디코딩 내장함수(escape, unescape, dobleURI, encodeURI, encodeURIComponent, decodeURIComponent)

2023. 11. 21. 08:43자바스크립트

반응형

웹에서 데이터를 주고 받을때 문자 방식으로 주고 받을 경우 한글과 같은 유니코드 문자는 인식하지 못할 수 있다. 그래서 이런 경우 인코딩 함수로 문자를 부호화 한 다음에 문자를 다시 디코딩함수를 이용해 원래 문자로 되돌릴 수 있다. 예를들어 '자바스크립트' 문자를 인코딩하면 '%xx'로 부호화하고 이 인코딩 된 문자를 디코딩하면 '자바스크립트'가 되는거다.

 

escape(인코딩 할 문자)

- ()안에 인코딩할 문자를 넣으면 인코딩 된다.

- *, -, /, +, @, _, . 을 제외한 문자를 인코딩 한다.

 

unescape(디코딩 할 문자)

- ()안에 디코딩할 문자를 넣으면 디코딩 된다.

 

decodeURI( 디코딩 할 문자 )

- ()안에 디코딩할 문자를 넣으면 디코딩 된다.

 

encodeURI( 인코딩 할 문자)

- ()안에 인코딩할 문자를 넣으면 인코딩 된다.

 

encodeURIComponent( 인코딩 할 문자 )

- ()안에 인코딩할 문자를 넣으면 인코딩 된다.

 

decodeURIComponent( 디코딩 할 문자 )

- ()안에 디코딩할 문자를 넣으면 디코딩 된다.

var str = "인코딩 할 문자";

// str을 인코딩 한다.
var encodeGo1 = escape(str); 
var encodeGo2 = encodeURI(str); 
var encodeGo3 = encodeURIComponent(str); 

console.log(encodeGo1);
console.log(encodeGo2);
console.log(encodeGo3);

// 디코딩
var decodeGo1 = unescape(encodeGo1); 
var decodeGo2 = decodeURI(encodeGo2); 
var decodeGo3 = decodeURIComponent(encodeGo3); 

console.log(decodeGo1);
console.log(decodeGo2);
console.log(decodeGo3);

 

반응형