관리 메뉴

Life goes slowly...

[Js] 자바스크립트 데이터 파싱 - JSON.parse() 본문

프로그래밍/Javascript

[Js] 자바스크립트 데이터 파싱 - JSON.parse()

빨강소 2020. 9. 24. 00:08
728x90
반응형

JSON (JavaScript Object Notation)

데이터 오브젝트를 전달하기 위해 텍스트를 사용하는 개방형 표준 포맷으로, 비동기 브라우저/서버 통신(Ajax)를 위해 XML를 대체하는 주요 데이터 포맷입니다. JavaScript에서 XML을 쓰기 어렵고 웹 개발 환경에서도 사용하기 편하도록 보완한 형식이 JSON입니다.

요즘은 스프링 부트와 스프링에서 XML의 장점과 JSON의 장점을 가지고 환경 파일에서 XML의 대체 형식으로 떠오르는 YAML(야믈)을 지원하고 있습니다. JavaScript 에서부터 파생되어 JavaScript 구문의 형식을 따르지만 독립적인 데이터형식 포맷이기 때문에 C, C++, Java, Python 등 다양한 프로그래밍 언에서 활용이 가능합니다.

 

 

JSON.parse()

문자열을 JSON으로서 구문 분석하고, 선택적으로 분석 결과의 값과 속성을 변환하여 반환합니다.

JSON.parse()메서드는 JSON 문자열의 구문을 분석하고, 그 결과에서 자바스크립트 값이나 객체를 생성합니다. 선택적으로 reviver함수를 인수로 전달할 때에 결과를 반환하기 전에 변형할 수 있습니다.

const json = '{"result":true, "count":111}';
const obj = JSON.parse(json);

console.log(obj.count);
// expected output: 111

console.log(obj.result);
// expected output: true

 

JSON.stringify()

주어진 값에 해당하는 JSON 문자열을 반환합니다. 선택사항으로 특정 속성만 포함하거나 사용자 정의 방식으로 속성을 대체합니다.

JSON.stringify()메서드는 자바스크립트 값이나 객체를 JSON 문자열로 변환하고 선택적으로 replacer를 함수로 전달할 경우 변환 전 값을 변형할 수 있습니다. 배열로 전달할 경우 지정한 속성만 결과에 포함합니다.

console.log(JSON.stringify({ x: 5, y: 6 }));
// expected output: "{"x":5,"y":6}"

console.log(JSON.stringify([new Number(3), new String('false'), new Boolean(false)]));
// expected output: "[3,"false",false]"

console.log(JSON.stringify({ x: [10, undefined, function(){}, Symbol('')] }));
// expected output: "{"x":[10,null,null,null]}"

console.log(JSON.stringify(new Date(2006, 0, 2, 15, 4, 5)));
// expected output: ""2006-01-02T15:04:05.000Z""
728x90
반응형
Comments