[ JSON ] JSON 이란? | JSON 개념 | JSON 예제

2021. 1. 3. 19:15·Archive/Develop
728x90
반응형

 

 

안녕하세요. 이번 포스팅은 JSON이 무엇인지를 다뤄보도록 하겠습니다.

 

 

 

 

 

 

 

 

JSON 이란 무엇인가?

 

 

JSON은 JavaScript Object Notation의 약자로,

데이터를 쉽게 교환하고, 저장하기 위해 만들어진 데이터 교환 표준입니다.

 

이름에서도 알 수 있겠지만, JSON은 자바 스크립트 기반 표준입니다.

 

XML 의 대안으로서 등장한 JSON은 사람이 읽을 수 있는 텍스트를 기반으로 한 데이터 교환 표준이라는 점에서

XML과 차이를 둡니다.

 

JSON은 텍스트 기반이기 때문에, 어떤 프로그래밍 언어에서도 JSON 데이터를 사용 가능합니다.

 

 

JSON은 2009년 더글라스 크로크포드(Douglas Crockford)가 규정하였으며, 

현재 JSON 은 RFC 7159와 ECMA-404 에 의해 규정되어 있습니다.

 

 

 

 

 

 

JSON 특징

 

 

- 자바스크립트를 확장하여 제작.

- 자바스크립트 객체 표기법을 따름.

- 프로그래밍 언어와 운영체제에 독립적. (텍스트 기반이기 때문에)

- 사람과 기계가 모두 읽을 수 있도록 고안됨.

- 일반적으로 서버와 클라이언트 간 교류에서 사용됨.

 

 

 

 

 

JSON VS XML

 

 

JSON 에 대해 소개를 하자면, XML 에 대해 말을 하지 않을 수가 없는데,

이는 공통점이 분명하기 때문입니다.

 

 

JSON과 XML 의 공통점과 차이점을 열거하기 전,

XML 의 개념이 분명하지 않으신 분들을 위해 간략하게 설명하자면

 

 

XML은 EXtensible Markup Language의 약어로,

이름에서 눈치를 채신 분들도 계실 것 같지만, HTML과 비슷한 문자기반 마크업 언어입니다.

 

HTML과의 차이점이라면, 데이터를 그저 보여주는 것에서 그치는 HTML과는 달리

데이터를 저장하고 전달하는 목적으로 만들어져있습니다.

 

XML에서도 태그의 개념이 사용되는데, HTML 태그와는 달리 사용자가 정의하여 사용할 수 있습니다.

 

 

 

 

 

JSON과 XML의 공통점 JSON과 XML의 차이점
데이터를 저장하고 전달하기 위해 고안됨 JSON의 구문이 XML 구문보다 짧음.
기계 뿐만아니라 사람도 읽기 쉬움. JSON 데이터가 XML 데이터보다 더 빨리 읽고 쓸 수 있음.
계층적인 데이터 구조 JSON은 배열 사용가능.(XML은 불가능)
다양한 프로그래밍 언어에 의해 파싱됨. XML은 XML 파서로 인해 파싱되지만,
JSON은 자바 스크립트 표준 함수인 eval() 함수로 파싱됨.
XMLHttpRequest 객체를 이용하여 서버로부터 데이터 전송 받을 수 있음. JSOn은 종료 태그 사용 안함.

 

 

 

 

XML 예제

 

<sister>
    <name>철보빡</name>
    <weight>999</weight>
    <age>3</age>
</sister>

 

 

 

JSON 예제

 

{
    "name": "철보빡",
    "weight": 999,
    "age": 3
}

 

 

 

JSON 의 사용 범위

 

XML 문서는 XML DOM(Document Object Model)을 이용해 문서에 접근합니다.

JSON은 문자열을 전송 받고 해당 문자열을 바로 파싱하기 때문에, XML보다 더 빨리 처리할 수 있습니다.

 

이러한 이유 때문에 빠른 응답이 필요한 웹 환경에서 사용됩니다.

 

그렇지만, JSON은 전송 받은 데이터의 무결성을 사용자가 직접 검증해야 해서

데이터의 검증이 필요한 경우 XML 이 사용됩니다.

 

 

728x90
반응형

'Archive > Develop' 카테고리의 다른 글

[ Python ] 파이썬 순차 탐색 문제 코드 | 순차 탐색 알고리즘 | 파이썬 알고리즘  (0) 2021.01.07
포스팅 할 주제들  (0) 2021.01.03
[ JavaScript ] 구름 IDE 사용법 | 구름 IDE 기초 사용  (0) 2021.01.03
[ JavaScript ] CRUD란? | CRUD 정의ㅣ 개발 기초  (0) 2021.01.01
[ Python ] 백준 2960번 에라토스테네스의 체 풀이  (0) 2020.12.31
'Archive/Develop' 카테고리의 다른 글
  • [ Python ] 파이썬 순차 탐색 문제 코드 | 순차 탐색 알고리즘 | 파이썬 알고리즘
  • 포스팅 할 주제들
  • [ JavaScript ] 구름 IDE 사용법 | 구름 IDE 기초 사용
  • [ JavaScript ] CRUD란? | CRUD 정의ㅣ 개발 기초
코뮤(commu)
코뮤(commu)
코딩으로 커뮤니케이션하는 코뮤입니다 😎
  • 코뮤(commu)
    코뮤(COMMU)
    코뮤(commu)
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Archive
        • Hacking
        • Develop
        • ETC
      • Algorithm
      • DB&Infra
      • ETC
      • Node
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • IT지식보따리
    • IT가 맛있다
    • IT 천재
  • 공지사항

    • 배고픕니다
  • 인기 글

  • 태그

    Oracle
    백준 파이썬
    파이썬
    비박스
    자바스크립트 객체
    장고
    C++
    백준 풀이
    Git
    백준
    카카오 100일 프로젝트
    자바스크립트 API
    파이썬 기초 문제
    Codeup
    코드업
    Django
    오라클
    자바스크립트
    파이썬 문제
    oracle db
    보안뉴스
    파이썬 백준
    Python
    코드업 기초
    코드업 파이썬 기초 100제
    파이썬 기초
    javascript
    docker
    파이썬 알고리즘
    백준 문제풀이
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
코뮤(commu)
[ JSON ] JSON 이란? | JSON 개념 | JSON 예제
상단으로

티스토리툴바