اشیا در جاوا اسکریپت۳
پیشنهاد میکنیم قبل از مطالعه این مقاله قسمتهای صفر اول و دوم این مقاله را مطالعه نمایید.
در این مقاله خصوصیات اشیا را بررسی میکنیم.خصوصیات اشیا جزئی مهم و جدا نشدنی هر شی میباشد که مقادیری را در خود نگه میدارد و از انواع دادههای اصلی جاوا اسکریپت میباشند.
خصوصیات همیشه همراه اشیا جاوا اسکریپت هستند که همیشه مقادیری در آنها ذخیره میشود.
اشیا جاوا اسکریپت مجموعهای نامرتب از اشیا هستند.
خصوصیات را همیشه میتوان اضافه و حذف کرد وحتی میتوان مقدار آنها را تغییر داد با این حال بعضی از آنها میتوانند فقط خواندنی باشند.
دست یابی به خصوصیات اشیا در جاوا اسکریپت
در جاوا اسکریپت با سه روش میتوانیم به خصوصیات اشیا دسترسی داشته باشیم سینتکس دستیابی به اشیا در جاوااسکریپت را در زیر مشاهده مینمایید:
objectName.property // person.age
objectName["property"] // person["age"]
objectName[expression] // x = "age"; person[x]
در مثال اخر expression یک عبارت میباشد که میتواند یک متغیر و هر عبارت محاسبهای مجاز در جاوااسکریپت باشد.
مثال:
person.firstname + " is " + person.age + " years old.";
erson["firstname"] + " is " + person["age"] + " years old.";
حلقه for …in در جاوا اسکریپت
این حلقه در جاوا اسکریپت برای پردازش خصوصیات اشیا به کار میرود و به تعداد خصوصیات اشیا اجرا میشود.
نحو یا سینتکس این حلقه به صورت زیر میباشد:
for (variable in object) {
code to be executed
}
بلوک داخل حلقه for..in برای هر خصوصیت شی یک بار اجرا میشود.
مثال:
var person = {fname:"John", lname:"Doe", age:25};
for (x in person) {
txt += person[x];
}
افزودن یک خصوصیت جدید به اشیا در جاوااسکریپت
شما میتونید یک خصوصیت جدید هم زمان با مقدار دهی به آن در یک شی ایجاد کنید.
مثال:فرض کنیم شی person قبلا تعریف شده خط کد زیر خصوصیت nationality را به آن اضافه میکند و همزمان مقدار english را به آن انتساب میکند.
person.nationality = "English";
همچنین توجه کنید که از کلمه های رزرو شده جاوااسکریپت برای نامگذاری اشیا، متغیر ها،خصوصیات و غیره نمیتوان استفاده کرد.
حذف یک خصوصیت از یک شی
با استفاده از کلمه کلیدی delete می توان یک خصوصیت را از یک شی حذف کرد.
مثال:
var person = {firstName:"John", lastName:"Doe", age:50, eyeColor:"blue"};
delete person.age; // or delete person["age"];
موقع حذف یک خصوصیت به نکات زیر دقت کنید:
- با حذف یک خصوصیت، خصوصیت و مقدار آن همزمان حذف میشوند.
- بعد از حذف یک خصوصیت نمیتوان از آن خصوصیت قبل از اضافه کردن دوباره استفاده کرد.
- عملگر delete فقط برای حذف خصوصیت اشیا طراحی گردیده و بر روی توابع و دیگر متغیرها تاثیری ندارد.
- اگر این عمل را برای خصوصیتی که تعریف نشده استفاده کنید اجرای برنامه شما متوقف میشود.
ویژگیهای مشترک خصوصیت اشیا
- تمامی خصوصیت اشیا نام دارند.همچنین آنها میتوانند مقدار نیز داشته باشند.
- مقدار، یکی از خواص خصوصیت ها میباشد.
- خواص یا ویژگی دیگر خصوصیات اشیا این است که آنها قابل شمارش، قابل تنظم و قابل نوشتن هستند.
- خواص مشخص میکنند که یک خصوصیت جاوااسکریپت چطور مورد دستیابی قرار بگیرند.(نوشتنی باشند یا خواندین.
- در جاوا اسکریپت به غیر از خصوصیت مقدار تمامی خواص فقط خواندنی میباشند.
و این مقاله ادامه دارد… .
منبع ترجمهای از سایت w3school