JSON در برابر XML

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

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

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

مثال JSON

1{"employees":[
2  { "firstName":"John", "lastName":"Doe" },
3  { "firstName":"Anna", "lastName":"Smith" },
4  { "firstName":"Peter", "lastName":"Jones" }
5]}

مثال XML

 1<employees>
 2  <employee>
 3    <firstName>John</firstName> <lastName>Doe</lastName>
 4  </employee>
 5  <employee>
 6    <firstName>Anna</firstName> <lastName>Smith</lastName>
 7  </employee>
 8  <employee>
 9    <firstName>Peter</firstName> <lastName>Jones</lastName>
10  </employee>
11</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 را تبدیل می‌کند

منابع آموزشی