آرایه ها در JSON (JSON Arrays)
اینجا با آرایه های JSON آشنا می شویم. «آرایه (Array)» یعنی لیست مرتب. JSON فقط متن است؛ پس آرایه JSON داخل رشته می آید و سپس پارس می شود.
آرایه های JSON چگونه اند؟
آرایه JSON با براکت [] نوشته می شود. مقدارها می توانند رشته، عدد، شیء، آرایه، بولی یا null باشند. توابع و تاریخ در JSON مجاز نیستند.
نکته: آرایه جاوااسکریپت می تواند تابع یا تاریخ هم داشته باشد؛ اما JSON نه.
ساخت آرایه جاوااسکریپت از لیترال
یک آرایه معمولی در جاوااسکریپت می سازیم.
myArray = [
"Ford",
"BMW",
"Fiat"
];
پارس کردن رشته JSON به آرایه
ابتدا رشته داریم؛ سپس با JSON.parse() آن را به آرایه تبدیل می کنیم.
myJSON = "[\"Ford\", \"BMW\", \"Fiat\"]";
myArray = JSON.parse(myJSON);
دسترسی به مقدارهای آرایه
با «اندیس (Index)» سراغ خانه ها می رویم. اندیس از صفر شروع می شود.
myArray[0];
آرایه ها داخل اشیای JSON
یک شیء می تواند ویژگی ای از نوع آرایه داشته باشد.
myObj = {
name: "John",
age: 30,
cars: [
"Ford",
"BMW",
"Fiat"
]
};
برای دسترسی، از اندیس استفاده می کنیم.
myObj.cars[0];
حلقه روی آرایه ها
for...in (برای کلیدها)
با for...in روی اندیس ها می چرخیم. سپس مقدار را می خوانیم.
for (let i in myObj.cars) {
x += myObj.cars[i];
}
for کلاسیک (برای مقدارها)
با حلقه معمولی، از صفر تا طول آرایه می رویم.
for (let i = 0; i < myObj.cars.length; i++) {
x += myObj.cars[i];
}
هشدار: اگر داده از سرور می آید، اول مطمئن شو JSON معتبر است. سپس پارس کن.
گام های عملی
- رشته JSON را آماده کن.
- با
JSON.parse()آن را به آرایه تبدیل کن. - با اندیس مقدارها را بخوان.
- با حلقه، همه مقدارها را پردازش کن.
جمع بندی سریع
- JSON متن است؛ آرایه در رشته می آید.
- آرایه JSON توابع ندارد.
- دسترسی با اندیس صفر شروع می شود.
- for...in برای اندیس هاست.
- for کلاسیک ساده و قابل کنترل است.