[JS] JSON에 대해 알아보자!

Yeongsan Son·2021년 5월 22일
0

JSON?

위키 백과에 따르면

JSON은 키와 값 쌍으로 이루어진 데이터 오브젝트를 전달하기 위해 인간이 읽는 텍스트를 사용하는 개방형 표준 포맷이다.

JSON을 위와 같이 정의하고 있다.
JSON은 자바스크립트로부터 파생되었지만, 다른 프로그래밍 언어에서도 사용이 가능한 독립형 데이터 포맷이다.

JSON 사용법

JSON에는 프로퍼티의 이름과 값을 표현하는 방식의 제한이 있다.

각 프로퍼티의 이름을 큰따옴표를 사용해야 한다.

잠깐 자바스크립트 코드를 먼저 살펴보도록 하자.

const member = {
  name: 'Yeongsan Son',
  height: 170,
  weight: 68,
  hobbies: ['Soccer', 'Programming']
};

자바스크립트에서는 객체를 생성할 수 있는 여러 방법이 있다.
위와 같이 객체 리터럴({}) 안에 프로퍼티의 이름과 값을 순서대로 나열해서 생성한다.
객체 리터럴은 문법에 유연함이 있는데 각 프로퍼티의 이름에 큰따옴표를 아래와 같이 붙여도 붙이지 않아도 괜찮다.

const member = {
  "name": 'Yeongsan Son',
  "height": 170,
  "weight": 68,
  "hobbies": ['Soccer', 'Programming']
};

하지만 JSON의 경우에는 프로퍼티의 이름에 반드시 큰따옴표를 붙여줘야 한다.
큰따옴표를 사용하지 않으면 JSON을 처리하려고 할 때 에러가 발생한다.

{
   "name":"Yeongsan Son",
   "height":170,
   "weight":68,
   "hobbies":['Soccer', 'Programming']
}

JSON에서는 값이 문자열인 경우 큰따옴표(")를 사용해야 한다.

const member = {
  "name": 'Yeongsan Son',
  "height": 170,
  "weight": 68,
  "hobbies": ['Soccer', 'Programming']
};

자바스크립트에서는 키의 값이 문자열인 경우 작은따옴표를 사용해도 큰따옴표를 사용해도 큰 문제가 없다.
하지만 JSON에서는 문자열 값을 항상 큰따옴표를 사용해야 한다.

{
   "name":"Yeongsan Son",
   "height":170,
   "weight":68,
   "hobbies":["Soccer", "Programming"]
}

JSON에서는 표현할 수 없는 값들이 있다.

  • 자바스크립트에서는 프로퍼티의 값으로 사용할 수 있는 undefined, NaN, Infinity 등을 JSON에서는 사용할 수 없다.

JSON에 주석을 추가할 수 없다.

  • JSON은 코드가 아니라 데이터 포맷이기 때문에 그 안에 주석을 포함시킬 수 없다.
profile
매몰되지 않는 개발자가 되자

0개의 댓글