[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개의 댓글

Powered by GraphCDN, the GraphQL CDN