معرفی JSON

سه شنبه 5 آبان 1394

در این مقاله JSON را معرفی خواهیم کرد.این کلمه مخفف JavaScipt Object Notation است .که یک فرمت سبک تبادل داده هاست .در JSON اشیا و اطلاعات تبدیل به فرمت قابل فهم توسط کامپیوتر می شوند.

معرفی JSON

JSON چیست ؟

این کلمه مخفف JavaScipt Object Notation است .که یک فرمت سبک تبادل داده هاست .در JSON اشیا و اطلاعات تبدیل به فرمت قابل فهم توسط کامپیوتر می شوند.به صورت پیش فرض جاوااسکریپت فرمت JSON را درک می کند ولی برای سایر زبان ها اگر از کتابخانه های جانبی استفاده کنیم قابلیت درک آن را پیدا خواهند کرد.

در سایتw3schools  برای آموزش JSON از مثال زیر استفاده شده است . در این مثال نمونه یک دیتای employee به صورت JSON و به صورت XML نمایش داده شده است

{"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 می بینید

عبارت های JSON در میان آکولاد قرار می گیرند.در واقعobject  هر عبارتی است که با {شروع و با } تمام شود.

اعضای یک شی در داخل آکولاد باید توسط «,»  از هم جدا شوند

برای اینکه در داخل شی یک عضو تعریف کنیم باید پس از نام آن عضو از علامت : استفاده کنیم و بعد مقدار را بنویسیم

مقادیری که میتواند در داخل اعضا قرار گیرد به صورت عددی، رشته ای، بولین،آرایه، شی و یا Null است.

آرایه هر مقداری است که با [ شروع و با ] تمام شود.

مفاهیم بالا می توانند با هم ترکیب شوند و ساختارهای تودر توی بزرگتری به وجود آورند.

آرایه در json

یک آرایه می تواند حاوی چندین شی متفاوت باشد. به عنوان مثال

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

در کد بالا یک شی employees تعریف کرده ایم که این شی خود آرایه ای از سه رکورد متفاوت است .برای به دست آوردن مقدار اولین ورودی آرایه کد زیر را می نویسیم

employees[0].firstName + " " + employees[0].lastName;

و یا برای تغییر مقادیر آرایه به صورت زیر عمل می کنیم

employees[0].firstName = "Gilbert";

اعضای یک شی می تواند به صورت یک شی و یا یک آرایه باشد به شکل زیر دقت کنید

برای اینکه شی employees که در بالا تعریف شد را به یک شی جاوااسکریپت تبدیل کنیم به صورت زیر عمل می کنیم.این آرایه را به صورت رشته ای داخل یک متغیر قرار می دهیم .

var txt = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';
 

سپس از دستور eval در جاوااسکریپت استفاده می کنیم

var obj = eval ("(" + txt + ")");

این دستور آرایه رشته ای را به یک آرایه عادی تبدیل می کند.در این لینک می توانید دستورات را اجرا کنید

برنامه نویسان

نویسنده 3355 مقاله در برنامه نویسان

کاربرانی که از نویسنده این مقاله تشکر کرده اند

در صورتی که در رابطه با این مقاله سوالی دارید، در تاپیک های انجمن مطرح کنید