[자료구조/알고리즘] JSON

JSON

≠ Javascript 객체

키(key)

JavaScript 객체는 따옴표 없이 키를 쓸 수 있다.
반면에, JSON은 키를 쓰기 위해서는 큰 따옴표를 붙여야 한다.

키값(value)

JavaScript 객체는 문자열 값을 쓸 때, 큰 따옴표(""), 작은 따옴표('') 모두 가능
반면에, JSON은 키를 쓰기 위해서는 큰 따옴표("")만 가능

함수(function)

JSON에는 함수(function)가 들어갈 수 없다.

// JavaScript 객체
let obj = {
	key: "key1",
  	key2: 'key2'
}

// JSON
let obj2 = {
	"key": "key1"
  	"key2": "key2"
}

JSON을 이용하는 이유

직렬화(Serialize)때문이다.

JSON.Stringify(menu)

console.log(menu.toString()) // "[object object]"

문제점

"[object object]"
program2.py가 이 내용을 전달받는다면, 해당 정보(JSON)를 도저히 알 방법이 없다.

해결법

어떤 프로그램이든간에, 해당 정보(JSON)을 다 알아볼 수 있게 하려면, 문자열화(serialization)를 시켜야 한다.
그걸 해결해주는 것이 JSON.Stringify()다.

let menu = { "key": "val" }

JSON.stringify(menu);

백슬래쉬()


브라우저 개발자 도구에서 나오는 \는 없는 놈 취급하면 된다. 신경 쓸 필요 없다.

undefined, function

'JSON'은 undefined, function을 취급하지 않는다.

좋은 웹페이지 즐겨찾기