소개
JSON은 JavaScript Object Nation입니다. 서버와 JavaScript 간의 상호 작용에 매우 적합한 경량 데이터 교환 형식입니다.
JSON은 다양한 언어 간에 구조화된 정보를 전송하는 방법인 XML 및 YAML과 같은 데이터 교환 형식입니다. 반면에 JavaScript 객체는 PHP의 배열, C의 클래스 및 구조와 마찬가지로 JavaScript 언어의 데이터 유형입니다.
JSON 및 자바스크립트 개체 정의
JavaScript 프로그램에서 객체를 정의할 때 객체의 속성 이름을 큰따옴표로 묶을 수도 있고 안 묶을 수도 있습니다. 속성 이름에 특수 문자(예:!, if 등)가 포함된 경우 큰따옴표를 추가해야 합니다.
JSON을 정의할 때 속성 이름을 큰따옴표로 묶어야 합니다.
코드 예:
1. 자바스크립트 객체 정의
JSON으로 변환된 javascript 개체
1. 자바스크립트 객체를 JSON으로 변환
javascript에 내장된 함수를 사용하여 javascript 객체를 JSON으로 변환할 수 있습니다. 이 함수는 JSON.stringify()입니다.
코드 예:
Javascript에서 JSON 구문 분석
이전 버전의 JS에서는 일반적으로 모든 사람이 eval() 함수를 사용하여 JSON을 구문 분석하지만 ECMAScript5는 JSON을 구문 분석하기 위한 새로운 함수 JSON.parse()를 제공합니다.
이 기능의 사용법은 비교적 간단하므로 직접 사용해 볼 수 있습니다. 이 함수를 JSON 문자열에 적용하면 JSON이 JavaScript 객체로 변환됩니다. 즉, typeof 연산자를 사용하여 함수 유형을 볼 때 반환되는 값은 Object입니다.
또 한 가지 주의할 점은 이 기능은 ECMAScript 5 이후에만 지원된다는 점이다. 이전 버전의 브라우저라면 이 기능을 지원하지 않을 수 있다. 해결책은 이 기능을 구현하는 js 파일, 즉 json2.js를 로드하는 것입니다. JQuery 프레임워크인 jQuery.parseJSON()을 사용하는 경우 이 함수는 JSON.parse() 메서드를 호출합니다.
eval() 메소드를 사용하여 JSON을 파싱하는 것에 대해서는 심도 있는 연구를 거쳐 기록하겠습니다.
매우 중요한 개념
프런트엔드 초보로서 "JSON 개체"라는 말을 자주 듣습니다. 그러나 실제로 "JSON 개체"라는 개념은 없습니다. JSON의 실제 형식은 문자열입니다.