JSON에 대해서 공부 중 잊지않기 위해 정리!
JSON은 JavaScript Object Notation 의 약자입니다.
직역하면 자바 스크립트 객체 표기법
으로 데이터를 쉽게 교환
하고 저장
하기 위한 텍스트 기반의 데이터 교환 표준 입니다. JSON은 텍스트 기반이기 때문에 다양한 프로그래밍 언어에서 데이터를 읽고 사용할 수 있습니다.
JSON의 형태는 키(Key)
와 값(value)
의 쌍으로 이루어져 있는 구조입니다.
그리고 Key와 Value사이에는 콜론(:)
이 들어가게 됩니다.
{ key : value }
여러 데이터를 나열할 경우 쉼표(,)
를 사용합니다.
{key1 : value, key2 : value2}
객체(Object)는 중괄호( { } )
로 묶어서 표현하고,
배열(Array)은 대괄호( [ ] )
로 묶어서 표현합니다.
{ key1 : { inKey : inValue }, key2 : [arr1, arr2 arr3] }
{"판매자정보" : { "이름" : "남도일", "지역" : "서울" } , "판매품목" : ['사과','배','딸기'] }
값 | 타입 |
---|---|
1 | 숫자(number) |
"str" | 문자열(string) |
true | 불리언(boolean) |
{inKey : value} | 객체(object) |
["일", "이"] | 배열(array) |
null | 널(NULL) |
자바스크립트에서 JSON을 사용하기 위해 다음과 같은 메소드를 제공하고 있습니다.
- JSON.
stringify(arg)
- JSON.
parse(arg)
두 메소드의 사용 목적은 간단! 객체와 문자열로의 변환이 목적!
stringify(arg)
는 객체를 문자열로 변환합니다.var json = {"test" : "value"}
var incodingData = JSON.stringify(json);
//console.log(incodingData); // {"test":"value"}
parse(arg)
는 문자열을 객체로 변환합니다.var str = '{"test" : "value"}';
var parsingData = JSON.parse(str);
//console.log(parsingData); // { test: "value" }
작은따옴표(' ')로 묶은 문자열 str 을 JSON.parse(str)로 문자열에서 객체로 변환한 것이 보이시죠?
JSON.parse() 사용 시 주의할 점은 해당 문자열이 반드시 JSON 형식이어야 된다는 점입니다.
가령 아래와 같은 경우 JSON.parse() 사용 시 오류를 발생시키게 됩니다.
var str = "k : v"
JSON.parse(str);