
JSON 이라는게 말은 멋드러지지만 사실상 Javascript에서 객체(Object)선언을 해서 쓰고 있는것이 바로 JSON이다. (JSON을 잘 모른다면 여기로! 언어 중립적이라고 하는데, 내가 보이엔 자바스크립트의 객체, 그 자체다.)
XML같은 경우 Javascript에서 호출은 쉽지만 컨트롤 하기가 만만치 않은데, 이럴때 서버와의 송수신을 JSON으로 하면 트래픽도 줄이고 훨씬 컨트롤 하기가 용의하다.
혹은, 수신을 XML DOM으로 했다 하더라도, DOM -> JSON 로 변환을 하면 보다 쉽게 작업이 가능하다.
Yusuke Kawasaki 가 제작한 jkl-parsexml.js 를 사용하거나 Prototype.js에 jkl-parsexml.js 의 JSON 로직을 추가한 걸 사용하면 쉽게 JSON을 사용할 수 있다.
어쨌든 할 이야기는 그게 아니고...
근데, 오늘 자료를 찾다가 JSON 영문 소개페이지에서 JSON in Javascirpt 를 찾았다.
분명 봤던 페이진데, 가장하단에 링크를 못봤던거 같다. 여기엔 js 소스가 하나 걸려있는데,
JSONText를 Object로, Object를 JSONText로 리턴해주는 메소드를 제공한다.
(이 페이지 내용이 그 소스에 대한 내용인데, 한마디로 '어? 영어내?' 하고 안읽었다는 말이지.. ㅡ ㅡ)
만들어진 JSON객체의 하위노드명(적절한 표현이.. ㅡ ㅡa) 몰라 곤란한경우가 있었는데, 한방에 해결됬다. 어떤경우냐고?
ASP.NET에서 사용하는 Ajax.NET은 .NET의 DataSet을 Javascript로 return이 가능하다. 처음에는 무척 놀랬다. 그게 가능하단 말야???
하지만 실은 다음과 같은 형태의 JSON객체를 반환한다.
ds.Tablse[].Rows[].ColumnName
위와 같은 객체가 ds란 Javascript 변수에 달랑 담기면, 값을 조회하기위해 DB Table의 컬럼명을 다시 조회해야 한다. 아님 다음처럼 쓰던가..
ds.Tablse[0].Rows[0][2]
이럴때 위 소스에서 제공하는 Object.toJSONString() 이 도움이 된다.


Comments List