본문 바로가기
개발/Javascript

JSON(JavaScript Object Notation)

by 안뇽! 2021. 9. 11.
반응형

사실 이글을 보는 것 보다 공식문서를 가는게 가장 좋다. 한국어로 설명되어 있다.

공식문서가 좀 딱딱한 면이 있어서 쉬운 글을 보고 싶다면 계속 읽어보자.

 


JSON

사용하는 이유 :

  • 단순히 데이터 주고 받기 편하게 싹 문자열로 바꿔서 전송함. JSON을 사용함으로써, 다른 언어끼리도 정보를 주고받을 수 있다.

 

기본자료형 :

  • Number
  • String : 큰따옴표(")를 사용해야 하고 역슬래시 이스케이프 문법 지원
  • Boolean
  • Array 
  • Object : { Key : Value } 일 때, Key는 무조건 문자열(쌍따옴표 사용)이다.
  • null

규칙 

  • JSON의 키는 반드시 큰 따옴표를 붙여야 하고 문자열도 큰 따옴표로 감싸야 한다.
  • JSON은 키와 값 사이, 그리고 키-값 쌍 사이에는 공백이 있어서는 안된다.
{
	"이름":"테스트",
    "나이":25,                                 // number 가능
    "특기":["축구","기타"]                         // array 가능
    "성적":{"열역학":"A+","재료역학":"A+","유체역학":"A+","동역학":"A+"}     
    // object 가능
    "군필":true 													 
    // boolean 가능
}

 

메소드 

  • JSON.stringify : Object type을 JSON으로 변환
  • JSON.parse : JSON을 Object type으로 변환
let boy = {name:"june",age:24};

boyJson = JSON.stringify(boy) //문자열로 바뀐걸 알 수 있음.
//'{"name":"june","age":23}'

console.log(boyJson)               //console.log('hello') 도 hello로 나옴
//{"name":"june","age":23}

typeof boy 
// 'object'


JSON.stringify(typeof boy) 
//'"object"'

JSON.parse(boyJson)
//{name:"june",age:24};

JSON.parse(boy) 
// JSON이 아닌것을 JSON.parse하려 하면 에러나옴. 
// 이 에러 모양 기억해두자. 익스프레스에서 종종 보이더라
//VM540:1 Uncaught SyntaxError: Unexpected token o in JSON at position 1
//   at JSON.parse (<anonymous>)
//  at <anonymous>:1:6
반응형