JSON

JSON(JavaScript Object Notation) 은 data λ₯Ό μ €μž₯ν•˜κ³  κ΅ν™˜ν•˜κΈ° μœ„ν•œ κ²½λŸ‰μ˜ ν…μŠ€νŠΈ 기반의 data format 이닀. 본래 JavaScript 의 객체 ν‘œκΈ°λ²•μ—μ„œ νŒŒμƒλ˜μ—ˆμ§€λ§Œ, programming language 와 platform 에 λ…λ¦½μ μœΌλ‘œ μ‚¬μš©ν•  수 μžˆλŠ” data format 이닀.

μ£Όμš” νŠΉμ§•μœΌλ‘œλŠ” λ‹€μŒκ³Ό κ°™λ‹€.

  1. ν‚€-κ°’ ꡬ쑰
    • JSON λ°μ΄ν„°λŠ”Β key:valueΒ ν˜•νƒœλ‘œ ꡬ성됨
    • key λŠ” λ¬Έμžμ—΄μ΄λ©°, 항상 double-quotes("") μ•ˆμ— 있음
    • value λŠ” 숫자, λ¬Έμžμ—΄(double-quotes), boolean, nested JSON object, array, null κ°€λŠ₯
  2. 객체와 λ°°μ—΄ 지원:
    • 객체(Object)λŠ” μ€‘κ΄„ν˜ΈΒ {} 둜 묢이며 μ—¬λŸ¬ property λ₯Ό 포함할 수 있음
    • λ°°μ—΄(Array)은 λŒ€κ΄„ν˜ΈΒ [] 둜 묢이며 μˆœμ„œκ°€ μžˆλŠ” κ°’μ˜ 집합을 ν‘œν˜„
Example

μ‚¬μš© μ˜ˆμ‹œλŠ” λ‹€μŒκ³Ό κ°™λ‹€.

{
  "id": 12345,                      // Number
  "name": "Alice",                  // String
  "isActive": true,                 // Boolean
  "profile": {                      // Nested JSON Object
    "age": 30,
    "city": "New York",
    "skills": ["JavaScript", "Python", "SQL"]
  },
  "hobbies": ["reading", "traveling", null], // λ°°μ—΄(Array)
  "partner": null                   // null κ°’
}