티스토리 뷰


 JSONJavaScript Object Notation의 약자로서 다른 언어간에 객체를 전달하는 포맷으로 많이 사용된다. 주로 클라이언트 사이드에서 서버 사이드로 객체 정보를 전송할 때 쓰인다고 한다. JSON의 개념이 없는 상태면 어려울 수도 있지만 막상 공부해보니 하나도 안어렵다.

다음 소스코드는 일반적인 자바스크립트에서의 배열객체의 사용방법 예제다.

소스코드 실행 페이지. 일반적인 JavaScipt 배열과 객체

arr과 obj를 크롬 개발자 도구를 사용해 확인한 모습



JSON의 표현방법도 위와 크게 다르지 않지만 객체 자체를 문자열로 바꿀 수 있다는 특징이 있다. 이 객체 정보를 가진 문자열을 다른 언어나 서버로 던져 다시 사용할 수 있다. 다음은 기초적인 JSON 사용 예제다.

JSON Parser를 사용해 생성한 객체와 그 객체를 stringify()를 통해 JSON Format으로 만든 모습

json → jsonObj → jsonStr

두개의 JSON 메소드가 사용되었는데 JSON.parse(str)JSON.stringify(obj) 두가지다. JSON.parse의 경우 JSON 포맷의 문자열을 객체로 변환 시켜준다. JSON.stringify는 객체를 JSON 포맷의 문자열로 변환 시킨다.

사실 클라이언트에서만 사용하기에는 큰 메리트가 없지만 다른 언어로 객체의 정보를 보내거나 Ajax를 사용할 때 그 진가가 드러난다고 한다. 이 내용들은 Coming soon... 나도 아직 안봐서.. 그리고 이런 사이트에서 JSON 포맷을 연습해 볼 수도 있다.

아래는 위에서 사용한 예제의 전체 소스코드.


예전에 대용량의 데이터를 처리하는 개인 프로젝트를 하다가 데이터 처리 로직이 꼬여 때려 치운적이 있는데 진작 이걸 공부했으면 안 때려 쳤을 수도 있었을 것 같다. 그 수많은 데이터를 객체 안쓰고 배열로 처리하려고 했으니 원..

저작자 표시 비영리 변경 금지
신고
프로필사진

Yowu (Yu Yongwoo)

My MBTI type is ENTP. (Of course I do not believe it 100%, but I want to do that) I use Node.js to develop the backend. I use Ubuntu Linux as my development environment, and I love Vim. I am interested in open source and are keen to contribute. I have a bachelor's degree in computer science from Catholic University and now a software engineer at Plating Inc., I spent about 5 years developing and learning, and I am still interested in software development and culture. Recently, I am interested in React, Serverless structure, Domain Design Driven. Sometimes I play drums in the band.