در بخش قبل گفتیم که JOSN و XML هر دو برای ذخیره و انتقال اطلاعات متنی به کار می روند . اما JSON روش جدیدتری بوده و به عنوان جایگزینی برای XML معرفی شده است . در لیست زیر به بررسی اختلافات و شباهت های این دو نوع تکنولوژی پرداخته ایم :
مثال : در هر دو مثال زیر که یکی با جیسون و دیگری با XML نوشته شده است ، یک شی ( Object ) به نام employees را که شامل سه عضو آرایه ای است را تعریف کرده ایم . به حجم کدنویسی و ساختار آنها دقت نمایید ، کد جیسون کم حجم تر و ساده تر است :
هر دو زبان XML و JSON خود تعریف ( Self Describing ) هستند . یعنی فهمیدن و خواندن آنها برای انسان راحت و قابل درک است . هر دو زبان XML و JSON از ساختار سلسله مراتبی ( درختی ) برای ذخیره اطلاعات استفاده می کنند ( یعنی مقدار در مقدار ) . هر دو زبان XML و JSON توسط زبان های برنامه نویسی مختلف قابل خواندن هستند . هر دو زبان XML و JSON توسط یک شی XMLHttpRequest قابل بازیابی و خواندن هستند .
JSON بر خلاف XML دارای تگ انتهایی نیست . ساختار دستوری JSON بسیار کوتاه تر می باشد . JSON برای خواندن بسیار راحت تر و سریعتر است . JSON می تواند از آرایه ها استفاده کند ( بر خلاف XML ) . اما مهمترین اختلاف این است که XML باستی توسط یک پرادزشگر XML خوانده شود ، ولی JSON به راحتی توسط یک تابع ساده جاوا اسکریپت قابل دسترسی و بازیابی است .
به طور کلی استفاده از JSON برای خواندن و ذخیره اطلاعات بسیار بهتر و سریعتر است . اما در Ajax این مورد ، بسیار پر رنگ تر به نظر می رسد . فرض کنید اطلاعات یکسانی را در دو فرمت XML و JSON دارید . برای بازیابی و خواندن هر دو فرمت اطلاعات بایستی مراحل زیر را انجام دهید . همانطور که مشاهده می کنید کار در JSON راحت تر و سریع تر است :
خواندن و بازیابی فایل XML . استفاده از یک شی XML DOM برای حرکت در فایل و یافتن اطلاعات مورد نظر . به دست آوردن مقادیر ( Values ) و ذخیره آنها در متفیرها ( Variables ) .
خواندن و بازیابی فایل JSON . پردازش و جدا سازی اطلاعات فایل JSON توسط متد JSON.Parse در جاوا اسکریپت .