2009-10-16 4 views

답변

5

JSON은 일반적으로 XML보다 효율적인 데이터 인코딩 방법입니다. 다운로드 시간이 응용 프로그램과 관련이 있다면 중요합니다.

또 다른 고려 사항은 E4X 쿼리 구문이 특정 용도에 대해 장점이 있는지 여부입니다. 단일 쿼리 행의 결과를 반복하여 원하는대로 수행 할 수 있으며 파싱 된 JSON을 개입 할 때 동등한 ActionScript 코드가 더 길어질 수 있습니다.

또한 Flash 앱이 브라우저에 있으며 페이지의 다른 것들과 통신해야하기 때문에이 앱이 JavaScript 코드와 상호 작용해야하는지 여부도 고려할 것입니다. 그렇다면 브라우저 JS에서 XML을 다루는 것이 (JSON 1.8과 E4X가 반대) JSON을 다루는 것보다 훨씬 어렵 기 때문에 JSON을 사용한다.

2

XML은 많은 데이터입니다. 90 %의 하이퍼 텍스트와 10 %의 데이터입니다.

  1. 그것은 작은 :

    JSON 여기이 큰 장점이 있습니다. 즉, 대역폭 사용량이 적어집니다 (AJAX의 경우보다 우수한 응답 시간, 우수한 응답 시간)

  2. JavaScript의 하위 집합이므로 구문 분석에 필요한 것은 모두

    과 같은 eval() 함수 호출입니다.

result = eval(resultStr); var age = result.clients[2].age;

나는 definetely JSON을 recoomend.

+5

eval()을 사용하여 JSON을 구문 분석하는 것은 보안 상 위험 할 수 있습니다. 데이터 소스를 신뢰할 수 있다고 확신하는 경우에만 수행하십시오. 그렇지 않으면 다른 사람이 응용 프로그램에 코드를 삽입 할 수있는 방법을 제공합니다. XSS라고 할 수 있니, 애들? 나는 네가 할 수있을 거라 생각했다. –

1

JSON은 JavaScript Object Notation을 의미합니다 ... JSON의 확실한 이점은 ECMAScript (ActionScript 포함)의 객체 의미를 캡처한다는 것입니다 ... E4X는 ActionScript에서 XML 객체가 어떻게 든 좋게 느껴지도록 도와줍니다.

내가 <node attribute="value"><child/><node> 인 경우, 정말로 말할 수는 없지만 ... child 속성입니까? 길이 1 배열에 항목입니까? nodename node을 어떻게 평가합니까? 그것은 더 작고 더 가벼운 ... 그리고 결정적인 하나

JSON 문자열은

그 외에도

, 거기에 allready 언급 한 장점 ...하는 XML하지 않는 ... 익명의 ActionScript 객체를 나타냅니다 ...이 XML의 경우에는 해당되지 않습니다 JSON 인에 대해서는, 숫자 및 부울 값을 캡처 할 수있는 이점 ... attrib="123" 문자열 123 또는 정수 123을 의미 할 수있다 ... 같은 일 true, falsenull ...

에 대한
2

또 다른 주요 이점은 구문 분석 속도입니다. 대량의 xml을 파싱하는 것은 특히 E4X에서는 매우 느리고 모바일 장치에서는 훨씬 더 빠릅니다. 나는 같은 데이터를 표현하기 위해 xml 대신 json을 사용하여 약 10 배의 속도 증가를 관찰했다. 이 경우 데이터는 1.5 MB zip 압축되었습니다.