어쩌다 알게 된 ƪ(•̃͡•̃͡ ƪ

통신 JSON 본문

자바스크립트/⚪️ Vanilla

통신 JSON

비니_ 2025. 2. 26. 10:31
728x90

통신


📌 ** JSON (JavaScript Object Notation) 이란?
- 자바스크립트의 객체 리터럴 표기법에서 영감을 받아 개발된 데이터 표현 및 교환 포맷
- 데어터를 표현하고 교환하기 위해 사용되는 텍스트 기반 포맷
- 사람이 읽기 쉽고 기계가 처리하기 쉬운 데이터 구조를 표현

역사
- 1990년대 후반과 2000년대 초반, 데이터 교환 포맷으로 XML이 널리 사용
- XML의 단점으로 인한 대안이 필요

XML의 단점
- 데이터 표현을 위해 많은 태그를 사용해야 하며, 읽고 쓰기가 번거로움
- 데이터의 크기가 크고 처리 속도가 느림
- 사람이 읽기 어렵고 직관적이지 않음
- 더글라스 크록포드는 자바스크립트의 객체 리터럴 표기법에서 영감을 받아, 간단하고 직관적인 데이터 표현방식으로 JSON을 설계
- 2001년 경, JSON이라는 이름과 포맷을 공식적으로 제안
- 2002년 경, JSON의 주요 형식과 규칙을 문서화하며, "JSON.org"라는 웹사이트에서 공식적으로 소개
- 2005년 Ajax(비동기방식) 기술이 확산되면서 JSON이 XML을 대체할 데이터 포맷으로 주목을 받음
- 2005년 구글과 야후와 같은 대형 IT 기업에서 JSON을 채택하며, JSON이 대중화 되기 시작
- 2013년 국제 표준으로 채택

JSON의 설계 철학
- 사람도 쉽게 읽고 쓸 수 있는 데이터 포맷
- 자바스크립트의 객체 리터럴 문법과 유사하게 유지
- 자바스크립트에서 비롯되었지만, 다른 프로그래밍 언어에서도 쉽게 사용할 수 있도록 설계
- JSON은 객체, 배열, 문자열, 숫자, 불리언, null을 사용해 데이터를 간결하게 표현

JSON의 한계
- JSON은 텍스트 기반이므로, 이진 데이터 전송에는 부적합(XML도 마찬가지)
- JSON은 데이터를 표현하기 위한 포맷으로 설계되었기 때문에, 메서드나 심볼과 ㅗ같은 자바스크립트의 동적 요소를 포함할 수 없음
- JSON 데이터 형식이 잘못되면, 전체 데이터가 파싱되지 않는 문제가 발생

 


JSON의 자바스크립트 사용 메서드

 

1. JSON.parse()
- JSON 문자열을 자바스크립트 객체로 변환
- 서버에서 받은 JSON 데이터를 자바스크립트에서 처리

{ // 객체 리터럴과 다른 점: 왼쪽 key도 따옴표로 감싸 주어야 함
  "name": "홍길동",
  "age": 30,
  "isStudent": false,
}

; json 문법 맞는지 정리해주는 사이트
// json pretty parser
https://jsonformatter.org/json-pretty-print

const jsonString = '{"name": "홍길동","age": 30,"isStudent": false,}';
const obj = JSON.parse(jsonString);

console.log(obj.name);
console.log(obj.age);
console.log(obj.isStudent);

728x90

'자바스크립트 > ⚪️ Vanilla' 카테고리의 다른 글

⚪️ [ JS ] 함수, 메서드, 생성자 차이  (0) 2025.03.10
Math. ~(), 랜덤함수 예제  (0) 2025.02.26
정규표현식  (0) 2025.02.26
자바스크립트 생명주기  (0) 2025.02.25
이벤트 핸들러  (0) 2025.01.18
Comments