با آموزش JSON در جاوا اسکریپت عزیزان وهمراهان درخدمتون هستم .JSON یک قالب یا فرمت برای ذخیره سازی و انتقال داده از سرویس دهنده (server) به صفحه ی وب (web page) می باشد. JSON یک استاندارد open source سبک برای انتقال داده‌ ها است به ترتیبی که برای انسان نیز قابل خواندن باشد. JSON از زبان اسکریپت‌ نویسی جاوا اسکریپت در نشان‌ دادن ساختمان داده‌ های ساده و آرایه‌ های انجمنی (associative array) مشتق شده ‌است.

JSON سر واژه ی JavaScript Object Notation (نشانه گذاری شی جاوا اسکریپت) می باشد.

JSON یک فرمت تبادل داده ی lightweight (کم حجم) است.

JSON با این که از جاوا اسکریپت برگرفته شده، کاملا از زبان مستقل می باشد.

JSON یک سیستم خود تعریف می باشد ، یعنی خودش ساختار و اشیای آن را تعریف می کند.

همان طور که گفته شد، syntax (دستور نگارشی) JSON در اصل از زبان برنامه نویسی جاوا اسکریپت مشتق شده، اما قالب (فرمت) آن فقط مبتنی بر متن است. کد لازم برای خواندن و ساخت داده های JSON می تواند در هر زبان برنامه نویسی نوشته شود.

مثالی از JSON

در مثال زیر یک شی employees تعریف شده که آرایه ای است متشکل از سه رکورد یا شی employee.

‎{
‎”employees”:[
‎ {“firstName”:”John”, “lastName”:”Doe”},
‎ {“firstName”:”Anna”, “lastName”:”Smith”},
‎ {“firstName”:”Peter”, “lastName”:”Jones”}
‎]
‎}‎

تبدیل داده های JSON به اشیا جاوا اسکریپت

فرمت JSON به گونه ای قابل توجه از نظر ساختار نگارشی (syntax) مشابه کدی است که برای ایجاد اشیا جاوا اسکریپت می نویسیم. به دلیل وجود این شباهت چشم گیر، برنامه ای که با جاوا اسکریپت نوشته شده باشد به راحتی قادر خواهد بود داده های JSON را به اشیا محلی جاوااسکریپت تبدیل کند.

قوانین مربوط به دستور نگارش JSON

داده ها به صورت جفت های اسم / مقدار (name/value pair) هستند.

دادها توسط کاراکتر ویرگول از هم جدا می شوند.

کاراکتر {} اشیا را نگه می دارد/ اشیا در {} محصور می شوند.

کاراکتر [] آرایه ها را دربر می گیرد.

داده های JSON – یک اسم و یک مقدار

داده های JSON درست مشابه property های شی جاوا اسکریپت به صورت جفت های اسم/مقدار نوشته می شوند. یک جفت اسم/مقدار متشکل از یک اسم فیلد (داخل علامت ” “) می باشد که به دنبال آن یک دو نقطه و مقدار تایپ می آید.

“firstName”:”John”

نکته

اسامی JSON حتما باید داخل ” ” قرار داده شوند. این امر درباره ی جاوا اسکریپت صادق نمی باشد.

اشیا JSON

اشیا JSON داخل کاراکترهای باز و بسته ی ” {،}” تایپ می شوند.

درست همانند جاوا اسکریپت، اشیا JSON می توانند دبردارنده ی چندین جفت کلید / مقدار باشند.

{“firstName”:”John”, “lastName”:”Doe”}

آرایه های JSON

آرایه های JSON داخل کاراکتر [] نوشته می شوند.

همچون جاوا اسکریپت، آرایه ها در JSON می توانند چندین شی در خود نگه دارند.

“employees”:[
{“firstName”:”John”, “lastName”:”Doe”},
{“firstName”:”Anna”, “lastName”:”Smith”},
{“firstName”:”Peter”, “lastName”:”Jones”}

]

در مثال بالا، شی “employees” خود یک آرایه است. این آرایه مشتکل از سه شی است.

هر شی رکوردی از یک شخص می باشد(یک firstname و یک lastname).

تبدیل یک متغیر JSON Text به شی جاوا اسکریپت

یکی از کاربردهای معمول تکنولوژی JSON خواندن داده از سرویس دهنده ی وب (web server) و نمایش آن در یک صفحه ی وب است.

برای اینکه بتوانیم این استفاده ی JSON را تشریح کنیم، یک رشته را به عنوان ورودی مورد استفاده قرار می دهیم.

ابتدا یک رشته ی جاوا اسکریپت دربردارنده ی ساختار نگارشی (syntax) JSON ایجاد کنید.

var text = ‘{ “employees” : [‘ +

‎'{ “firstName”:”John” , “lastName”:”Doe” },’ +

‎'{ “firstName”:”Anna” , “lastName”:”Smith” },’ +

‎'{ “firstName”:”Peter” , “lastName”:”Jones” } ]}’;‎

سپس با استفاده از تابع توکار JSON.parse() رشته را به یک شی جاوا اسکریپت تبدیل کنید.

var obj = JSON.parse(text);‎

حال کافی است شی (جاوا اسکریپت) جدید را در صفحه خود بکار ببرید.

document.getElementById(“demo”).innerHTML =

obj.employees[1].firstName + ” ” + obj.employees[1].lastName;

‎‎