JSON은 정말 빈번하게 활용된다. 구조를 이해하고 있지 못하면 사용이 어려운 거 같아 되풀이 차원에서 글을 쓰게 됐다.
============================================================================
JSON 구조
Java Script Object Notation (JSON)은 정보를 표현하기 위해서 인기있고 빈번하게 사용되는 방법 중 하나이다.
이 글은 간단한 & 복잡한 JSON 메시지 구조를 설명한다.
Car라는 예제가 있다고 해보자. Car의 정보는 Json Format에서는 다음처럼 표현된다.
var car = {
"name" : "Audi",
"model" : "2018",
"cost" : "30000"
};
위의 표현은 javascript에서 파생된 거다. 여기서 중괄호 안에 감싸진 객체인 변수 'car'를 생성했다.
이 객체는 쉼표로 분리된 "name" : "value" 쌍을 포함하고 있다.
객체 속성에 접근하기 위해서, 간단하게 object.property 표기법을 사용한다
car.name // "Audi"
car.model // "2010"
객체가 복잡해 질 경우를 예를들면
var car = {
"name" : "Audi",
"model" : "2018",
"cost" : "30000",
"engine" : {
"type" : "diesel",
"power" : "88KW 2.0TDI"
}
};
접근방법:
car.name // "Audi"
car.engine.type // "diesel"
JSON은 컬렉션 표현을 지원한다. 예를들면 배열에 JSON을 저장해 보면
var carFleet = [
{
"name" : "Audi",
"model" : "2018",
"engine" : {
"type" : "diesel",
"power" : "88KW 2.0TDI"
}
},
{
"name" : "Jaguar",
"model" : "2012",
"cost" : "70000",
"engine" : {
"type" : "diesel",
"power" : "140KW 3.0TDI"
}
}
];
접근방법 :
carFleet[0].name // "Audi"
carFleet[1].engine.power // "140KW 3.0TDI"
더 복잡해진 정보를 JSON을 사용하여 표현할 수 있다.
var carFleet = [
{
"name" : "Audi",
"model" : "2018",
"engine" : {
"type" : "diesel",
"power" : "88KW 2.0TDI"
},
"colors" : [
"Black",
"Red",
"White"
]
},
{
"name" : "Jaguar",
"model" : "2012",
"cost" : "70000",
"engine" : {
"type" : "diesel",
"power" : "140KW 3.0TDI"
},
"color" : [
"Gray",
"Black",
"White"
]
}
];
접근방법:
carFleet[0].name // "Audi"
carFleet[1].engine.power // "140KW 3.0TDI"
carFleet[1].colors[2] // "White"
'JAVASCRIPT' 카테고리의 다른 글
[Javascript ] 프로토타입(prototype) 이해하기 (0) | 2018.04.29 |
---|---|
[Javascript] 익명함수와 선언적 함수의 리딩 차이 (0) | 2018.04.28 |
[JAVASCRIPT] this의 가르키는 대상 (0) | 2018.04.28 |
[JAVASCRIPT]JSON.parse(), JSON.stringify() (0) | 2018.02.14 |
[JAVASCRIPT]JSTL을 이용하여 JAVASCRIPT에서 EL 값 받기 (0) | 2018.02.11 |