اشیا در JSON (JSON Objects)
اینجا درباره اشیای JSON حرف می زنیم. «اشیای JSON» یعنی داده ای با جفت های کلید-مقدار. تمرکز ما روی «اشیای JSON» است تا راحت تر داده ها را بخوانیم.
شیء JSON چیست؟
شیء JSON داخل آکولاد { } است. هر «کلید (Key)» یک «رشته (String)» است. هر «مقدار (Value)» باید از انواع مجاز JSON باشد.
نکته: JSON یک «رشته متنی» است، نه شیء. وقتی متن JSON را پارس کنیم، تبدیل به شیء جاوااسکریپت می شود.
نوشتن یک شیء به صورت JSON
این یک رشته JSON است که داخلش یک شیء JSON قرار دارد.
myObj = {
name: "John",
age: 30,
car: null
};
تبدیل متن JSON به شیء
معمولاً از یک رشته JSON شروع می کنیم و با JSON.parse() آن را به شیء تبدیل می کنیم.
myJSON = "{\"name\":\"John\", \"age\":30, \"car\":null}";
myObj = JSON.parse(myJSON);
دسترسی به مقادیر شیء
نشانه گذاری نقطه ای (Dot)
با نقطه، مقدار ویژگی را می گیریم. ساده و خواناست.
const myJSON = "{\"name\":\"John\", \"age\":30, \"car\":null}";
const myObj = JSON.parse(myJSON);
const x = myObj.name;
نشانه گذاری براکتی (Bracket)
با براکت، کلید را رشته می نویسیم. برای کلیدهای خاص عالی است.
const myJSON = "{\"name\":\"John\", \"age\":30, \"car\":null}";
const myObj = JSON.parse(myJSON);
const y = myObj["name"];
حلقه روی ویژگی ها
با for...in روی کلیدها می چرخیم. سپس مقدارها را هم می گیریم.
const myJSON = "{\"name\":\"John\", \"age\":30, \"car\":null}";
const myObj = JSON.parse(myJSON);
let keys = "";
for (const k in myObj) {
keys += k + ", ";
}
const myJSON = "{\"name\":\"John\", \"age\":30, \"car\":null}";
const myObj = JSON.parse(myJSON);
let values = "";
for (const k in myObj) {
values += myObj[k] + ", ";
}
هشدار: همیشه یادت باشد JSON متن است. پس اول پارس کن، بعد استفاده کن.
گام های عملی
- رشته JSON را آماده کن.
- با
JSON.parse()آن را به شیء تبدیل کن. - با نقطه یا براکت مقدارها را بخوان.
- با
for...inروی ویژگی ها بگرد.
جمع بندی سریع
- JSON متن است، نه شیء.
- پارس کن تا شیء بسازی.
- نقطه خواناتر است.
- براکت انعطاف پذیرتر است.
- با for...in روی کلیدها بگرد.
برای ادامه یادگیری: JSON.parse و انواع داده JSON. همچنین به اشیای JSON رجوع کن.