pazirehsarafraz
pazirehsarafraz
خواندن ۱ دقیقه·۶ سال پیش

65 - جاوااسکریپت: Initialization

قبلا گفته شد که چطور میتوانیم از object literal ها و array literal ها و function expression استفاده کنیم. برای استفاده از این روش ها نیاز به مقداردهی اولیه شیء داریم. مثلا یک آرایه را به array literal تعریف میکنیم و آیتم اول را شیء میگذاریم:

var people = [

{

// the 'john' object

firstname: 'John',

lastname: 'Doe',

addresses: ['111 Main St', '222 Main St']

},

{

// the 'jane' object

firstname: 'Jane',

lastname: 'Doe',

addresses: ['333 Main St', '444 Fifth St'],

greet: function() { return 'hello'; }

}

];

همان طور که مشاهده میشود کد آرایه خیلی بزرگ شده ولی این روش خیلی تمیزی برای مقداردهی اولیه داده ها است. همچنین این روش برای prototype هم خیلی مناسب است. مثلا موقعی که در حال ایجاد برنامه ای هستیم که هنوز به سرور یا api وصل نشده، میتوانیم به شکل کد بالا داده ها را مقداردهی اولیه کنیم تا در interface به کار روند و ببینم کد چطور شده و وقتی داده اصلی آماده شد، از طریق json و api داده های اصلی را به آن بدهیم.

در چنین کدهایی که initialization زیادی داریم معمولا کاما فراموش میشود یا به جای : اشتباها از = استفاده میشود و خطا میدهد: unexpected. مثلا unexpected token. اگر همین آرایه people بالا را در کنسول ببینیم خروجی میشود:

[Object, Object]

مثلا اگر در کنسول بگوییم people[1].greet() خروجی hello را برمیگرداند.

شاید از این پست‌ها خوشتان بیاید