본문으로 건너뛰기
실습하기

JSON(JavaScript Object Notation)

JSON(제이슨)은 정보를 저장하고 교환하기 위한 데이터 교환 형식입니다.

형식은 아래와 같이 중괄호 { } 또는 대괄호 [ ]로 데이터를 감싸 표현하며, 큰따옴표로 구성된 키(key)와 문자열, 숫자 등으로 구성된 값(value)의 쌍으로 이루어져 있습니다.

JSON 예시
{
"name": "코드프렌즈",
"address": {
"city": "서울"
},
"age": 20
}

객체의 키-쌍 사이에 쉼표(,)를 사용하여 여러 개의 키-쌍을 나열할 수 있으며, 마지막 키-쌍 뒤에는 쉼표를 사용하지 않습니다.

JSON은 JavaScript에서 객체를 만드는 방식을 기반으로 구성하지만, 언어 독립적이기 때문에 대부분의 프로그래밍 언어에서 사용할 수 있습니다.

특히 대부분의 프로그램에서 서버와 웹 페이지 간의 데이터 상호 작용에 널리 쓰입니다.


JSON의 기본 구조

JSON은 객체 또는 배열의 형태로만 표현된다는 특징이 있습니다.


1. 객체

중괄호 { }로 둘러싸인 키-값 쌍의 집합입니다.

JSON 객체 형식
{
"키1": "값1",
"키2": "값2",
...
}
JSON 객체 적용 예시
{
"name": "코드프렌즈",
"age": 25
}

2. 배열

대괄호 [ ]로 둘러싸인 값들의 목록입니다.

JSON 배열 형식
["값1", "값2", "..."]
JSON 배열 적용 예시
["사과", "바나나", "체리"]

JavaScript에서 JSON 다루기

JavaScript는 자체적으로 JSON을 다루는 JSON 객체를 제공합니다.

JSON 객체는 JSON 데이터를 문자열로 변환하거나 JavaScript 객체로 변환하는 메서드를 제공합니다.


1. JSON.stringify()

JavaScript 객체나 값들을 문자열로 변환합니다.

JSON.stringify() 예시
const obj = {
name: '코드프렌즈',
age: 25,
};

const jsonString = JSON.stringify(obj);
console.log(jsonString); // '{"name":"코드프렌즈","age":25}' 출력

2. JSON.parse()

JSON 문자열을 JavaScript 객체나 값으로 변환합니다.

JSON.parse() 예시
const jsonString = '{"name":"코드프렌즈","age":25}';

const obj = JSON.parse(jsonString);
console.log(obj.name); // "코드프렌즈" 출력

주의할 점

  • JSON의 속성 이름으로 사용되는 키(Key)는 항상 큰따옴표(")로 둘러싸야 합니다. JavaScript 객체는 작은따옴표(')를 허용하지만, JSON은 작은따옴표를 허용하지 않습니다.

  • JSON에서 지원하지 않는 데이터 유형(예: 함수, undefined)은 JSON으로 변환할 수 없습니다.

다음 내용이 궁금하다면?

코드프렌즈 PLUS 멤버십 가입 or 강의를 등록해 주세요!