JSON 예제

JSON은 데이터 형식의 배열을 지원합니다. JSON 자습서의 이 페이지의 다음 섹션에서 자세히 설명합니다. 위의 JSON 텍스트도 YAML로 완전히 유효합니다. YAML은 또한 {}, []및 „마크와 들여쓰기“와 같은 중첩 된 구분 기호를 대체하여 보다 인간에 액세스할 수 있도록 하려는 대체 구문을 제공합니다. [45] JSON 또는 자바스크립트 오브젝트 표기는 데이터를 구조화하기 위한 최소한의 읽기 가능한 형식입니다. 주로 XML 대신 서버와 웹 응용 프로그램 간에 데이터를 전송하는 데 사용됩니다. 스퀘어스페이스는 JSON을 사용하여 CMS로 만든 사이트 콘텐츠를 저장하고 구성합니다. 아래의 XML 예제는 데이터 형식을 인코딩하지 않으며(예: 해당 연령이 숫자임) 위의 JSON 예제와 동일한 정보를 인코딩하려면 스키마와 같은 것이 필요합니다. 여기서 x의 속성 a의 상속은 xi에서 재정의되고 아무 것도 상속되지 않은 것처럼 거의 작동하게 됩니다. JSON.stringify 자체는 상속된 값을 무시합니다 – Object.keys(y)에서 제공한 대로 열거 가능한 자체 속성만 변환합니다. 상속을 인코딩하지 는 않지만 기본 문자열화는 정의되지 않은 값을 제외한) 개체를 충분히 인코딩하여 상속을 알고 있는 환경에서 재구성할 수 있습니다. 명시적 정의되지 않은 값을 포함하는 JavaScript 개체를 인코딩하려면 „UNDEFINED“ 문자열에 매핑하는 것과 같이 정의되지 않은 값을 나타내는 규칙을 설정해야 합니다. 그런 다음 JSON.stringify 선택적 대체 인수를 통과하여 이 규칙으로 번역할 수 있습니다.

이렇게 하면 임의 정밀도의 수가 직렬화될 수 있지만 이식성 문제가 발생할 수 있습니다. 예를 들어 정수 값과 부동 소수점 값 간에 는 분화가 이루어지지 않으므로 일부 구현에서는 42, 42.0 및 4.2E+1을 동일한 숫자로 처리하지만 다른 구현은 그렇지 않을 수 있습니다. JSON 표준은 오버플로, 언더플로우, 정밀도 손실, 반올림 또는 서명된 제로와 같은 구현 세부 사항에 대한 요구 사항을 제공하지 않지만 „양호한 상호 운용성“에 대해 IEEE 754 binary64 정밀도를 더 이상 기대하지 않는 것이 좋습니다. 부동 소수점 번호(예: binary64)의 기계 수준 이진 표현을 사람이 읽을 수 있는 소수점 표현(예: JSON의 숫자)으로 직렬화하고 다시 이 작업을 수행하는 게시된 알고리즘이 있기 때문에 고유한 정밀도 손실이 없습니다. 정확하고 최적으로. [20] 참고: 위에서 본 JSON을 JSONTest.html 예제의 변수 내에서 사용할 수 있도록 했습니다(소스 코드 참조). 이를 로드한 다음 브라우저의 JavaScript 콘솔을 통해 변수 내부의 데이터에 액세스해 보십시오. JSON은 언어 독립적인 데이터 형식입니다. JavaScript에서 파생되었지만 많은 최신 프로그래밍 언어에는 JSON 형식 데이터를 생성하고 구문 분석하는 코드가 포함되어 있습니다. JSON의 공식 인터넷 미디어 유형은 응용 프로그램 / json입니다.

JSON 파일 이름은 확장자 .json을 사용합니다. 다음 예제 모두 위의 JSON 예제와 동일한 종류의 정보를 여러 가지 방법으로 전달합니다. 더 많은 JSON 예제. JSON 예제는 개체 및 배열로 만들 수 있습니다. 각 개체는 텍스트, 숫자, 부울 등과 같은 다른 데이터를 가질 수 있습니다. 개체 와 배열을 사용하여 다른 JSON 예제를 살펴보겠습니다. 예를 들어 superHeroes라는 변수로 구문 분석된 이 개체를 JavaScript 프로그램에 로드한 경우 JavaScript 개체 기본 문서에서 살펴본 것과 동일한 점/브래킷 표기법으로 내부 데이터에 액세스할 수 있습니다.