JSON در برابر XML

از موتو کد، دانشنامهٔ برنامه‌نویسی

هم JSON و هم XML را می‌توان برای دریافت داده‌ها از یک وب سرور استفاده کرد. [۱]

JSON و XML زیر، هر دو یک شیء کارمندان (employees) تعریف می‌کنند که شامل یک آرایه از ۳ کارمند می‌شود:

مثال JSON[ویرایش | ویرایش]

{"employees":[
  { "firstName":"John", "lastName":"Doe" },
  { "firstName":"Anna", "lastName":"Smith" },
  { "firstName":"Peter", "lastName":"Jones" }
]}

مثال XML[ویرایش | ویرایش]

<employees>
  <employee>
    <firstName>John</firstName> <lastName>Doe</lastName>
  </employee>
  <employee>
    <firstName>Anna</firstName> <lastName>Smith</lastName>
  </employee>
  <employee>
    <firstName>Peter</firstName> <lastName>Jones</lastName>
  </employee>
</employees>

JSON شبیه به XML است چون[ویرایش | ویرایش]

  • هر دوی آنها یعنی JSON و XML خود تشریح (خوانا بودن برای انسان) هستند
  • هر دوی آنها یعنی JSON و XML به صورت سلسله مراتبی هستند (مقادیر درون مقادیر)
  • هر دوی آنها یعنی JSON و XML را می‌توان با بسیاری از زبان‌های برنامه‌نویسی تبدیل کرد
  • هر دوی آنها یعنی JSON و XML می‌توانند با یک XMLHttpRequest استفاده شوند

JSON شبیه به XML نیست چون[ویرایش | ویرایش]

  • JSON از تگ بسته در انتها استفاده نمی‌کند
  • JSON کوتاه‌تر است
  • برای خواندن و نوشتن، JSON سریعتر است
  • JSON می‌تواند از آرایه‌ها استفاده کند

بزرگترین تفاوت این است که:

XML می‌بایست با یک XML parser یا تبدیل کننده XML تبدیل شود. JSON می‌تواند با یک تابع استاندارد جاوا اسکریپت تبدیل شود.

چرا JSON بهتر از XML است[ویرایش | ویرایش]

تبدیل XML نسبت به JSON سخت‌تر است

JSON به یک شیء آماده برای استفاده جاوا اسکریپت تبدیل می‌شود.

برای نرم‌افزارهایی که با تکنولوژی AJAX نوشته شده‌اند، JSON هم سریعتر است و هم استفاده از آن آسان است:

با استفاده از XML

  • دریافت یک فایل XML
  • استفاده از XML DOM برای ایجاد حلقه در سند
  • استخراج مقادیر ذخیره شده در متغیرها

استفاده از JSON

  • دریافت یک رشته متنی به صورت JSON
  • متد JSON.Parse رشته متنی JSON را تبدیل می‌کند

منابع آموزشی[ویرایش]