- 전체
- HTML
- Web Design (웹디자인)
- XE 응용 개발
- wordpress plugin dev
- Javascript & JavaScript Application
- MEAN Stack : full stack javascript
- angular js & ionic framework
- bootstrap
- WebGL, Three.js and Babylon.js
- restful api design
- mobile web
- node.js 응용
- Cloud Service 응용
- 웹 어셈블리 개발 [WASM, WebAssembly]
- 마이크로서비스, MSA (microservice architecture)
- WebGL / WebGPU
- next.js 개발
- micro frontend (마이크로프론트앤드)
- 전자상거래/쇼핑몰
- 서버 클라우드 (aws, azure, google)
JavaScript JSON : Javascript Object Notation 간단 설명
2013.01.30 14:31
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]로 접근 할수 있다
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을 만들 필요도 없다.
아주 간단히 결과를 객체화하여 사용 할 수 있다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
댓글 0
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 수 |
|---|---|---|---|---|
| 13 | [Next.js 개발] pm2 로 Next.js 실행하기 | 졸리운_곰 | 2025.07.01 | 480 |
| 12 | [Next.js 개발] NextAuth.js 를 이용한 자체 로그인 구현 | 졸리운_곰 | 2024.03.09 | 560 |
| 11 |
[Next.js 개발] Using Next.js Version 13
| 졸리운_곰 | 2024.03.09 | 409 |
| 10 |
[Next.js 개발] Common Errors in Next.js and How to Resolve Them
| 졸리운_곰 | 2024.03.09 | 468 |
| 9 | [Next.js 개발] [Javascript] 현재 날짜, 시간 구하기 | 졸리운_곰 | 2024.03.09 | 431 |
| 8 |
[Next.js 개발] Using Next.js Version 13 : Next.js 버전 13 사용
| 졸리운_곰 | 2024.03.07 | 500 |
| 7 |
[Next.js 개발] [React] useEffect에서 async/await
| 졸리운_곰 | 2024.03.06 | 362 |
| 6 |
[next.js 개발] How to use fetch API in Next.js?
| 졸리운_곰 | 2024.03.05 | 368 |
| 5 | [next.js 개발] Next.js14에 Mysql연결하기 | 졸리운_곰 | 2024.03.05 | 458 |
| 4 |
[next.js 개발] How To Connect MySQL And Auth To A Next.js App
| 졸리운_곰 | 2024.03.05 | 323 |
| 3 |
[next.js 개발] Next.js 소개와 14 버전 변경사항 – React 인기 라이브러리
| 졸리운_곰 | 2024.03.05 | 523 |
| 2 | [next.js 개발] next.js API 호출시 - 수신부따로 호출하고 await 붙일것 | 졸리운_곰 | 2024.03.05 | 555 |
| 1 | [next.js 개발] [Next.js] Fetch POST body에 json 형태로 데이터 주고받기 (json형 / object형 차이) | 졸리운_곰 | 2024.03.05 | 457 |

