개발/기타

JSON맛보기

xwing 2008. 8. 27. 20:57
JSON  맛보기

JSON 이란 :
JSON (JavaScript Object Notation)은 경량의 DATA-교환 형식이다. 이 형식은 사람이 읽고 쓰기에 용이하며, 기계가 분석하고 생성함에도 용이하다. JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999의 일부에 토대를 두고 있다. JSON은 완벽하게 언어로 부터 독립적이지만 C-family 언어 - C, C++, C#, Java, JavaScript, Perl, Python 그외 다수 - 의 프로그래머들에게 친숙한 관습을 사용하는 텍스트 형식이다. 이러한 속성들이 JSON을 이상적인 DATA-교환 언어로 만들고 있다.

http://json.org/json-ko.html



    1 <SCRIPT LANGUAGE="JavaScript">

    2 <!--

    3 var dta = {

    4        "song_id": 1234567,

    6         "song_name" : "I Love You!",

    7         "artist_id" : 0987654,

    8         "artist_name" : "홍길동" 
    9 }

   10 

   11   document.write( "곡ID:" + dta.song_id );

   12   document.write( "  곡 명:" + dta.song_name );

   13   document.write( "   아티스트명: " + dta.artist_name );

   14   document.write( "   아티스트 ID: " + dta.artist_id + "<br>");

   15   

   16 

   17 //-->

   18 </SCRIPT>






배열을 사용하려면...

    1 <SCRIPT LANGUAGE="JavaScript">

    2 <!--

    3 var dta = {

    4     song_data : [

    5     {    "song_id": 1234567,

    6         "song_name" : "I Love You!",

    7         "artist_id" : 0987654,

    8         "artist_name" : "홍길동" },

    9     {    "song_id": 875696,

   10         "song_name" : "너를 사랑해",

   11         "artist_id" : 45682,

   12         "artist_name" : "한동준" },

   13     {    "song_id": 98752,

   14         "song_name" : "가시",

   15         "artist_id" : 2580,

   16         "artist_name" : "버즈" }]

   17 }

   18 

   19    document.write( "<table border=1><tr>");
   20     document.write( "<td>곡ID</td><td>곡 명</td><td>아티스트명</td><td>아티스트 ID</td></tr>");

   21     for(var i=0; i < dta.song_data.length; i++){
   22         document.write( "<tr>");

   23         document.write( "<td>" + dta.song_data[i].song_id + "</td>" );

   24         document.write( "<td>:" + dta.song_data[i].song_name + "</td>" );

   25         document.write( "<td> " + dta.song_data[i].artist_name + "</td>" );

   26         document.write( "<td>" + dta.song_data[i].artist_id + "</td>" );

   27     }

   28     document.write( "</table>");
   29 

   30 //-->

   31 </SCRIPT>



  JSON 은 { key : value } 형식으로 값을 지정한다.
  여러개를 지정하려면 "," 로 구분하여 여러개를 지정할 수 있다.
  { key : value , key : value}
 
  또한, 배열로도 사용할 수 있는데 그 형식은 아래와 같다.
  { name : [ { key: value, key:value} , { key: value, key:value} ] }
  엑세스는  name[0].key 이렇게 할 수 있다.
  위 예제를 보면 쉽게 알아 볼수 있을 것이다.

  AJAX에 응용하면 XML 형식으로 받던 데이터를 JSON 형식으로 받는다면, 좀 더 쉽게 값을 가져다 쓸 수 있지
  않을까 한다. 이런식으로 AJAX 를 연동한 소스와 설명이 웹상에서 쉽게 찾아 볼수 있다.
 
  위 결과는
 
곡ID 곡 명 아티스트명 아티스트 ID
1234567 I Love You! 홍길동 987654
875696 너를 사랑해 한동준 45682
98752 가시 버즈 2580


  ^^ 좋은 하루 되세요.