소프트웨어/JavaScript • Dhtml

JSON javascript 읽기

falconer 2009. 7. 3. 12:59

JSON(Javascript Object Notation)은 경량 데이터 교환 형식이다.

사람이 읽기 쉽고, 쓰기 쉽고, 또 기계에게도 해석과 생성이 용이한 형식이며

JavaScript(ECMAScript)에 근거한 부분집합이다.

즉, 자바스크립트로 객체를 기술하는 방법이다.

 

예들 들어, 아래와 같이 씁니다.

var oj = {

   "프로퍼티 이름" : "값",

   "메소드 이름" : function() {alert!('This is method')}

}

 

이것만으로 오브젝트 oj를 만드는 것이 가능하여, oj.프로퍼티이름 으로 값을 얻어 낼 수 있어,

oj.메소드이름() 으로 "This is method"라는 대화창을 표시합니다.

 

또한 Javascript로는 배열도 다음과 같은 꼴로 다룰 수 있는 경우가 자주 있습니다.

var ary = ["값1", "값2", "값3"]

데이터 교환용 형식으로 고려해보면, 이것은 XML과 마찬가지 또는 그 이상으로 가벼우며

간단한 형식이라는 것을 알 수 있습니다.

 

특히 웹 상에 보급하고 있는 언어는 C언어계가 많아, C, C++, C#, 자바, JavaScript, Perl,

Python 등 많은 언어간의 연동을 꾀하기 쉬운 형식이라고 할 수 있겠습니다.

 

그래서 XML을 대신 할 데이터 교환용 형식으로 Ajax에서는 JSON이 보급되고 있습니다.

 

키가 없는 배열에 대해서는 []를 사용한다.

KOR은 obj[0]으로 접근 할수 있고 CHN은 obj[2]로 접근 할수 있다

var obj = ["KOR","USA","CHN"];

 

키가 있는 배열에 대해선 {키:값}을 사용한다.

var man = {name:"홍길동",height:"170"};

 

var result = {

   mans : [

      {name:"홍길동",height:"170"},

      {name:"홍길순",height:"165"}

   ]

}

 

[접근법]

result.mans[0].name; //홍길동

result.mans[1].name; //홍길순

 

XML이 커질수록 XML DOM을 이용하여 객체로 표현하는 것은 매우 수고스러운

작업이 될 것이다.

 

JSON(제이슨)은 이러한 단점을 보완할 수 있는 표기법으로 XML대신 JSON으로

표기된 문자열은 자바스크립트에서 쉽게 객체로 복구하여 사용 할 수 있다.

 

var json_str = "{name:'홍길동',height:'170'}";

var man = eval!("(" + json_str + ")");

alert!(man.name);

 

따라서 서버의 응답이 JSON 문자열이라면 XML DOM을 만들 필요도 없다.

아주 간단히 결과를 객체화하여 사용 할 수 있다.

출처 : http://neouser.tistory.com/192

'소프트웨어 > JavaScript • Dhtml' 카테고리의 다른 글

HTML 4와 HTML 5의 차이점  (0) 2009.07.09
HTML5.js  (0) 2009.07.08
jQuery Async Plugin  (0) 2009.07.02
Masked Input plugin  (0) 2009.06.29
JSON API 하이재킹, Ajax Security  (0) 2009.05.21