[JavaScript] JSON

Steve·2021년 5월 12일
0

웹개발 코스

목록 보기
20/59

JSON.stringify
JSON.parse


탄생 배경

JSON (JavaScript Object Notation) 은 데이터 교환을 위해 만들어진 포맷이다.

예를 들어 다음과 같은 객체 내용을 네트워크를 통해 다른 프로그램으로 전송한다고 생각해 보자.

const comment = {
  video: "Faker Plays",
  comment: "페이커 너무 잘한다!",
  number: 1,
  boolean: true
}

객체를 전송하려면 수신자와 발신자가 같은 프로그램을 쓰거나, 아니면 문자열같은 범용적인 데이터 형태여야 한다.
객체, 배열 메소드인 String(comment) 혹은 comment.toString() 사용하면 [object Object] 를 반환할 뿐이다.

따라서 JSON.stringify() 를 사용한다. stringify 하는 과정을 직렬화(serailize)라고 한다.
JSON 데이터를 다시 객체로 만들려면 반대 함수인 JSON.parse()를 사용하면 된다. parse 하는 과정을 역직렬화(deserialize)라고 한다.

let send = JSON.stringify(comment);
// 결과
"{"video":"Faker Plays","comment":"페이커 너무 잘한다!","number":1,"boolean":true}"

let commentObj = JSON.parse(send);

JSON 은 서로 다른 프로그램 사이에서 데이터를 교환하기 위한 포맷이며, 다른 언어에서도 범용적으로 사용되는 유명한 포맷이다.

JSON 데이터 규칙

  1. key 를 모두 큰따옴표 "" 로 감싼다. (JS - 따옴표로 감싸지 않아도 상관없음)
  2. string은 반드시 큰따옴표 ""로 감싼다. (JS - 작은따옴표 사용가능)
  3. key-value pair 사이에 공백은 없다.
// JS
{a: 1, b: 'Hello', c: true}

// JSON
{"a":1, "b":"Hello", "c":true}

느낀점

항상 JSON 이 뭔지 몰라서 알고 싶었는데 드디어 알게 되었다. 누군가가 많은 노력과 시간을 들여 알기 쉽게 정리한 내용을 보는 것은 정말 효율적이다.

profile
게임과 프론트엔드에 관심이 많습니다.

0개의 댓글