json과 xml의 장점과 단점은 무엇입니까?
json과 xml의 장점과 단점은 무엇입니까?성능에 차이가 있습니까? 즉, 브라우저가 다른 것보다 한 포맷을 더 빨리 처리할 수 있습니까?
요약하면, JSON은 XML보다 훨씬 더 희박합니다. 이것은 몇 가지 긍정적인 부작용을 가지고 있습니다.
- JSON이 해당 XML보다 작습니다.
- 더 JSON 입니다. , .
->
더 분석 분석)석석)
이 질문에 대한 원래의 답변에서, JSON에 대한 저의 견해는 자바스크립트의 견해였고, 저는 그것을 가까운 친척이라고 생각했습니다.그러나 JSON은 독립적인 것이며 JSON.org 은 JSON을 잘 설명합니다.또한 자바스크립트에 대한 호환성 라이브러리를 제공하여 다음과 같은 지원을 추가합니다.JSON.parse
그리고.JSON.stringify
브라우저에서 지원되지 않는 경우.
하는 동안에eval
자바스크립트를 평가하기 위해 사용된 당시(2009년 중반), JSON을 평가할 수도 있었지만, 임의의 자바스크립트가 대신 실행되도록 허용했기 때문에 안전하지 않은 것으로 여겨졌습니다.
JSON은 자바스크립트와의 긴밀한 관계 때문에 브라우저와 플랫폼을 발전시키는 자연스러운 방법으로 아주 적합합니다.
XML은 입력할 수 있기 때문에 더 엄격하다고 여겨질 수 있지만 훨씬 느리게 만드는 것도 이러한 것들입니다(제 생각에는 좀 장황하기도 합니다.하지만 이것이 정말로 원하는 것이라면, 그것을 사용해야 합니다. XML은 똑같이 어디에나 있습니다.
동적 또는 정적 유형에 대한 논쟁은 하지 않겠지만, 이렇게 말하겠습니다.스키마가 없는 데이터 위에 내용을 추가하는 것은 정말 쉽고 스키마가 없거나 없는 것과 관계없이 검증을 수행할 수 있는 다양한 방법이 있습니다.
지금까지 논의에서 본 XML의 장점 중 하나는 XML이 스키마를 가질 수 있다는 것입니다.이것은 XML의 구조를 설명하는 데 큰 가치가 있습니다. 간단한 데이터 구조를 위해서는 JSON과 당신이 무엇을 하고 있는지를 설명하는 약간의 텍스트가 좋습니다.보다 복잡한 데이터 구조로 작업할 때나 데이터의 작성자와 소비자가 같은 팀이 아닐 때 스키마를 사용하면 의사소통에 많은 도움이 됩니다.
또한 스키마가 있으면 데이터를 검증할 수 있으므로 복잡한 오류를 디버그하려고 할 때 생명을 구할 수 있습니다.
"The AJAX response: XML, HTML, 아니면 JSON?"이라는 기사에서 이 주제에 대한 전체 토론이 있습니다.
XML
XML의 가장 중요한 장점은 다른 사용자가 가장 쉽게 읽을 수 있는 형식이라는 것입니다.
두 번째 장점은 XML이 존재한 지 꽤 되었고 많은 개발자들이 이미 XML에 익숙하다는 것입니다.
HTML 페이지에 데이터를 삽입하는 데 필요한 자바스크립트는 매우 상세합니다.
제이손
새면 JSON입니다로 입니다.<script>
tag. 끔찍한 세부 사항에 대해서는 사이먼 윌리슨의 예를 참조하십시오.
자바스크립트에서는 다른 서버에서 오는 문서(XML 또는 HTML)에 접근할 수 없습니다.그러나 JSON 파일을 스크립트 태그로 가져오면 이 문제를 피할 수 있으며 JSON 데이터는 모든 웹 사이트로 가져올 수 있습니다.이것이 좋은 것인지 나쁜 것인지는 비즈니스 목표에 따라 다르지만, 현재로서는 제한 없이 액세스할 수 있는 유일한 데이터 형식입니다.
JSON 데이터용 스크립트는 XML 데이터용 스크립트보다 약간 더 간단하고 나머지 자바스크립트 언어와 약간 더 일치한다는 것이 2차적인 장점입니다.
JSON의 가장 중요한 단점은 형식이 사람이 읽기 매우 어렵다는 것이며, 물론 모든 쉼표, 따옴표, 괄호가 정확한 위치에 있어야 한다는 것입니다.이것은 XML에도 적용되지만, 데이터 스니펫 끝에 있는 }}]와 같이 JSON이 사용하는 복잡한 모양의 구문은 초보자들을 놀라게 하고 복잡한 디버깅을 할 수 있습니다.
의견을 들어보면, JSON은 XML보다 처리 속도가 빠르다고 여겨집니다.
아직 언급되지 않은 XML의 한 가지 장점은 XSLT를 사용하여 임의로 복잡한 XPath 식을 사용하여 XML 문서에서 데이터를 추출할 수 있다는 것입니다.JSON에서 이걸 할 방법이 없어요.JSON 문서에서 "통화" 필드를 직접 하위 필드로 포함하는 모든 개체를 구조 내 어디에서 발생하는지에 관계없이 어떻게 찾겠습니까?XSLT/XPath를 사용하는 XML에서는 이 작업이 매우 쉽습니다.
그러나 브라우저에서 이를 수행하는 것은 대가를 치르게 됩니다.브라우저 고유의 별난 점들을 보게 될 것이고, 아마도 더 느리고 메모리 집약적일 것입니다.
저는 Json을 좋아하고 추천하고 싶지만, 최적의 처리 속도와 근본적인 차이는 없다고 생각합니다.라이브러리와 플랫폼 간의 차이는 더 중요합니다. 좋은 xml 파서가 나쁜 json 파서보다 빠르며 그 반대도 마찬가지입니다.따라서 보통 포맷 자체의 성능은 큰 요인이 되지 않습니다.둘 다 빠르게 빛날 수 있습니다(예를 들어, 자바는 다른 언어들도 마찬가지일 것입니다).
데이터의 종류에 따라 달라지는 콤팩트함에 관해서는, Json은 종종 약간 더 콤팩트하지만, 근본적으로는 그렇지 않습니다.배열/목록이 많은 경우를 제외하고, json 표기법 "{ ... }"이 xml 태깅보다 훨씬 더 압축적입니다(가능한 경우 "1 2 3 4"와 같이 공백을 사용하지 않는 한).
링크에는 차이점에 대한 좋은 시놉시스(아래쪽으로 스크롤)가 있습니다.중요한 사항은 다음과 같습니다.
JSON: small, 모든 유니코드 문자를 나타낼 수 있습니다(xml은 적어도 자체 사양으로는 UTF8에서는 사용할 수 없습니다).(자바스크립트의 eval() 함수 때문에) AJAX 응용 프로그램에서 사용하는 것도 사소한 일이며, 특히 jsonp(응답이 콜백을 호출함)와 같은 고급 기능이 더 많습니다.
XML: 구조를 쉽게 쿼리할 수 있는 도구가 많습니다.더 오래되고 더 자리잡았기 때문에, 전반적으로 더 많은 도구 지원도 있습니다.
일반적으로 이들은 동일한 작업을 수행할 수 있습니다(xml을 통해 jsonp를 수행할 수 있지만 콜백을 수동으로 파싱하기만 하면 됩니다).
JSON: The Fat-Free Alternative to XML을 읽을 수 있습니다. JSON을 사용하면 요청의 발신지와 수신지를 오가는 콜백을 가지고 장난칠 수 있으며 실제로 기존 자바스크립트 코드에서 고통 없이 사용할 수 있습니다.
Json의 또 다른 장점은 <>괄호를 사용하지 않고 html 코드를 많이 혼동하지 않고 넣을 수 있다는 것입니다.
JSON은 가볍고, AJAX 친화적이며(자바스크립트의 하위 집합으로 간주됨) 쉽게 직렬화할 수 있습니다.XML은 우유를 마신 후에 이 모든 것을 합니다.
언급URL : https://stackoverflow.com/questions/584985/what-are-the-advantages-and-disadvantages-of-json-vs-xml-for-ajax-requests
'IT' 카테고리의 다른 글
도커 파일에서 RUN mkdir를 실행할 수 없습니다. (0) | 2023.09.20 |
---|---|
Android에서 사용자 지정 라디오 단추 추가 (0) | 2023.09.20 |
C#에서 참조된 XSD에 대해 XML 유효성 검사 (0) | 2023.09.20 |
오라클에서 날짜를 2개 빼서 시 분 단위로 결과를 얻는 방법 (0) | 2023.09.20 |
이런 C/C++ 농담은 이해가 안 돼요. (0) | 2023.09.20 |