
복잡한 구조를 가질 수 있는 데이터를 한 줄의 문자열로 표현
서버와 클라이언트 등 데이터들을 주고받는 주체들 사이에 널리 사용
Javascript의 객체 표기법이며, XML 보다 낫기 때문에 대체 되고 있음. 하지만 각각의 장단점이 있음. JSON은 문법 오류에 취약하여 콤마하나 등 빼먹게 되면 문서 전체가 해석 불가 상태가 되고 주석을 달수 없다.
JSON은 표준내장 객체중 하나이다.



⭐️ 값이 함수인 프로퍼티는 직렬화되지 않음

2번째 인자: replacer 함수
직렬화될 방식을 지정

3번째 인자: 인덴트

객체의 toJSON 프로퍼티


2번째 인자: receiver 함수

JSON을 사용한 깊은 복사

함수, Date, Symbol, BigInt 프로퍼티는 JSON 방식으로는 불가 또는 제한적

structuredClone
JSON 방식보다 빠르고 효율적인 깊은 복사
Date와 BigInt 제대로 복사 - 함수와 Symbol은 여전히 불가
