2016년 3월 29일 화요일

인코딩, 디코딩

인코딩(encoding)
    - 정보의 형태나 형식을 변환하는 처리 방식
    - 문자를 컴퓨터에 저장하거나 통신에 사용하기 위해 부호화하는 방법
    - 웹 상에서 통신 시 한글 등의 유니코드의 오작동 방지를 위해 사용

    1) escape()
        - 영문 알파벳과 숫자, 일부 특수 문자(@, *, -, _, +, ., /)를 제외하고 모두 인코딩
        - 1바이트 문자는 %XX의 형태로, 2바이트 문자는 %uXXXX 형태로 변환
          (http://www.blogger.com > http%3A//www.blogger.com)

    2) encodeURI()  // 많이 사용
        - escape() 함수에서 인터넷 주소에 사용되는 일부 특수 문자 (:, ;, /, ?, &) 인코딩 안함
        - 파라미터 전달하는 인터넷주소 전체를 인코딩할 때 사용
   
    3) encodeURIComponent()
        - 알파벳과 숫자를 제외한 모든 문자를 인코딩


디코딩(decoding)
    - 인코딩 된 것을 다시 원래의 문자나 정보로 되돌리는 작업

    1) unescape()
        - escape()를 이용하여 인코딩한 정보를 디코딩

    2) decodeURI()
        - encodeURI()를 이용하여 인코딩한 정보를 디코딩

    3) decodeURIComponent()
        - encodeURICComponent()를 이용하여 인코딩한 정보를 디코딩


  • <script>  
  •     var url = 'http://devchun.blogspot.kr';  
  •     var escape = escape(url);  
  •     var encodeuri = encodeURI(url);  
  •     var encodeuricomponent = encodeURIComponent(url);  
  •       
  •     console.log('plain text : ' + url);  
  •     console.log(escape);  
  •     console.log(encodeuri);  
  •     console.log(encodeuricomponent);  
  •       
  •     var unescape = unescape(escape);  
  •     var decodeuri = decodeURI(encodeuri);  
  •     var decodeuricomponent = decodeURIComponent(encodeuricomponent);  
  •       
  •     console.log('decoded text');  
  •     console.log(unescape);  
  •     console.log(decodeuri);  
  •     console.log(decodeuricomponent);  
  • </script>  



    댓글 없음:

    댓글 쓰기