JSON.parse()

'{ "name":"John", "age":30, "city":"New York"}';

웹서버에서 이런 텍스트를 전달 받았습니다.

let obj = JSON.parse('{ "name":"John", "age":30, "city":"New York"}');
document.getElementById('demo').innerHTML = obj.name + ', ' + obj.age;

객체가 아니고 텍스트입니다. JSON.parse()텍스트를 자바스크립트 객체로 바꿀 때 사용하죠.

JSON.stringify()

let obj = { name: 'John', age: 30, city: 'New York' };

이런 객체가 있습니다.

let _JSON = JSON.stringify(obj);
document.getElementById('demo').innerHTML = _JSON;

_JSON은 이제 문자열입니다. 이걸 통해 서버(여기서는 html)로 보내는거죠. JSON.stringify()객체문자열로 바꿀 때 사용하죠.

let arr = [ "John", "Peter", "Sally", "Jane" ];
let obj = { name: "John", today: new Date(), city; "New York" }

문자열 뿐만 아니라 위같은 배열이나 날짜도 문자열로 바꿀 수 있습니다.

obj.toString() == JSON.stringify(obj);

똑같은 표현이니 참고하시길 바랍니다.