JSON (JavaScript Object Notation) 이해

JSON은 JavaScript 객체 표기법을 기반으로 하는 경량의 데이터 교환 형식입니다. 웹 개발에서는 서버와 클라이언트 간 데이터를 주고받을 때 널리 사용됩니다. JSON은 텍스트 형식이며, 언어 독립적이어서 다양한 프로그래밍 언어에서 쉽게 사용할 수 있습니다.

JSON 형식

JSON 데이터는 이름과 값의 쌍으로 구성됩니다. 이는 JavaScript의 객체 리터럴과 매우 유사하지만, 몇 가지 중요한 차이점이 있습니다:

  • 모든 키는 반드시 큰따옴표("")로 감싸야 합니다.
  • 문자열 값 또한 반드시 큰따옴표로 표현해야 합니다.
  • 숫자, 불리언, 배열, 객체 등 다양한 데이터 타입을 지원합니다.
  • null 값도 사용할 수 있습니다.

예제: JSON 데이터

{
  "employee": {
    "name": "John Smith",
    "age": 30,
    "isManager": false,
    "skills": ["Java", "SQL", "Management"],
    "department": {
      "name": "Finance",
      "location": "Building A"
    }
  }
}

 

이 JSON 예제는 "employee"라는 객체를 포함하고 있으며, 이 객체는 이름, 나이, 관리자 여부, 기술 목록, 그리고 부서 정보를 포함하고 있습니다.

 

객체 데이터 타입 지원

JSON은 자바스크립트의 객체와 유사하게 여러 종류의 데이터를 담을 수 있습니다. 객체 데이터 타입을 통해 내포된 구조를 만들 수 있으며, 이는 데이터 간의 계층적 관계를 표현하기 적합합니다.

 

객체 데이터 타입 예제

{
  "book": {
    "title": "JavaScript: The Good Parts",
    "author": "Douglas Crockford",
    "published": {
      "year": 2008,
      "publisher": "O'Reilly Media"
    },
    "details": {
      "pages": 176,
      "language": "English"
    }
  }
}

 

이 예제에서 book 객체 안에 published와 details라는 두 개의 객체가 더 들어 있습니다. 이렇게 JSON은 객체 안에 다른 객체를 포함시키는 것을 지원하며, 이를 통해 복잡한 데이터 구조를 만들고 관리할 수 있습니다.

 

JSON 파싱과 문자열화

JSON 파싱

JSON 데이터를 JavaScript에서 사용하려면 문자열 형태의 JSON을 객체로 파싱해야 합니다. JSON.parse() 함수를 사용하여 이 작업을 수행할 수 있습니다.

const jsonData = '{"name": "John Doe", "age": 30, "isStudent": false}';
const userObject = JSON.parse(jsonData);

console.log(userObject.name);  // John Doe
console.log(userObject.age);   // 30
console.log(userObject.isStudent);  // false

 

JSON 문자열화

반대로, JavaScript 객체를 JSON 형식의 문자열로 변환하려면 JSON.stringify() 메서드를 사용합니다. 이 과정을 "문자열화(stringification)" 또는 "직렬화(serialization)"라고 합니다.

 

예제: JSON 문자열화

const userObject = {
  name: "Jane Doe",
  age: 25,
  isStudent: true
};

const jsonString = JSON.stringify(userObject);
console.log(jsonString);  // '{"name":"Jane Doe","age":25,"isStudent":true}'

 

이 예제들을 통해 JSON의 기본적인 사용 방법과 JavaScript에서의 처리 방법을 이해할 수 있습니다. JSON은 웹 API와의 통신, 설정 파일, 데이터 저장 등 다양한 용도로 사용됩니다. JSON을 효과적으로 사용하면 애플리케이션에서 데이터를 효율적으로 처리하고 관리할 수 있습니다. JSON은 웹 개발뿐만 아니라 많은 프로그래밍 환경에서 데이터를 쉽게 교환하고 관리하는 데 중요한 도구입니다.

+ Recent posts