Json

지환·2024년 6월 23일
0

자바스크립트

목록 보기
28/30

Json

  • JSON : 클라이언트- 서버 간의 HTTP 통신을 위한 텍스트 테이터 포맷

JSON.stringify

  • 객체를 ---> Json 포맷의 문자열로 변환

  • 클라이언트가 서버로 객체를 전송하려면 (문자열화 필요) 이 때 사용

const obj = {
  name: "WI",
  age: 100,
  alive: true,
  hobby: ["programming", "music"],
};

// 객체 -> JSON (serializing)
const json = JSON.stringify(obj);
console.log(json);
// {"name":"WI","age":100,"alive":true,"hobby":["programming","music"]}

const prettyJSON = JSON.stringify(obj, null, 2);
console.log(typeof prettyJSON, prettyJSON);
// string {
//   "name": "WI",
//   "age": 100,
//   "alive": true,
//   "hobby": [
//     "programming",
//     "music"
//   ]
// }

// JSON.stringify(obj, replacer, space) 에서 replacer 메서드 정의
function filter(key, value) {
  // undefined 는 반환 X
  return typeof value === "number" ? undefined : value;
}

const strFilteredJSON = JSON.stringify(obj, filter, 2);
console.log(typeof strFilteredJSON, strFilteredJSON);
// string {
//   "name": "WI",
//   "alive": true,
//   "hobby": [
//     "programming",
//     "music"
//   ]
// }

JSON.parse 메소드

  • JSON 포맷의 문자열 --> 객체로 변환한다.
  • 서버로 부터 클라이언트에게 전송된 JSON 문자열 데이터를 --> 객체화 하기 위해서 사용하는 메소드이다.
  • 역직렬화 과정
const obj = {
  name: "WI",
  age: 100,
  alive: true,
  hobby: ["programming", "music"],
};

// 객체 -> JSON (serializing)
const json = JSON.stringify(obj);

// JSON -> 객체 (deserializing)
const parsed = JSON.parse(json);
console.log(typeof parsed, parsed);
// object {
//   name: 'WI',
//   age: 100,
//   alive: true,
//   hobby: [ 'programming', 'music' ]
// }
profile
아는만큼보인다.

0개의 댓글