javascript
[javascript] Object vs JSON
잘할수있을거야
2022. 6. 1. 20:50
https://developer.mozilla.org/ko/docs/Web/JavaScript/Reference/Global_Objects/JSON
- JSON이란
js에서 객체의 프로퍼티에 담길 수 있는 값
1. js 자료형에 해당하는 리터럴
2. 객체(객체를 참조하는 변수)
2번의 경우 만약 JSON이라는 기준이 없었다면 네트워크 통신시 obj3객체를 담아 보낸다면 받는 쪽에서는 obj3의 property3_1, property3_2에 해당하는 프로퍼티에 해당하는 값이 무엇인지 알길이 없다.
객체에 프로퍼티에 해당하는 값들이 객체라면 이들을 모두 객체 리터럴로 변경해서 텍스트로 만든 것이 JSON이다.
브라우저에서는 js객체를 JSON으로 변경 시켜주기 위해 JSON.stringify() 메서드를 사용할 수 있다.
JSON은 기존 객체 리터럴 문법에서 프로퍼티명에 " " 를 감싸야 한다. ' '를 감싸면 안된다.
아래의 코드는 JSON문자열을 생성하고 해당 문자열을 JSON.parse() 메서드통해 js객체로 변환하는 코드이다.
' ' 를 감싸서 문자열을 생성하였을 때 JSON을 파싱하지 못한 것을 확인할 수 있다.
또한 JSON에 존재하는 숫자 리터럴은 문자열로 취급되기 때문에 파싱 후 자료형이 string이 된다.
숫자리터럴은 그대로 사용할 수 있다