شما می توانید با عضویت در انجمن پرسش و پاسخ درسمن هرگونه سوالی دارید را مطرح کنید


اشیا و آرایه ها در زبان جاوا اسکریپت


اشیا و آرایه ها در زبان جاوا اسکریپت
برای دانلود و دیدن آنلاین این درس نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.

آرایه‌ها و اشیا در زبان جاوا اسکریپت

معرفی آرایه‌ها و اعمال تغییرات روی عناصر آرایه

تا امروز ما در برنامه‌ها با داده‌های تکی کار می‌کردیم و متغیرهای تکی تعریف می‌کردیم. اما گاهی نیاز است که تعدادی از داده‌ها را در کنار یک دیگر و به عنوان یک پکیج نگه داریم و به صورت یکجا از آنها استفاده کنیم. برای این کار نیاز به تعریف یک آبجکت داریم، تعریف آبجکت شبیه به تعریف متغیر است با این تفاوت که در مقابل علامت «=» یک علامت «{}» گذاشته و درون آن متغیر و مقادیر را وارد می‌کنیم. ساختار کلی این دستور به شکل زیر می‌باشد.
نوع داده     نام آبجکت ={مقدار:نام متغیر, مقدار:نام متغیر };
برای مثال قصد داریم آبجکتی تعریف کنیم که حاوی اطلاعات یک شخص باشد. این اطلعات شامل نام، نام خانوادگی سن و معدل است.
var person={name:"Mehdi",family:"Abbasi",age:39,avg=18.5};

حال می‌خواهیم ‌به متغیرهای درون آبجکت دسترسی یافته و در صورت نیاز آنها را در خروجی نمایش دهیم. برای دسترسی به هریک از متغیرهای درون آبجکت، نیاز است که نام آبجکت را نوشته و بعد از علامت «.»  نام آن متغیر را بنویسیم. ساختار کلی آن به شکل زیر می‌باشد.
 
person.name;
person.family;
person.age;
person.avg;
حال برای نمایش این مقادیر در خروجی می‌توانیم آنها را درون یک متغیر ریخته و آن متغیر را نمایش دهیم و یا به صورت مستقیم آن را نمایش دهیم.
var person={name:"Mehdi",family:"Abbasi",age:39,avg:18.5};
var n=person.name;
alert(n);
alert(person.avg);
دسترسی به متغیرهای آبجکت با استفاده از علامت «[]» نیز امکان پذیر است، اما نباید از علامت «.» استفاده کنیم. نمونه‌ای از آنرا در کد زیر مشاهده می‌کنیم.
var person={name:"Mehdi",family:"Abbasi",age:39,avg:18.5};
alert(person['age']);
alert(person["age"]);
ما این امکان را داریم که بعد از ساخت آبجکت، متغیرهایی را به به آن اضافه کنیم. برای این کار نیاز است که نام آبجکت را نوشته و در مقابل آن نام متغیر جدید و مقدار را می‌نویسیم. ساختار کلی آن به شکل زیر می‌باشد.
نام آبجکت . نام متغیر جدید = مقدار;
حال قصد داریم به آبجکتی که ساخته‌ایم یک متغیر به عنوان کد شخص اضافه کنیم، برای این کار به شکل زیر عمل می‌کنیم.
person.personcod=100;
همچنین امکان حذف از آبجکت‌ها نیز موجود است. برای این کار از کلمه کلیدی delete استفاده می‌کنیم. ساختار کلی این دستور به شکل زیر می‌باشد.
delete  نام آبجکت . نام متغیر;
حال قصد داریم که متغیر کد شخص را از آبجکت حذف کنیم. برای این کار به شکل زیر عمل می‌کنیم.
delete person.personcod;

دستور for in

دستور for برای زمان‌هایی قابل کاربرد است که ما از پیش می‌دانیم که عملیات تکرار قرار است چندبار تکرار شود. برای مثال اگر در قرار باشد متغیر‌های یک آبجکت 20 تایی را در خروجی نمایش دهیم، می‌توانیم از دستور for استفاده کنیم. اما اگر تعداد متغیرهای درون آبجکت را ندانیم چه باید کرد؟
برای حرکت کردن روی تک تک خانه‌های یک مجموعه و اجرای عملیات‍های متفاوت مانند چاپ روی آنها، می‌توانیم از دستور for in استفاده کنیم. اگر از دستور for in استفاده کنیم دیگر نیاز نیست که قبل از انجام عمل تکرار، تعداد تکرار را بدانیم و این دستور به صورت خود کار تعداد دفعات تکرار را تشخیص می‌دهد. ساختار کلی این دستور به شکل زیر می‌باشد.
for(نوع داده    نام متغیر    in    نام مجموعه)
{
}

 

حال می‌خواهیم همه‌ی متغیرهای درون آبجکت را در خروجی نمایش دهیم.
 
var person={name:"Mehdi",family:"Abbasi",age:39,avg:18.5};
for(var item in person)
{
  console.log(item);
}
اگر تنها نام متغیر حلقه را درون دستور log و یا دیگر دستورات نمایش در خروجی بنویسیم، تنها نام متغیرها در خروجی نمایش داده می‌شود و برای نمایش مقدار آنها باید به آنها دسترسی پیدا کرده و سپس آنرا در خروجی نمایش دهیم.
var person={name:"Mehdi",family:"Abbasi",age:39,avg:18.5};
for(var item in person)
{
  console.log(person.name);
}
توجه داشته باشید که می‌توان خود آبجکت را درون دستور log و یا دیگر دستورات نمایش در خروجی نوشت، اما در این صورت شمای کلی و همان حالت کد نویسی در خروجی نمایش داده می‌شود.

معرفی آرایه‌ها و اعمال تغییرات روی عناصر آرایه

یکی دیگر از مجموعه در زبان برنامه نویسی جاوا اسکریپت، آرایه‌ها هستند. آرایه‌های نیز مانند آبجکت‌ها به ما کمک می‌کنند تا تعدادی زیادی از داده‌ها را در کنار یک دیگر ذخیره کنیم. برای تعریف آرایه دو روش وجود دارد، برای روش اول از علامت «[]» استفاده می‌کنیم. ساختار کلی روش اول این دستور به شکل زیر می‌باشد.
نوع داده    نام آرایه = [];
ساختار کلی روش دوم این روش به شکل زیر می‌باشد.
نوع داده    نام آرایه = new Array();

دستور length

به کمک دستور length می‌توانیم تعداد عناصر درون آرایه را به دست آوریم.ساختار کلی این دستور به شکل زیر می‌باشد.
نام آرایه .length;
حال قصد داریم تعداد مقادیر درون یک آرایه را در خروجی نمایش دهیم.
var array1=[];
alert(array1.length);
 
برای پر کردن آرایه‌ای که با اولین روش تعریف شد، به شکل زیر عمل می‌کنیم.
var array1=["Mehdi","Ali","Amir","Reza"];
این نکته قابل توجه است که خانه‌های آرایه مانند آبجکت برچسب نداشته و برای دسترسی به خانه‌های آرایه باید از شماره خانه‌های آنها استفاده کرد. این شماره خانه‌ از صفر شروع شده و به تعداد خانه‌های آرایه افزایش می‌یابند. ساختار کلی این دستور به شکل زیر می‌باشد.
نام آرایه[شماره خانه];
حال قصد داریم سومین خانه آرایه که همان شماره خانه 2 است را در خروجی نمایش دهیم.
var array1=["Mehdi","Ali","Amir","Reza"];
alert(array1[2]);
نوع داده let
اگر یک متغیر را از نوع داده‌ای var تعریف کنیم در تمام برنامه می‌توانیم از آن استفاده کنیم. برای مثال زمانی که ما از دستور for استفاده می‌کنیم، متغیر شمارنده آن را در بیرون for نیاز نداریم اما چون آنرا از نوع داده‌ای var تعریف کرده‌ایم، در بیرون for نیز قابل دسترسی است و شاید این خواسته ما نباشد. برای جلو گیری از این اتفاق می‌توانیم از نوع داده‌ای let استفاده کنیم. این نوع داده در بیرون از بلاک اختصاصی خود غیر قابل دسترس بوده و از بین می‌رود. حال قصد داریم که با استفاده از دستور for، خانه‌های آرایه را در خروجی نمایش دهیم. دقت کنید که نوع داده‌ای آن let بوده و شمارنده از صفر تا تعداد خانه‌های آرایه پیش می‌رود.
var array1=["Mehdi","Ali","Amir","Reza"];
for(let i=0;i<array1.length;i++)
{
  console.log(array1[i]);
}
اگر متغیری را که از نوع داده‌ای let تعریف کرده‌ایم را بیرون از بلاک اختصاصی(برای مثال بیرون از بلاک دستور for) و درون دستور log بنویسیم، خواهیم دید که در پنجره console مرورگر پیغام خطا نمایان می‌شود.

دستور for of

برای این که خانه‌های آرایه را به وسیله حلقه تکرار در خروجی نمایش دهیم، نیاز به دستور for of داریم. تنها تفاوت این دستور با دستور for in این است که به جای کلمه in از of استفاده می‌کنیم. ساختار کلی این دستور به شکل زیر می‌باشد.
for(نوع داده    نام متغیر    in    نام مجموعه)
{
}
حال می‌خواهیم به کمک دستور for of، خانه‌های آرایه را در خروجی نمایش دهیم.
var array1=["Mehdi","Ali","Amir","Reza"];
for(let item of array1)
{
  console.log(item);
}
این نکته قابل توجه است که در دستور for in متغیر شمارند خود مقدار است و اگر آنرا در خروجی نمایش دهیم، خود مقدار نمایش داده می‌شود نه نام میغیر.
یکی از مهمترین ویگی‌های زبان برنامه نویسی جاوا اسکریپت امکان تعریف آرایه با چند نوع داده است و ما می‌توانیم چند نوع داده را در کنار یکدیگر نگه داریم. کد زیر این موضوع را به خوبی بیان می‌کند.
var array1=["darsman.com",200,true,19.87];
 
حال می‌دانیم که درون آرایه می‌توانیم از هر نوع داده‌ای استفاده کنیم، حتی آبجکت. همان طور که در متن بالا متوجه شدیم، آبجکت یک نوع داده بوده و می‌توانیم درون آرایه از آن استفاده کنیم. یعنی هر یک از خانه‌های آرایه خود یک آبجکت باشد که این آبجکت نیز حاوی چند مقدار است. برای استفاده از آبجکت‌ها درون آرایه باید از علامت «{}» استفاده کنیم. ساختار کلی این دستور به ششکل زیر می‌باشد.
نوع داده    نام آرایه = [
          {مقدار:نام متغیر, مقدار:نام متغیر },
          {مقدار:نام متغیر, مقدار:نام متغیر },
          {مقدار:نام متغیر, مقدار:نام متغیر }
];
حال می‌خواهیم مشخصات چند شخص شامل نام، نام خانوادگی، سن و معدل را در کنار یکدیگر ذخیره کنیم.
var array1=[
{name:"Mehdi",family:"Abbasi",age:39,avg:19.9},
{name:"AmirHossein",family:"Farahani",age:17,avg:18.9},
{name:"Ali",family:"Koolivand",age:17,avg:18.9}
];
برای نمایش این آرایه در خروجی، نیاز به یک دستور for of داریم و درون آن یک دستور for in لازم است. دستور for of روی خانه‌های آرایه حرکت کرده و دستور for in درون آن، روی خانه‌های آبجکت حرکت می‌کند تا همه‌ی اعضای کوچک آرایه نیز در خروجی نمایش داده شود.
for(let i of array1)
{
for(let j in i)
{
console.log(j+" "+i[j]);
}
}
 


نظر بدهید

نشانی ایمیل شما منتشر نخواهد شد .
برای ارسال نظر نیاز است وارد سایت شوید. در صورت نداشتن حساب کاربری عضو شوید.
16 جلسه برای دوره آموزش جاوا اسکریپت-مقدماتی تا متوسط

درس 1
مقدمه ای بر زبان برنامه نویسی جاوا اسکریپت
29 دقیقه / رایگان

درس 2
ساختار کلی برنامه در زبان جاوا اسکریپت
33 دقیقه / رایگان

درس 3
عملگرها در زبان جاوا اسکریپت
35 دقیقه / رایگان

درس 4
روشهای نمایش اطلاعات در خروجی در زبان جاوا اسکریپت
31 دقیقه / رایگان

درس 5
روشهای دریافت داده از ورودی و تغییر نوع داده در زبان جاوا اسکریپت
26 دقیقه / رایگان

درس 6
توابع و رویدادها در زبان جاوا اسکریپت
29 دقیقه / رایگان

درس 7
انواع رویدادها در زبان جاوا اسکریپت
42 دقیقه / رایگان

درس 8
دستورات کنترلی در زبان جاوا اسکریپت
25 دقیقه / رایگان

درس 9
حلقه های تکرار در زبان جاوا اسکریپت
20 دقیقه / رایگان

درس 10
اشیا و آرایه ها در زبان جاوا اسکریپت
41 دقیقه / رایگان

درس 11
شی گرایی در زبان جاوا اسکریپت
40 دقیقه / رایگان

درس 12
متد های کار با رشته ها و اعداد در زبان جاوا اسکریپت
35 دقیقه / رایگان

درس 13
متدهای کار با آرایه ها، تاریخ و زمان در جاوا اسکریپت
26 دقیقه / رایگان

درس 14
DOM در جاوا اسکریپت (قسمت اول)
33 دقیقه / رایگان

درس 15
DOM در جاوا اسکریپت (قسمت دوم)
25 دقیقه / رایگان

درس 16
BOM در جاوا اسکریپت (browser object model )
28 دقیقه / رایگان

دوره آموزش جاوا اسکریپت-مقدماتی تا متوسط


تعداد جلسات 16 جلسه
مدت زمان 470 دقیقه
سطح مهارت مقدماتی تا متوسط
زبان فارسی
دانشجو 62 دانشجو
گواهی نامه ندارد
قیمت دوره : 0 تومان
درحال برگزاری
مهدی عباسی
مهدی عباسی

درباره مدرس :

مدیر‌ عامل‌ شرکت آریا‌ نرم‌‌ افزار دارنده مدرک کارشناسی‌ ارشد مهندسی کامپیوتر 12‌ سال سابقه تدریس دروس کامپیوتر را در دانشگاههای دولتی، آزاد، پیام‌نور ملایر، شهیدشمسی‌پور تهران و تدریس برنامه‌نویسی در انیستیتو ایزایران، مجتمع فنی و موسسه راه‌آینده تهران دارا میباشد و تا به حال راهنمایی انجمنهای علمی دانشگاه و صدها پروژه دانشجویی را برعهده داشته است. تخصص اصلی: با داشتن گواهی‌نامه‌های معتبر تدریس از انیستیتو‌ ایزایران، راه آینده‌تهران و سازمان‌فنی‌حرفه‌ای، تدریس و آموزش‌ دروس کامپیوتر، ‌برنامه‌نویسی کامپیوتر و کلاسهای کنکور کارشناسی و کارشناسی‌ارشد میباشد.همچنین تجربه داوری و نظارت مسابقات برنامه‌نویسی کشوری‌ACM را در سالهای متعدد داشته و تیم مورد رهبری ایشان در 3سال متوالی مقام اول مسابقات کشوری را از آن خود کرده است.ایشان مقالاتی در زمینه شبکه‌های کامپیوتری، تکنیک‌های وزارت دفاع و ... به ثبت رسانده و مشاور و کارشناس در طراحی و برنامه نویسی بیش از 50‌برنامه کاربردی تحت وب و ویندوز و موبایل میباشد. افتخارات دیگر:کسب مقام دوم ایده‌های برتر در مسابقات استارت‌آپ و بکند کشوری را نام برد.

دوره آموزش جاوا اسکریپت-مقدماتی تا متوسط

دوره آموزش جاوا اسکریپت-مقدماتی تا متوسط

مهدی عباسی


62
رایگان
470 دقیقه
جزئیات دوره
دوره رایگان آموزش جاوا - مقدماتی تا متوسط

دوره رایگان آموزش جاوا - مقدماتی تا متوسط

مهدی عباسی


72
رایگان
685 دقیقه
جزئیات دوره
آموزش مفاهیم Delegate ها در سی شارپ

آموزش مفاهیم Delegate ها در سی شارپ

احمد غیاثوند


11
رایگان
30 دقیقه
جزئیات دوره
آموزش Modular Application در اندروید

آموزش Modular Application در اندروید

احمد غیاثوند


10
رایگان
12 دقیقه
جزئیات دوره
آموزش پیغام Toast سفارشی در اندروید

آموزش پیغام Toast سفارشی در اندروید

احمد غیاثوند


15
رایگان
22 دقیقه
جزئیات دوره
دوره آموزش سی شارپ پیشرفته

دوره آموزش سی شارپ پیشرفته

مهدی عباسی


34
رایگان
100 دقیقه
جزئیات دوره
تحلیل مدارهای الکتریکی پایه 2

تحلیل مدارهای الکتریکی پایه 2

علیرضا نوروزی


18
200,000 تومان
630 دقیقه
جزئیات دوره
دوره حل تمرین سی پلاس پلاس

دوره حل تمرین سی پلاس پلاس

مهدی احمدی


28
25,000 تومان
1550 دقیقه
جزئیات دوره