با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن ، JSON در جاوا اسکریپت در واقع یک فرمت خاص برای انتقال داده ها از سمت سرور به صفحات وب می باشد، به نحو ی که برای انسان نیز قابل خواندن و درک باشد. JSON که مخفف عبارت JavaScript Object Notation می باشد، در واقع یک فرمت انتقال داده ی کم حجم است که با اینکه از جاوا اسکریپت مشتق شده است اما به صورت کاملا مستقل از این زبان عمل می کند، از طرفی یک سیستم خود تعریف است به این معنا که خودش ساختار و اشیاء خود را تعریف می کند. برای آشنایی بیشتر و کاملتر با JSON در جاوا اسکریپت در ادامه ی این بخش با ما همراه باشید.
در این بخش ابتدا به مروری توضیحاتی کوتاه از JSON در جاوا اسکریپت پرداخته و سپس به بررسی ویژگی های آن خواهیم پرداخت.
* سینتکس JSON از سینتکس جاوا اسکریپت مشتق شده است، اما فرمت JSON فقط متن است. کد برای خواندن و تولید داده، JSON را می توان در هر زبان برنامه نویسی نوشت.
این سینتکس JSON یک آبجکت کارمند را تعریف می کند: آرایه ای از ۳ سوابق کارمند (آبجکت ها):
1 2 3 4 5 6 7 | { "employees":[ {"firstName":"John", "lastName":"Doe"}, {"firstName":"Anna", "lastName":"Smith"}, {"firstName":"Peter", "lastName":"Jones"} ] } |
فرمت JSON هماهنگ با کد برای ایجاد آبجکت های جاوا اسکریپت است.
به دلیل این شباهت، یک برنامه جاوا اسکریپت می تواند به راحتی داده های JSON را به آبجکت های جاوا اسکریپتی جاوا تبدیل کند.
داده JSON به عنوان جفت نام / ارزش نوشته شده است، همانند خواص آبجکت جاوا اسکریپت.
یک نام / ارزش جفت شامل یک نام فیلد (در نقل قول های دوگانه) است و به دنبال آن یک کولون است و به دنبال آن یک مقدار است:
1 | "firstName":"John" |
نام JSON نیاز به نقل قول دوگانه دارد. اسم های جاوا اسکریپت نیست.
آبجکت های JSON داخل کروشه {} نوشته می شوند.
درست مانند جاوا اسکریپت، آبجکت ها نیز می توانند شامل چندین نام / مقدار جفت باشند:
1 | {"firstName":"John", "lastName":"Doe"} |
آرایه های JSON در داخل براکت های مربع نوشته می شوند.
درست مانند جاوا اسکریپت، آرایه می تواند شامل آبجکت باشد:
1 2 3 4 5 | "employees":[ {"firstName":"John", "lastName":"Doe"}, {"firstName":"Anna", "lastName":"Smith"}, {"firstName":"Peter", "lastName":"Jones"} ] |
در مثال بالا، آبجکت”employees” یک آرایه است. و این شامل سه آبجکت است.
هر آبجکت یک رکورد از یک فرد (با نام و نام خانوادگی) است.
استفاده معمول از JSON برای خواندن داده ها از یک وب سرور است و داده ها را در یک صفحه وب نمایش می دهد.
برای سادگی، این را می توان با استفاده از یک رشته به عنوان ورودی نشان داد.
ابتدا یک رشته جاوا اسکریپت حاوی سینتکس JSON ایجاد کنید:
1 2 3 4 | var text = '{ "employees" : [' + '{ "firstName":"John" , "lastName":"Doe" },' + '{ "firstName":"Anna" , "lastName":"Smith" },' + '{ "firstName":"Peter" , "lastName":"Jones" } ]}'; |
سپس، از جاوا اسکریپت ساخته شده در ()JSON.parse استفاده کنید تا رشته را به یک آبجکت جاوا اسکریپت تبدیل کنید:
1 | var obj = JSON.parse(text); |
سرانجام از آبجکت جدید JavaScript در صفحه ی خود استفاده کنید :
1 2 3 4 5 6 | <p id="demo"></p> <script> document.getElementById("demo").innerHTML = obj.employees[1].firstName + " " + obj.employees[1].lastName; </script> |
JSON در جاوا اسکریپت به عنوان یک فرمت قوی برای انتقال داده ها از سرور به صفحات وب یکی از ویژگی های بارز و پرکاربرد می باشد، در این بخش برای اینکه یک آشنایی کلی نسبت به JSON در جاوا اسکریپت داشته باشید، به مرور مباحث فوق پرداختیم، البته در فصل های آتی توضیحات بیشتری از JSON ارائه خواهیم کرد.