JSON에서 지원하는 데이터 구조는 대부분의 최신 프로그래밍 언어에서도 지원되므로 JSON을 매우 유용한 데이터 교환 형식으로 만듭니다. (비공식) MIME 유형 « 텍스트/json » 또는 콘텐츠 유형 « 텍스트/자바스크립트 »는 또한 많은 서비스 공급자, 브라우저, 서버, 웹 응용 프로그램, 라이브러리, 프레임워크 및 API의 레거시 지원을 받습니다. 주목할만한 예는 구글 검색 API를 포함,[29] 야후!,[29][30] 플리커,[29] 페이스 북 API,[31] 리프트 프레임 워크,[32] 도장 도구 키트 0.4,[33] 기타. Squarespace 사이트의 모든 페이지의 URL에 ?format=json-pretty를 추가하면 사이트의 JSON 데이터를 볼 수 있습니다. 컴퓨팅에서 JavaScript 개체 표기형(JSON) (/îddîîsîn/ « 제이슨 »,[1][2] /îdeîs în/) 은 사람이 읽을 수 있는 텍스트를 사용하여 속성 값 쌍으로 구성된 데이터 객체를 전송하는 개방형 표준 파일 형식입니다. 값)을 참조하십시오. 일부 AJAX 스타일 시스템에서 XML을 대체하는 것을 포함하여 비동기 브라우저-서버 통신에 사용되는 매우 일반적인 데이터 형식입니다. [3] JSON은 데이터 직렬화 형식으로 사용됩니다. 그러나 JavaScript의 비 엄격한 하위 집합으로 디자인하면 JSON 문자열을 JavaScript eval() 함수에 전달하는 것이 안전하다는 오해가 발생할 수 있습니다.

특정 유효한 JSON 문자열이 실제로 유효한 JavaScript 코드가 아니기 때문에 안전하지 않습니다. [34] JSON은 더글러스 크록포드에 의해 대중화 된 자바 스크립트 개체 구문에 따라 텍스트 기반 데이터 형식입니다. 자바 스크립트 개체 리터럴 구문과 밀접하게 유사하더라도 JavaScript와 독립적으로 사용할 수 있으며 많은 프로그래밍 환경에서는 JSON을 읽고 생성할 수 있습니다. 키/값 쌍 « bar » : « Hello »는 키/값 쌍 « foo » 내부에 중첩됩니다. 이는 JSON 데이터의 계층 구조의 예입니다. 표준 파일 확장명은 없지만 일부는 .schema.json을 제안했습니다. [27] 위의 것은 완벽하게 유효한 JSON입니다. 배열 인덱스(예: [0][powers]][0]로 시작하여 배열 항목(구문 분석된 버전)에 액세스하기만 하면 됩니다. JSON 예제는 개체 및 배열로 만들 수 있습니다. 각 개체는 텍스트, 숫자, 부울 등과 같은 다른 데이터를 가질 수 있습니다. 개체 와 배열을 사용하여 다른 JSON 예제를 살펴보겠습니다.

JavaScript 구문은 JSON 표준:[17] 맵, Set, 날짜, 오류, 정규식, 함수, 약속 및 정의되지 않은 여러 네이티브 데이터 형식을 정의합니다. 【주의 1】 이러한 JavaScript 데이터 형식은 다른 데이터 형식으로 표시되어야 하며 양 끝의 프로그램은 형식 간에 변환하는 방법에 동의해야 합니다. 2011년[업데이트]을 기준으로 날짜에서 문자열로 변환하는 등 사실상의 표준이 있지만 보편적으로 인식되는 표준은 없습니다. [22] [23] 다른 언어에는 이러한 유형의 변환을 처리하기 위해 신중하게 직렬화해야 하는 다른 네이티브 형식 집합이 있을 수 있습니다. JSON은 이러한 두 형식이 일반적으로 사용되는 실제 상황에서 생성, 읽기 및 디코딩을 광범위하게 지원하므로 XML에 대한 낮은 오버헤드 대안으로 승격됩니다. [44] XML 외에도 CSV 및 YAML(JSON의 슈퍼세트)을 예로 들 수 있습니다. 또한 Google 프로토콜 버퍼는 데이터 교환 언어가 아니지만 이 역할을 채울 수 있습니다. YAML 버전 1.2는 JSON의 슈퍼셋입니다. 이전 버전은 « 엄격하게 호환되지 않음 »이었다.

예를 들어 백슬래시()를 가진 슬래시(/)를 이스케이프하는 것은 JSON에서 유효하지만 YAML에서는 유효하지 않습니다. JSON을 HTML에 삽입하여 사이트 간 스크립팅 공격으로부터 보호하는 것이 일반적입니다. 그럼에도 불구하고 많은 YAML 구문 분석자는 기본적으로 많은 JSON 인코더의 출력을 구문 분석할 수 있습니다. [45] JSON 또는 자바스크립트 오브젝트 표기는 데이터를 구조화하기 위한 최소한의 읽기 가능한 형식입니다. 주로 XML 대신 서버와 웹 응용 프로그램 간에 데이터를 전송하는 데 사용됩니다.