HTML vs XML vs JSON
HTML: 웹페이지 구축을 위한 태그- 코드 작성 및 페이지 요청/응답 처리 수행 편리
- 처리결과를 바로 페이지에 추가 가능
- 웹브라우저 아닌곳에는 사용 불가
- 요청이 같은 도메인 주소로부터 호출해야함
XML: 태그형태로 데이터를 저장(HTML코드보다 문법에 제한적)- 유연한 데이터 타입(다양한 태그 사용가능)
- 다양한 응용 프로그램들 사이에서 데이터 교환 가능
- 전달하려는 데이터보다 태그의 크기가 더 크다(코드 작성량 증가, 처리속도 감소)
- 요청이 같은 도메인 주소로부터 호출해야함
JSON: JS 객체 표현식 (JavaScript Object Notation)- JavaScript 문법을 따르고있음
- 요청이 다른 도메인 주소로부터 호출 가능
- HTML/XML보다 간결한 데이터 표현 => 최근 데이터처리 표준형태로 사용되고 있음
- 문법에 예민함(기본적인 문법 숙지 필요)
- JS 코드를 포함 가능(악의적인 데이터파일 포함가능)
JSON 문법
- 데이터 저장 ➡️ 속성(key) : 값(value) 데이터 쌍으로 구성(단순 텍스트 형태)
- ➡️ 속성은 "" 표시, 값은 데이터 타입에 따라서 변경
- JSON객체 저장 => { "속성":값, "속성":값,..... } 사용하여 표시 - 객체.attribute
- JSON배열 저장 => [ "속성":값, "속성":값,..... ] 사용하여 표시 - 객체[0].attribute
JSON 문법 - 사용가능한 데이터타입
- 정수(2,8,16 진수 사용x) - 10진수만 가능
- 실수(고정소수점 3.123, -9.33 / 부동소수점 1e4, 2.5E-5)
- Boolean(true/false)
- Null값
- 문자열(""로 표시되는 0개이상의 유니코드문자, 이스케이프 문법지원(/, /n, /r, /t))
- 객체
- 배열
객체 안에 배열 | { "속성":["속성":값,...] } |
배열 안에 객체 | [ {"속성":값} ] |
- Data(날짜 정보) 타입 지원x => 다른형태로 변경 후 저장가능(정수, 문자열)