معرفی JSON

JSON: JavaScript Object Notation (JavaScript Object Notation).

JSON یک زبان برای ذخیره‌سازی و تبادل داده‌ها است.

JSON با استفاده از روش نشانه‌گذاری اوبجکت JavaScript نوشته شده است.

تبادل داده‌ها

وقتی داده‌ها بین مرورگر و سرور تبادل می‌شوند، این داده‌ها باید فقط متن باشند.

JSON یک متن است و می‌توانیم هر اوبجکت JavaScript را به JSON تبدیل کرده و آن را به سرور ارسال کنیم.

ما همچنین می‌توانیم هر JSONی که از سرور دریافت می‌کنیم را به اوبجکت JavaScript تبدیل کنیم.

به این صورت، می‌توانیم داده‌ها را به عنوان اوبجکت JavaScript پردازش کنیم، بدون نیاز به تحلیل و ترجمه‌ی پیچیده.

داده‌ها را ارسال کنید

اگر داده‌ها در اوبجکت JavaScript شما ذخیره شده‌اند، می‌توانید آن اوبجکت را به JSON تبدیل کرده و آن را به سرور ارسال کنید.

مثال

var myObj = { name:"Bill Gates",  age:62, city:"Seattle" };
var myJSON =  JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;

آزمایش کنید

شما در بخش‌های بعدی این آموزش بیشتر درباره‌ی آن یاد خواهید گرفت JSON.stringify() دانش درباره‌ی توابع.

داده‌ها را دریافت کنید

اگر داده‌ها را به فرمت JSON دریافت کنید، می‌توانید آن‌ها را به اوبجکت JavaScript تبدیل کنید:

مثال

var myJSON = '{ "name":"Bill Gates",  "age":62, "city":"Seattle" }';
var myObj =  JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;

آزمایش کنید

شما در بخش‌های بعدی این آموزش بیشتر درباره‌ی آن یاد خواهید گرفت JSON.parse() دانش درباره‌ی توابع.

ذخیره‌سازی داده‌ها

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

JSON امکان ذخیره کردن اوبجکت‌های JavaScript به صورت متن را فراهم می‌کند.

مثال

داده‌ها را در ذخیره‌سازی محلی ذخیره کنید

//存储数据:
myObj = { name:"Bill Gates",  age:62, city:"Seattle" };
myJSON =  JSON.stringify(myObj);
localStorage.setItem("testJSON", myJSON);
//接收数据:
text = localStorage.getItem("testJSON");
obj =  JSON.parse(text);
document.getElementById("demo").innerHTML = obj.name;

آزمایش کنید

JSON چیست؟

  • JSON به معنای نشانه‌گذاری شیء JavaScript است (JavaScript Object Notation)
  • JSON یک فرمت داده تعویضی سبک است
  • JSON خود توضیح‌دهنده و قابل فهم است
  • JSON مستقل از زبان است*

*

JSON از دستور زبان JavaScript استفاده می‌کند، اما فرمت JSON یک متن خالص است.

متن می‌تواند توسط هر زبان برنامه‌نویسی به عنوان داده خوانده و استفاده شود.

فرمت JSON اولین بار توسط Douglas Crockford پیشنهاد شد.

چرا از JSON استفاده می‌کنیم؟

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

JavaScript یک مجموعه از توابع داخلی را برای تبدیل رشته‌هایی که به فرمت JSON نوشته شده‌اند به شیءهای JavaScript داخلی ارائه می‌دهد:

JSON.parse()

بنابراین، اگر داده‌ها را به فرمت JSON از سرور دریافت کنید، می‌توانید آن را مانند هر JavaScript شیء دیگری استفاده کنید.