JSON : Javascript Object Notation 간단 설명

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


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]로 접근 할수 있다

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

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을 만들 필요도 없다.

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

크리에이티브 커먼즈 라이선스
Creative Commons License

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
20 [nest.js] [NestJS] NestJS 구조 이해를 위한 필수 개념 정리 - Node.js/TypeScript/Express 비교 포함 file 졸리운_곰 2025.12.12 501
19 [node.js 개발] Apache Reverse Proxy 설정(아파치와 노드 연동) file 졸리운_곰 2024.03.17 300
18 [node.js 개발] PM2로 Node.js 앱 프로세스 배포하기 file 졸리운_곰 2024.03.16 405
17 [node.js 개발] PM2를 활용한 Node.js 무중단 서비스하기 file 졸리운_곰 2024.03.16 517
16 [node.js 응용] Next.js : Next.js14에 Mysql연결하기 졸리운_곰 2024.03.03 379
15 [node.js 응용] Node.js에서 다른 파일의 함수를 "include" 하는 방법 졸리운_곰 2024.02.28 428
14 [node.js 응용] NodeJS 에서 mqtt 사용하기 file 졸리운_곰 2024.02.23 399
13 [node.js 응용] Next.js 기본 개념정리 file 졸리운_곰 2024.02.23 432
12 [node.js 응용] ejs 사용설명서 file 졸리운_곰 2023.11.25 371
11 [node.js 응용] Build a Node.js Proxy Server in Under 10 minutes! file 졸리운_곰 2023.05.07 468
10 [node.js 응용] node - pm2로 node.js 프로세스 관리하기 - 기본 명령어, 실행하기 file 졸리운_곰 2023.04.25 407
9 [node.js 응용] Node.js | MySQL과 연동(mysql모듈) - CRUD 2/2 졸리운_곰 2023.03.31 231
8 [node.js 응용] Node.js | MySQL과 연동(mysql모듈) - CRUD 1/2 file 졸리운_곰 2023.03.31 484
7 [node.js 응용] PM2 - Node.js 프로세스 관리 도구 file 졸리운_곰 2021.12.10 410
6 [node.js][nodejs] [Linux] 리눅스 내 Node.js 및 NPM 최신 버전으로 유지하기 file 졸리운_곰 2021.10.11 484
5 [node.js][typescript] 5분 안에 보는 TypeScript file 졸리운_곰 2021.07.03 428
4 Getting started with RabbitMQ and Node.js file 졸리운_곰 2019.05.09 466
3 [Node.js + RabbitMQ] Node.js + socket.io + RabbitMQ 이용한 실시간 메시지 처리 file 졸리운_곰 2019.05.09 352
2 node.js 서버 장애시 자동 재시작 설정 [forever 사용] 졸리운_곰 2019.01.24 884
1 Express 앱용 프로세스 관리자 졸리운_곰 2018.10.16 603
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED