본문 바로가기

TIL/기록

[TIL] JSON

 

JSON

JSON은 자바스크립트 언어 자체가 아니라 "문자 기반의 데이터 교환 형식" 이다.

 

 

 

JSON의 구조

JSON 구조는 리터럴 작성법을 따른다. 문자열 표기할 때는 꼭 " " 만 사용 가능하다. 

JSON은 키 - 값 쌍(key - value pair)으로 이루어진 데이터 객체를 표현한다.

데이터는 콤마로 구분된 키-값 쌍들의 집합으로 이루어진다.

JSON은 객체, 배열, 문자열, 숫자, 불리언, null 등 다양한 데이터 타입을 지원한다.

 

 

 

 

 

JSON 문자열을 자바스크립트 객체로 변환

let jsonStr = '{"name": "Kim", "age": 30, "city": "New York"}';
let jsonObj = JSON.parse(jsonStr);

 

 

 

 

 

자바스크립트 객체를 JSON 문자열로 변환

let person = '{"name": "Kim", "age": 30, "city": "New York"}';
let jsonStr = JSON.stringify(person);

 

 

 

 

예외처리 (try ... catch 구문 사용)

let jsonStr = '{"name": "Kim", "age": 30, "city": "New York",}'; // 잘못된 형식의 데이터

try {
	let jsonObj = JSON.parse(jsonStr);
	console.log(jsonObj);
} catch (error) {
    //JavaScript에서 예외 객체는 기본적으로 message 속성을 갖고 있다.
	console.log('JSON 파싱 에러 : ', error.message); //JSON 파싱 에러 :  Expected double-quoted property name in JSON at position 46
}

 

 

 

 

 

 

JSON 문자열 삭제하기

 

JSON은 텍스트 기반의 데이터 교환 형식이기 때문에 직접적으로 JSON 문자열에서 데이터를 삭제하는 것은 불가능하다.

 

 1. JSON 문자열을 파싱하여 JavaScript 객체로 변환

let jsonString = '{"name": "Kim", "age": 30, "city": "New York"}';
let person = JSON.parse(jsonString);

 

 

2. JavaScript 객체에서 원하는 속성 삭제

delete person.city;

 

 

 3. 수정된 JavaScript 객체를 다시 JSON 문자열로 변환

let newJsonStr = JSON.stringify(person);

 

 

 

이제 자바스크립트를 마치고 리액트로 들어가는 시간이 얼마 안남았는데 아직 알아야할 것들이 태산인 것 같다는 생각이 계속 든다. 

급하게 생각하지 말고 나만의 속도로 차근차근히 쌓아간다고 생각하면서 열심히 해야겠다.

'TIL > 기록' 카테고리의 다른 글

React 시작 전 설치  (0) 2024.01.17
[TIL] delete  (0) 2024.01.16
[TIL] Promise  (0) 2024.01.12
[TIL] .gitignore을 써도 안될 때  (1) 2024.01.11
[TIL] branch  (1) 2024.01.10