JSON (JavaScript Object Notation) 이란
- JSON이란 경량의 데이터 교환 형식으로 프로그래밍 언어가 아닌 단순히 데이터를 표시하는 표현 방법, 데이터 포맷입니다.
자바스크립트 (Javascript)에서 객체를 만들 때 사용하는 표현식을 의미합니다.
Ajax로 서버와 통신하며 데이터를 주고 받을 때 데이터 교환을 쉽게 하기 위해 JSON을 사용합니다.
JSON (JavaScript Object Notation)의 구조
- JSON의 자료형은 string, number, true, false, null, object, array 가 올 수 있습니다.
기본적으로 key : value 형태의 구조를 가지고 있습니다.
중괄호 {} 로 감싸게 되며, 이는 객체(Object)가 나올 것을 의미합니다.
key 값은 문자열이기 때문에 쌍따옴표 "" 를 붙여줘야 하고, value에는 기본 자료형, 배열 혹은 객체를 넣으면 됩니다.
ex)
{
"나이" : 30,
"이름" : "홍길동",
"특기" : ["달리기", "수영"]
}
위의 예제에서 볼 수 있듯이
object는 중괄호 {}로 감싸지고, 각 name 뒤에 : (colon)을 붙이고 , (comma)로 쌍들을 구분하게 되고,
array는 대괄호 []로 감싸지게 되며 , (comma)로 값들을 구분하게 됩니다.
object는 key/value 쌍들의 비 순서화된 SET입니다.
array는 순서화된 collection 입니다.
JSON (JavaScript Object Notation)의 장점
- 내용이 함축적으로 최소한의 정보만을 가지고 있습니다.
그렇기 때문에 XML 에 비해 용량이 줄어들고 그만큼 빠른 속도를 가지게 됩니다.
언어에 독립적이며, 사용하기가 쉽습니다.
JSON (JavaScript Object Notation)의 단점
- 내용이 함축적이다 보니 의미 파악이 힘들 수가 있습니다.
경량의 데이터 교환 형식이기 때문에 XML보다 빠르지만, 대용량급의 데이터 송수신에는 부적합한 모습도 있습니다.
출처: https://gxnzi.tistory.com/61 [일상, 핸드메이드 감성 플라워 소품샵:티스토리]
JSON이란?
- JavaScript Object Notation이라는 줄임말로 데이터를 저장하거나 전송할 때 많이 사용하는 경량의 데이터 교환 형식이다.
- JSON은 데이터 포맷일 뿐 어떠한 통신 방법이나 프로그래밍 문법이 아니라 단순히 데이터를 표시하는 표현 방법일 뿐이다.
JSON특징
- 서버와 클라이언트 간의 교류에서 일반적으로 사용된다.
- JSON 문서 형식은 JavaScript 객체의 형식을 기반으로 만들어졌다.
- JavsScript 문법과 유사하지만 텍스트 형식일 뿐이다.
- 특정 언어에 종속되지 않고, 대부분의 프로그래밍 언어에서 JSON 포맷의 데이터를 핸들링 할 수 있는 라이브러리를 제공한다.
- JSON은 텍스트로 이루어져 있으므로, 사람과 기계 모두 읽고 쓰기 쉽습니다.
- JSON은 텍스트 기반이므로 프로그래밍 언어와 플랫폼에 독립적입니다.
- JSON은 프로그래밍 언어와 플랫폼에 독립적이기 때문에 서로 다른 시스템간에 객체를 교환하기에 좋습니다.
JSON을 사용하는 이유
- 네트워크를 사용하는 데이터 통신은 데이터를 byte 형태로 전달한다.
- 서버와 클라이언트 또는 애플리케이션 처리할 데이터를 주고받을 때 자료 형식 중 대표적인 것이 XML과 JSON이 있다.
- XML과 JSON은 공식 포맷이기 때문에 다른 개발자 사이에 데이터 통신을 가능하도록 한다.
XML에서 JSON을 많이 사용하는 이유는?
- JSON은 특정 언어에 종속되지 않은다.
- XML보다 최소한의 용량으로 데이터 전송이 가능하다.
- XML은 HTML과 같은 형태의 태그 구조 형식으로 데이터를 표현하는데 이는 구조가 부족해지며 용량이 커지기 때문이다.
- XML보다 JSON은 구조 정의의 용이성과 가독성이 좋다.
출처: https://aonee.tistory.com/13
출처: https://velog.io/@surim014/JSON%EC%9D%B4%EB%9E%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80