반응형

JSONPath 란 무엇입니까?

JSONPath는 JSON 데이터에서 섹션을 찾고 추출하는 경량 라이브러리입니다. JavaScript와 PHP 모두에서 사용할 수 있습니다

 


JSONPath 얻기

JSONPath 및 JavaScript를 사용하려면 jsonpath.js를 다운로드해야 합니다. http://code.google.com/p/jsonpath/에서 다운로드할 수 있습니다.

다운로드한 후에는 해당 js 파일을 웹페이지에 포함해야 하며 사용할 준비가 된 것입니다.

통사론:

jsonPath(obj, expr [, args])
복사

매개변수:

매개변수설명
obj (객체|배열) 이 매개변수는 JSON 구조를 나타내는 개체를 나타냅니다.
expr (문자열) 이 매개변수는 JSONPath 표현식 문자열을 나타냅니다.
인수(객체|정의되지 않음) 이 매개변수는 객체 제어 경로 평가 및 출력을 나타냅니다. 이 글을 쓰는 시점에서는 단 한 명의 멤버만 지원됩니다.
args.resultType("VALUE"|"PATH") 기본적으로 이 매개변수를 사용하면 결과가 일치하는 값이 됩니다. 그렇지 않으면 정규화된 경로 표현식입니다.

반환 값

반환 값설명
정렬 입력으로 제공된 경로 표현식과 일치하는 값 또는 정규화된 경로 표현식으로 구성된 배열입니다.
거짓 일치하는 항목이 없으면 반환됩니다.

 

JavaScript와 함께 JSONPath를 사용하는 예

우리가 작업할 JSON은 다음과 같습니다.

 { "MovieDatabase": {
  "movie": [
         	  { "name":"The Change-Up",
  "genre": "comedy",
  "director": "David Dobkin",
  "Facebook_like": 252
         	  },
         	  { "name":"Rise of the Planet of the Apes",
  "genre": "SciFi",
  "director": "Rupert Wyatt",
  "Facebook_like": 472
         	  },
         	  { "name":"30 Minutes or Less",
  "genre": "adventure",
  "director": "Ruben Fleischer",
  "Facebook_like": 114
         	  },
         	  { "name":"Final Destination 5",
  "genre": "Horror",
  "director": "Steven Quale",
  "Facebook_like": 241
         	  }
         	  ]
         	  }
         	  }
복사

위 JSON 데이터의 다양한 부분을 찾아 추출하는 JavaScript 코드는 다음과 같습니다. (json.js 파서의 메서드를 사용할 것이므로 해당 메서드도 다운로드하여 포함해야 합니다.)

<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>JavaScript JSONPath example | JSON tutorial | w3resource</title>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script type="text/javascript" src="/JSON/json.js"></script>
<script type="text/javascript" src="/JSON/jsonpath.js"></script>
</head>
<body>
<h1>This is an example of JavaScript with JSONPath</h1>
<script type="text/javascript">
         	  var json = { "MovieDatabase": {
  "movie": [ 
         	  { "name":"The Change-Up",
  "genre": "comedy",
  "director": "David Dobkin",
  "Facebook_like": 252
         	  },
         	  { "name":"Rise of the Planet of the Apes",
  "genre": "SciFi",
  "director": "Rupert Wyatt",
  "Facebook_like": 472
         	  },
         	  { "name":"30 Minutes or Less",
  "genre": "adventure",
  "director": "Ruben Fleischer",
  "Facebook_like": 114
         	  },
         	  { "name":"Final Destination 5",
  "genre": "Horror",
  "director": "Steven Quale",
  "Facebook_like": 241
         	  }
         	  ]
         	  }
         	  };
         	  result = "";
         	  result += jsonPath(json, "$.MovieDatabase.movie[*].director").toJSONString() + "<br />";
         	  //find all directors
         	  result += jsonPath(json, "$..director").toJSONString() + "<br />";
         	  //find all directors
         	  result += jsonPath(json, "$.MovieDatabase.*").toJSONString() + "<br />";
         	  //find all movies
         	  result += jsonPath(json, "$.MovieDatabase..Facebook_like").toJSONString() + "<br />";
         	  //find all facebook lies of all the movies
         	  result += jsonPath(json, "$..movie[(@.length-1)]").toJSONString() + "<br />";
         	  //the last movie in data
         	  result += jsonPath(json, "$..movie[-1:]").toJSONString() + "<br />";
         	  //the last movie in data
         	  result += jsonPath(json, "$..movie[0,1]").toJSONString() + "<br />";
         	  //first two movies
         	  result += jsonPath(json, "$..movie[:3]").toJSONString() + "<br />";
         	  //first three movies
         	  result += jsonPath(json, "$..movie[?(@.genre)]").toJSONString() + "<br />";
         	  //all movies with genre
         	  result += jsonPath(json, "$..movie[?(@.Facebook_like>200)]").toJSONString() + "<br />";
         	  //movies with facebook like more that 200
         	  result += jsonPath(json, "$..*").toJSONString() + "\n";
         	  // all members in the JSON document
         	  document.write(result);
  </script>
  </body>
  </html>
 

 

 

 

 

 

 

출처 : https://www.w3resource.com/JSON/JSONPath-with-PHP.php

반응형

'JSON' 카테고리의 다른 글

온라인 JSON 뷰어  (1) 2023.11.27
JSON의 구조  (1) 2023.11.27
JSON 소개  (1) 2023.11.27
반응형

jsonviewer.stack.hu

이는 아마도 가장 널리 사용되는 온라인 JSON 뷰어일 것입니다. 실제로 폭넓게 사용할 수 있는 기능이 풍부합니다.

이 온라인 뷰어에서 JSON 텍스트를 직접 복사할 수 있습니다. 또는 JOSN 데이터 로드 버튼을 사용하여 URL을 제공할 수 있으며 뷰어는 해당 리소스를 JSON 형식으로 로드합니다. JSON 코드가 뷰어에 표시되면 형식을 클릭하여 코드 형식을 지정할 수 있습니다.

뷰어를 클릭하면 뷰어 모드가 변경되고 왼쪽 창에서 JSON 트리를 확장하거나 축소하여 오른쪽 창에서 이름과 값을 볼 수 있습니다.

텍스트 모드에서는 공백 제거를 클릭하여 JSON 코드를 축소할 수 있습니다.

마지막으로 지우기를 클릭하면 코드를 지울 수 있습니다.

jsoneditoronline.org

jsoneditoronline.org는 또 다른 훌륭한 JOSN 뷰어입니다. 지우기 버튼을 클릭하면 지울 수 있는 기본 JSON 코드가 함께 제공됩니다. 열기를 클릭하여 자신만의 JSON 코드를 로드한 다음 로컬 파일에서 열기(파일 열기)를 선택하고 URL을 형성(URL 열기)할 수 있습니다.

편집기에서 JSON을 클릭하면 오른쪽 창에 JSON 트리로 로드한 코드가 표시됩니다.

그런 다음 트리를 확장하거나 축소하여 JSON 트리의 다양한 구성 요소를 볼 수 있습니다.

편집기에는 JSON 코드의 다양한 구성 요소를 검색하는 데 사용할 수 있는 검색 상자가 있습니다.

저장 버튼을 클릭하면 문제의 문서가 로컬 컴퓨터(기본 다운로드 위치 내)에 저장됩니다.

왼쪽 창에서 가장 왼쪽 버튼은 JSON 코드 형식을 지정하는 것입니다.

그리고 그에 대한 버튼 넷은 모든 공백을 제거하고 컴팩트하게 만드는 것입니다.

온라인 JSON 트리 뷰어 도구

이 도구는 http://www.jquery4u.com/demos/online-json-tree-viewer/에 있습니다. 파일 선택을 클릭하고 JSON 파일을 업로드하거나 복사 및 붙여넣기를 클릭하고 소스에서 JSON 코드를 복사하면 됩니다.

코드가 있으면 JSON 트리 생성을 클릭하여 JSON 코드의 트리 보기를 얻습니다.

이제 JSON 트리를 축소하고 확장할 수 있습니다. 이 도구의 또 다른 좋은 기능은 JSON 트리의 구성 요소를 선택할 때 선택한 JSON 개체의 경로를 보여주는 팝업을 브라우저에서 볼 수 있다는 것입니다.

하지만 이 도구를 사용하여 공백을 저장하거나 지우거나 제거할 수는 없습니다.

JSON 시각화

이것은 http://chris.photobooks.com/json/default.htm에서 사용할 수 있는 풍부한 기능의 온라인 JSON 뷰어입니다. 입력 아래에 JSON 코드를 붙여 넣을 수 있습니다. 로드를 클릭하고 원격에서 JSON 파일을 로드할 수도 있습니다.

렌더링을 클릭하면 출력 라디오 상자에서 선택한 항목에 따라 JSON 또는 HTML이 생성됩니다.

확장/축소를 클릭하면 렌더링된 JSON 트리를 확장하고 축소할 수 있습니다. JSON 구성 요소 중 하나를 클릭하면 JSON 트리에 해당 위치가 표시됩니다.

유효성 검사를 클릭하면 JSON 코드의 유효성이 검사됩니다.

다시 인코딩을 클릭하면 JSON 코드가 다시 인코딩됩니다.

JSON 뷰어

이 도구는 http://www.jsonviewer.com/에서 사용할 수 있습니다. 다른 도구와 마찬가지로 이 도구를 사용하면 URL에서 JSON을 로드하거나 코드를 직접 붙여넣을 수 있습니다. URL에서 로딩은 IE에서만 가능합니다. JSON 데이터 구문 분석을 클릭하면 Json 개체 보기가 렌더링됩니다.

JSON 파서 온라인

http://json.parser.online.fr/에서 이 도구에 액세스할 수 있습니다. 왼쪽 패널에 코드를 붙여넣으면 JSON 트리 wrt 문자열 구문 분석 및 평가를 볼 수 있습니다.

옵션을 클릭하면 메뉴가 열리고 거기에서 다양한 옵션을 선택할 수 있습니다.

이 도구에는 특히 초보자에게 유용한 하나의 잘못된 JSON 샘플을 포함하여 여러 JSON 샘플이 있습니다.

무료 온라인 JSON 파서

http://jsonparser.com/은 이 도구를 제공합니다. 이 도구를 사용하면 코드를 복사하고, 형식을 지정하고, JSON 트리를 볼 수 있으며, 트리를 축소 및 확장할 수 있습니다.

Chrome의 JSONView

이 Chrome용 브라우저 확장 프로그램은 훌륭한 도구입니다. https://chrome.google.com/webstore/detail/jsonview/chklaanhfefbnpoihckbnefhakgolnmc?hl=en에서 얻을 수 있습니다. 상황에 맞는 메뉴를 사용하여 JSON 경로 또는 값을 복사할 수 있습니다.

이것은 Firefox용 확장 기능도 있습니다. https://addons.mozilla.org/EN-us/firefox/addon/jsonview/에서 다운로드할 수 있습니다.

 

 

 

 

 

 

출처 :https://www.w3resource.com/JSON/online-JSON-viewer.php

반응형

'JSON' 카테고리의 다른 글

JSONPath  (1) 2023.11.27
JSON의 구조  (1) 2023.11.27
JSON 소개  (1) 2023.11.27
반응형

JSON이 지원하는 데이터 구조

JSON은 프로그래밍 언어 중에서 널리 사용되는 두 가지 데이터 구조를 지원합니다.

이름/값 쌍의 컬렉션입니다 . 다양한 프로그래밍 언어는 이 데이터 구조를 다양한 이름으로 지원합니다. 객체, 레코드, 구조체, 사전, 해시 테이블, 키 목록 또는 연관 배열과 같습니다.

순서가 지정된 값 목록입니다 . 다양한 프로그래밍 언어에서는 배열, 벡터, 목록 또는 시퀀스라고 합니다.

JSON이 지원하는 데이터 구조는 대부분의 최신 프로그래밍 언어에서도 지원되므로 JSON은 매우 유용한 데이터 교환 형식이 됩니다.

JSON의 데이터 유형

JSON은 다양한 데이터 유형을 지원합니다. JSON 튜토리얼 페이지의 다음 섹션에서 이에 대해 자세히 논의할 것입니다.

물체

통사론:

{ string : value, .......}
복사

구문 설명

객체는 '{' 및 '}'로 시작하고 끝납니다. 그 사이에는 다수의 문자열 값 쌍이 있을 수 있습니다. 문자열과 값은 ':'으로 구분되며, 문자열 값 쌍이 두 개 이상인 경우 ','로 구분됩니다.

{
  "firstName": "Bidhan",
  "lastName": "Chatterjee",
  "age": 40,
  "email":"bidhan@example.com"
			  }

복사

JSON에서 객체는 그 안에 배열('[' 및 ']'로 시작하고 끝남)을 중첩할 수 있습니다. 다음 예는 이를 보여줍니다.

 {
  "Students": [
  
			  { "Name":"Amit Goenka" ,
  "Major":"Physics" }, 
			  { "Name":"Smita Pallod" ,
  "Major":"Chemistry" }, 
			  { "Name":"Rajeev Sen" , 
  "Major":"Mathematics" }
			  ]
			  }

복사

정렬:

통사론:

[ value, .......]
복사

구문 설명:

배열은 '[' 및 ']'로 시작하고 끝납니다. 그 사이에는 여러 값이 있을 수 있습니다. 두 개 이상의 값이 있는 경우 ','로 구분합니다.

[100, 200, 300, 400]
복사

JSON 데이터가 배열을 설명하고 해당 배열의 각 요소가 객체인 경우.

[
			  {
  "name": "Bidhan Chatterjee",
  "email": "bidhan@example.com"
			  },
			  {
  "name": "Rameshwar Ghosh",
  "email": "datasoftonline@example.com"
			  }
			  ]
복사

배열도 객체 내에 중첩될 수 있다는 점을 기억하세요. 다음은 이를 보여줍니다.

 {
  "firstName": "Bidhan",
  "lastName": "Chatterjee",
  "age": 40,
  "address":
			  {
  "streetAddress": "144 J B Hazra Road",
  "city": "Burdwan",
  "state": "Paschimbanga",
  "postalCode": "713102"
			  },
  "phoneNumber":
			  [
			  {
  "type": "personal",
  "number": "09832209761"
			  },
			  {
  "type": "fax",
  "number": "91-342-2567692"
			  }
	  		  ]
 }

복사

통사론:

String || Number || Object || Array || TRUE || FALSE || NULL
복사

값은 문자열, 숫자, 객체, 배열, 부울 값(예: true 또는 false) 또는 Null일 수 있습니다. 이 구조는 중첩될 수 있습니다.

문자열은 백슬래시 이스케이프를 사용하여 큰따옴표로 묶인 0개 이상의 유니코드 문자 시퀀스입니다. 문자는 C 또는 Java 문자열과 유사한 단일 문자열로 표시됩니다.

다음 표에는 지원되는 문자열 유형이 나와 있습니다.

문자열 유형설명
" 큰따옴표입니다.
\ 역고상선
/ 솔리더스
역행 키이
에프 양식 공급
N 개행
아르 자형 운송 반환
가로 탭
4개의 16진수 숫자

숫자

다음 표에는 지원되는 숫자 유형이 나와 있습니다.

숫자 유형설명
정수 양수 또는 음수 숫자.1-9. 그리고 0.
분수 .8과 같은 분수입니다.
멱지수 e, e+, e-, E, E+, E-

공백

공백은 지원되는 데이터 유형 쌍 사이에 배치될 수 있습니다.

 

 

 

 

 

출처 : https://www.w3resource.com/JSON/structures.php

반응형

'JSON' 카테고리의 다른 글

JSONPath  (1) 2023.11.27
온라인 JSON 뷰어  (1) 2023.11.27
JSON 소개  (1) 2023.11.27
반응형
JSON - JavaScript Object Notation

 

 

JSON이란 무엇입니까?

JSON은 경량 텍스트 기반 개방형 표준 데이터 교환 형식입니다. 사람이 읽을 수 있습니다. JSON은 JavaScript 프로그래밍 언어(표준 ECMA-262 제3판 - 1999년 12월)의 하위 집합에서 파생되었습니다. 이는 완전히 언어 독립적이며 대부분의 최신 프로그래밍 언어와 함께 사용할 수 있습니다.

JSON은 웹 서버와 웹 애플리케이션 간의 네트워크 연결을 통해 데이터를 직렬화하고 전송하는 데 자주 사용됩니다. 컴퓨터 과학에서 직렬화는 데이터 구조와 객체를 파일이나 메모리 버퍼에 저장하거나 네트워크 연결을 통해 전송하기에 적합한 형식으로 변환하는 프로세스입니다. 나중에 이 데이터를 검색할 수 있습니다. JSON의 특성으로 인해 반구조화된 데이터를 저장하거나 표현하는 데 유용합니다.

JSON은 표준이며 IETF(International Engineering Task Force)의 RFC4627에 지정되어 있습니다. 이 사양은 2006년 7월 Doglus Crockford가 작성했습니다.

JSON 파일은 .json 확장자로 저장됩니다. JSON의 인터넷 미디어 유형은 "application/json"입니다.

 

 


 

JSON의 모습

{
    "Title": "The Cuckoo's Calling",
    "Author": "Robert Galbraith",
    "Genre": "classic crime novel",
    "Detail": {
        "Publisher": "Little Brown",
        "Publication_Year": 2013,
        "ISBN-13": 9781408704004,
        "Language": "English",
        "Pages": 494
    },
    "Price": [
        {
            "type": "Hardcover",
            "price": 16.65
        },
        {
            "type": "Kidle Edition",
            "price": 7.03
        }
    ]
}

 

 


기본 구성

  • JSON에는 네 가지 기본 및 내장 데이터 유형이 있습니다. 문자열, 숫자, 부울(즉, true 및 false) 및 null입니다. 게다가 구조화된 데이터 유형에는 객체와 배열이라는 두 가지 데이터 유형이 있습니다.
  • 객체는 '{' 및 '}' 내에 래핑됩니다. 배열은 '[' 및 ']'로 묶입니다. 객체는 레이블-값 쌍의 목록입니다. 배열은 값의 목록입니다.
  • 객체와 배열 모두 중첩될 수 있습니다.
  • 문자열, 숫자, 부울(즉, true 및 false) 및 null을 값으로 사용할 수 있습니다.

다음 이미지와 다음 텍스트는 JSON 데이터 구성 방법을 시작하는 데 유용합니다.

따라서 위에 표시된 JSON 데이터의 전체 내용은 개체 내에 포함됩니다. "Title": "The Cuckoo's Calling", "Author": "Robert Galbraith", "Genre": "고전 범죄 소설", 이는 쉼표로 구분된 레이블-값 쌍입니다. 라벨과 해당 값은 콜론(:)으로 구분됩니다. 레이블과 값은 모두 문자열이므로 따옴표로 묶습니다.

그런 다음 '세부정보' 라벨을 확인하세요. 여기에는 여러 레이블-값 쌍이 포함된 또 다른 개체가 포함됩니다. 이것은 JSON에서 중첩(이 경우 객체 내의 객체)이 수행되는 방법의 예입니다.

그런 다음 '"Price"' 라벨에는 배열이 포함되어 있으며, 이는 차례로 두 개의 개별 객체를 포함합니다. 중첩의 또 다른 예입니다. 또한 숫자는 따옴표로 묶이지 않습니다.

 


 

JSON의 역사

JSON을 대중화한 뒤에는 Douglas Crockford가 있습니다. 그는 2001년경 그의 회사 State Software인 JSON을 사용했습니다.

2005년에 Yahoo는 웹 서비스에 JSON을 사용하기 시작했습니다.

2006년 후반에 Google은 Gdata 웹 프로토콜에서 JSON을 제공하기 시작했습니다.

오늘날 JSON은 웹에서 가장 널리 사용되는 데이터 교환 형식 중 하나이며 대부분의 웹 API(트위터 API 등)에서 지원되어 공개 데이터를 가져와서 애플리케이션을 생성합니다.

 


 

관계형 데이터베이스와의 비교

JSON은 데이터를 호스팅/표시하는 데 사용되므로 MySQL, SQL Server 등과 같은 RDBMS 시스템에서 사용되는 기존 관계형 데이터베이스 모델과 다릅니다.


처리하려는 데이터의 유형과 구조에 따라. 특정 기능과의 비교

  • 구조 : 관계형 데이터베이스에서 행과 열 형태로 데이터를 저장하는 역할을 하는 테이블입니다. JSON은 객체와 배열을 사용합니다. 객체는 레이블-값 쌍이고 배열은 값 목록입니다. 재귀적으로 중첩될 수 있습니다.
  • 메타데이터(Metadata) : 관계형 데이터베이스에서 저장될 데이터의 구조와 유형에 대한 데이터를 저장하는 데 사용되는 스키마이며 스키마는 미리 정의되어 있습니다. 즉, 데이터베이스 및 테이블 생성 시 생성되기 전에 생성됩니다. 데이터를 저장합니다. JSON은 스키마를 사용하여 표시할 데이터의 구조와 유형을 정의할 수도 있지만 미리 정의되어 있지는 않습니다. 대부분의 경우 자체 설명적이며 스키마를 사용하더라도 관계형 데이터베이스에 사용되는 스키마보다 훨씬 더 많은 유연성을 제공합니다. 하지만 이것이 관계형 데이터베이스에 비해 JSON의 장점이라고 말하는 것은 판단적일 것입니다. 미리 정의된 스키마가 있으면 처리할 데이터에 따라 여러 가지 이점이 있을 수 있습니다.
  • 데이터 검색 : 관계형 데이터베이스는 관계형 대수학을 기반으로 하는 표현력이 뛰어나고 매우 강력한 언어인 구조적 쿼리 언어를 사용하여 데이터베이스에서 데이터를 가져옵니다. JSON에는 저장된 데이터를 쿼리하기 위해 널리 사용되거나 허용되는 언어가 없습니다. JAQL 및 JSONiq는 주로 JSON에서 데이터를 쿼리하기 위해 작업 중인 많은 쿼리 언어입니다.
  • 정렬 : 관계형 데이터베이스의 경우 SQL이 작업을 수행합니다. JSON의 경우 배열을 자주 사용하기 때문에 프로그램에서는 배열을 정렬할 수 있다.
  • 응용 프로그램 : MySQL, POstgreSQL, SQL Server, Oracle, DB2 등과 같은 상용 관계형 데이터베이스 시스템뿐만 아니라 오픈 소스도 많이 있습니다. JSON은 대부분 프로그래밍 언어에 적용됩니다. 그러나 NoSQL 시스템도 있습니다. NoSQL 시스템은 JSON 형식을 사용하여 데이터를 저장합니다. NoSQL 시스템 중 일부는 JSON 형식을 사용합니다(MongoDB, CoucheDB 등).
  • 학습 곡선 : JSON은 여기서 확실한 승자입니다. 여기에 사용된 기본 데이터 유형 및 구조는 많은 프로그래밍 언어에서 사용되는 것과 유사하기 때문에 프로그래밍 배경 지식을 갖고 있다면 JSON을 매우 빠르게 익힐 수 있을 것임이 분명합니다. 반면 RDBMS는 별도의 연구 분야입니다. 그러나 확실히 관계형 데이터베이스 학습에 투자한 시간은 여러 가지 기회와 이점을 제공합니다.

JSON 대 XML

XML은 데이터 교환 형식으로도 널리 사용되므로 이들 간의 비교를 시도해 보겠습니다. 비교의 목적은 확실히 어느 것이 더 낫다는 것이 아니라 특정 종류의 데이터를 저장하는 데 어떤 것이 적합한지 이해하려고 노력할 것입니다.

  • XML은 JSON보다 표현력이 더 뛰어납니다. XML은 때때로 태그를 반복적으로 사용하는 데 어려움을 겪습니다. 반면 JSON은 훨씬 더 간결합니다.
  • XML은 JSON보다 더 복잡합니다.
  • DTD 및 XSD와 같이 XML에 대한 스키마(메타데이터)를 정의하는 여러 사양이 있습니다. JSON 스키마는 JSON에 대해 동일한 작업을 수행하기 위해 존재하지만 XML 스키마만큼 널리 사용되지는 않습니다.
  • XML은 대부분의 프로그래밍 언어에서 JSON으로 사용할 수 있습니다. 그러나 요점은 XML로 작업할 때 실제로 데이터 구조가 다른 두 시스템을 일치시키려고 한다는 것입니다. 하지만 JSON의 경우 객체와 배열이 사용되는 기본 데이터 구조이므로 프로그램에서 쉽게 작업할 수 있습니다.
  • XML 문서의 특정 부분을 선택하기 위해 XPath라는 표준 사양이 있습니다. 이것은 널리 사용됩니다. JSON에는 동일한 작업을 수행하는 JSONPath가 있지만 널리 사용되지는 않습니다.
  • XML에는 XML 데이터 쿼리를 위한 Xquery 사양이 있습니다. JSON에는 JAQL, JSONiq 등이 있지만 널리 사용되지는 않습니다.
  • XML에는 XML 문서에 스타일을 적용하는 데 사용할 수 있는 XSLT 사양이 있습니다. JSON에는 그런 것이 없습니다.

 


 

 JSON을 사용하는 이유

 

  1. 사람이 읽을 수 있는 형식 : JSON은 개발자와 비개발자 모두 쉽게 읽고 이해할 수 있는 간단한 텍스트 기반 구조를 사용합니다. 사람이 읽을 수 있는 이 형식은 협업을 강화하고 디버깅을 단순화합니다.
  2. 언어에 구애받지 않음 : JSON은 특정 프로그래밍 언어에 묶여 있지 않습니다. 이는 거의 모든 최신 프로그래밍 언어로 구문 분석하고 생성할 수 있는 범용 데이터 형식으로 매우 다양합니다.
  3. 데이터 구조 일관성 : JSON은 키-값 쌍, 배열 및 중첩 객체를 사용하여 데이터에 대해 일관된 구조를 적용합니다. 이러한 일관성 덕분에 다양한 프로그래밍 시나리오에서 예측 가능하고 쉽게 작업할 수 있습니다.
  4. 브라우저 지원 : JSON은 웹 브라우저에서 기본적으로 지원되므로 웹 애플리케이션이 서버와 원활하게 통신할 수 있습니다. 이 기본 지원은 웹 개발에 채택되는 데 크게 기여했습니다.
  5. JSON API : 많은 웹 서비스와 API는 기본적으로 JSON 형식으로 데이터를 제공합니다. 이로 인해 웹 개발에서 데이터 교환을 위한 선택으로 JSON의 역할이 더욱 확고해졌습니다.
  6. JSON 스키마 : 개발자는 JSON 스키마를 사용하여 JSON 데이터의 구조를 정의하고 검증하여 애플리케이션에 명확성과 신뢰성을 한층 더 높일 수 있습니다.

 

 

 

 

참고 : https://www.w3resource.com/JSON/introduction.php

반응형

'JSON' 카테고리의 다른 글

JSONPath  (1) 2023.11.27
온라인 JSON 뷰어  (1) 2023.11.27
JSON의 구조  (1) 2023.11.27

+ Recent posts