Dev JSON 1 | 서론, JSON 기본

공부의 기록·2021년 12월 9일
0

Dev JSON

목록 보기
1/4
post-thumbnail

JSON

서론

웹 전반에서 만날 수 있는 문서 형식의 데이터 파일인 JSON, 그 JSON 에 대해서 더 잘 알고 싶어서 API 설계 실무에 바로 적용하는 JSON 을 읽고 본문을 작성하게 되었습니다.

본 도서에서는 이 책에 적합하지 않은 독자 라는 탭이 있습니다.
AJAX 를 위해 JSON 을 호출하고자 하는 사람은 적합하지 않다.
수많은 라이브러리, 프레임워크를 이용해서 JSON 을 이용하고자 하는 사람에게 적합하다.

또한 이 도서에서 담고 있는 내용은 매우 방대하므로, 제 기호에 따라 선택적으로 읽고 포스트를 작성해 나갈 것입니다.

JSON 의 데이터 타입

JSON 은 다음의 데이터 타입을 가진다.

  1. 키-값 쌍 | Key-Value
  2. 객체 | 순서가 정의되지 않은 키-값 쌍의 모임
  3. 배열 | 순서가 정의된 값의 모임
{
  // 키-값 쌍
  "github_link":"https://github.com/unchaptered",
  "github_name":"unchaptered",
  // 객체 | 순서가 정의되지 않은 키-값 쌍의 모임
  "public_data":{
    "age":"secret",
    "name":"secret",
    "like":"potato",
    "dislike":"sweet potato"
  }
  // 배열 | 순서가 정의된 값의 모임
  "like_movies":[
  	"캐리비안의 해적", "나니아 연대기"
  ]
}

JSON 값(Value)의 데이터 타입

  1. object
  2. array
  3. string
  4. number
  5. boolean
  6. null

JSON 문자열

  1. \" | 쌍따옴표
  2. \\ | 역슬래쉬
  3. \/ | 슬래쉬
  4. \b | 백스페이스바
  5. \f | 폼 피드
  6. \n | 줄바꿈 문자
  7. \r | 캐리지 리턴
  8. \t | 탭
  9. \u | 이 이스케이프 문자 뒤에는 4자리 16진수 숫자가 붙는다.

JSON 숫자

  1. 숫자는 항상 10진법을 사용한다.
  2. 숫자는 소수점 ( . ) 으로 시작하는 소수부를 가질 수 있다.
  3. 숫자는 밑을 10으로 하는 지수를 가질 수 있으며, 이 지수는 e 혹은 E 표기법과 플러스 및 마이너스 기호로 나타낸다.
  4. 8진법 및 16진법 표기는 지원하지 않는다.
  5. JS 와는 달리 숫자는 NaN 혹은 무한대 값을 가질 수 없다.

JSON 불(Boolean)

  1. 불값은 true 또는 false 값만을 가질 수 있다.
  2. 콜론 우측에 위치하는 true 와 false 는 쌍따옴표 감쌀 필요가 없다.

JSON 널(Null)

  1. 키 혹은 속성이 아무 값도 갖지 않음을 나타낸다.
  2. 자리를 채우기 위한 목적으로도 사용한다.

JSON 주석

  1. 지원하지 않는다.

JSON 스타일 가이드라인

스타일 가이드라인을 통해서 어떤 식으로 이름을 정하고 포맷팅을 개념적으로 정해놓은지에 대해서 알아보자

키 속성 이름

  1. lowerCamelCaes | Java와 Javascript 커뮤니티에서 강세
  2. snake_case | Ruby and Rails 에서 강세

날짜 속성 값

  1. 일반적으로 RFC 3339 울 따를 것을 요구한다. (구글 기준)
    "2021-12-09T23:46:11-05:00"

  2. RTC 3339는 ISO 8601 의 요약본으로 양자 간의 주된 차이는 ISO 8601 이 T 를 공백문자로 대체할 수 있다는 점이다.
    "2021-12-09 23:46:11-05:00"

위도 경도 값

  1. ISO 6709 표준을 준수할 것을 권고한다. (구글 기준)
    "40.749747-73.985547"
profile
2022년 12월 9일 부터 노션 페이지에서 작성을 이어가고 있습니다.

0개의 댓글