انتقل إلى المحتوى

٣.٣ عرض عناصر المصفوفة

حلقة for

التمرين 1: أنشئ مصفوفة تحتوي على 1 و2 و3، واعرض كل عنصر في سطر مستقل.

var numbers = [1, 2, 3];
console.log(numbers[0]);
console.log(numbers[1]);
console.log(numbers[2]);

النتيجة كما يلي:

1
2
3

التمرين 2: أعد تنفيذ التمرين 1 باستخدام for .

var numbers = [1, 2, 3];
for(var i =0; i<3; i++){
  console.log(numbers[i]);
}

النتيجة كما يلي:

1
2
3

نعلم أن numbers[0] تصل إلى العنصر الأول، و numbers[1] إلى الثاني، و numbers[2] إلى الثالث. أنشأنا حلقة for تكرّر المهمة ثلاث مرات، بالفهرسة من 0 إلى أقل من 3، وهو طول المصفوفة.

التمرين 3: لديك الألوان red وgreen وwhite وblack. اعرض كل لون في سطر مستقل. تلميح: استخدم for مع array.length.

var colors = ["red", "green", "white", "black"];
for(var i =0; i < colors.length; i++){
  console.log(colors[i]);
}

النتيجة كما يلي:

red
green
white
black

التمرين 4: لديك قائمة من item1 إلى item8. اعرض كل عنصر في سطر مستقل.

var items = ["item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8"];
for(var i =0; i < items.length; i++){
  console.log(items[i]);
}

النتيجة كما يلي:

item1
item2
item3
item4
item5
item6
item7
item8

التمرين 5: لديك قائمة مهام: التأمل، والنادي الرياضي، ومشاهدة فيديو، وتناول وجبة صحية. اعرض كل مهمة في سطر مستقل.

var thingsToDo = ["meditate", "go to gym", "watch a video", "have a healthy meal"];
for(var i =0; i < thingsToDo.length; i++){
  console.log(thingsToDo[i]);
}

النتيجة كما يلي:

meditate
go to gym
watch a video
have a healthy meal

التمرين 6: لديك قائمة مشتريات: أوراق وخبز وقلمان وعطر وحليب. اعرض كل عنصر في سطر مستقل.

var thingsToBuy = ["papers", "bread", "2 pencils", "perfume", "milk"];
for(var i =0; i < thingsToBuy.length; i++){
  console.log(thingsToBuy[i]);
}

النتيجة كما يلي:

papers
bread
2 pencils
perfume
milk

for...of

التمرين 7: اقرأ الشيفرة التالية وافهم النتيجة.

var myWorkEthics = ["Concentrate", "Wait for no result", "Trust your Karma"];
for(item of myWorkEthics){
  console.log(item);
}

النتيجة كما يلي:

Concentrate
Wait for no result
Trust your Karma

for...of

for...of نوع آخر من الحلقات في JavaScript، يتيح المرور على قيم عناصر المصفوفة.

صياغة for...of هي for(arrayItem of array){ // statements to execute}

التمرين 8: أعد تنفيذ التمرين 2 باستخدام for...of .

var numbers = [1, 2, 3];
for(number of numbers){
  console.log(number);
}

النتيجة كما يلي:

1
2
3

التمرين 9: أعد تنفيذ التمرين 3 باستخدام for...of .

var colors = ["red", "green", "white", "black"];
for(color of colors){
  console.log(color);
}

النتيجة كما يلي:

red
green
white
black

التمرين 10: أعد تنفيذ التمرين 4 باستخدام for...of .

var items = ["item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8"];
for(item of items){
  console.log(item);
}

النتيجة كما يلي:

item1
item2
item3
item4
item5
item6
item7
item8

التمرين 11: أعد تنفيذ التمرين 5 باستخدام for...of .

var thingsToDo = ["meditate", "go to gym", "watch a video", "have a healthy meal"];
for(thingToDo of thingsToDo){
  console.log(thingToDo);
}

النتيجة كما يلي:

meditate
go to gym
watch a video
have a healthy meal

التمرين 12: أعد تنفيذ التمرين 6 باستخدام for...of .

var thingsToBuy = ["papers", "bread", "2 pencils", "perfume", "milk"];
for(thingToBuy of thingsToBuy){
  console.log(thingToBuy);
}

النتيجة كما يلي:

}
papers
bread
2 pencils
perfume
milk

array.forEach()

التمرين 13: اقرأ الشيفرة التالية وافهم النتيجة.

var numbers = [100, 200, 300, 400, 500];
numbers.forEach(function(currentItem, index, array){
  console.log(index, currentItem, array);
});

النتيجة كما يلي:

0 100 (5) [100, 200, 300, 400, 500]
1 200 (5) [100, 200, 300, 400, 500]
2 300 (5) [100, 200, 300, 400, 500]
3 400 (5) [100, 200, 300, 400, 500]
4 500 (5) [100, 200, 300, 400, 500]

array.forEach()

array.forEach() تُستخدم للمرور على عناصر المصفوفة.

صياغة array.forEach() هي array.forEach(function(currentItem, index, array){// statements to execute});

array.forEach() طريقة للمصفوفات تستقبل دالة وتنفّذها لكل عنصر. يمكن للدالة استقبال ثلاثة معاملات:

  1. currentValue: العنصر الحالي، وهو المعامل المستخدم هنا.
  2. index: فهرس العنصر الحالي، ويمكن إغفاله.
  3. array: المصفوفة نفسها، ويمكن إغفالها.

التمرين 14: ارجع إلى التمرين 3؛ اعرض colors وعناصرها باستخدام forEach().

var colors = ["red", "green", "white", "black"];
colors.forEach(function(current){
  console.log(current);
});

النتيجة كما يلي:

red
green
white
black

التمرين 15: ارجع إلى التمرين 4؛ اعرض items وعناصرها باستخدام forEach().

var items = ["item1", "item2", "item3", "item4", "item5", "item6", "item7", "item8"];
items.forEach(function(item){
  console.log(item);
});

النتيجة كما يلي:

item1
item2
item3
item4
item5
item6
item7
item8

التمرين 16: ارجع إلى التمرين 5؛ اعرض thingsToDo وعناصرها باستخدام forEach().

var thingsToDo = ["meditate", "go to gym", "watch a video", "have a healthy meal"];
thingsToDo.forEach(function(thing){
  console.log(thing);
});

النتيجة كما يلي:

meditate
go to gym
watch a video
have a healthy meal

التمرين 17: ارجع إلى التمرين 6؛ اعرض thingsToBuy وعناصرها باستخدام forEach() ودالة سهمية.

var thingsToBuy = ["papers", "bread", "2 pencils", "perfume", "milk"];
thingsToBuy.forEach(thing => console.log(thing));

النتيجة كما يلي:

papers
bread
2 pencils
perfume
milk

التمرين 18: اعرض فهرس كل عنصر وقيمته في المصفوفة التالية. استخدم forEach .

var days =  ["Sunday","Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

days.forEach(function(day, dayIndex){
   console.log(dayIndex, day);
});

النتيجة كما يلي:

0 "Sunday"
1 "Monday"
2 "Tuesday"
3 "Wednesday"
4 "Thursday"
5 "Friday"
6 "Saturday"

التمرين 19: أعد تنفيذ التمرين 18 باستخدام دالة سهمية.

var days =  ["Sunday","Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

days.forEach((day, dayIndex) => console.log(dayIndex, day));

النتيجة كما يلي:

0 "Sunday"
1 "Monday"
2 "Tuesday"
3 "Wednesday"
4 "Thursday"
5 "Friday"
6 "Saturday"

التمرين 20: اعرض عناصر المصفوفة التالية باستخدام forEach ودالة سهمية.

var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September','October', 'November', 'December'];

months.forEach(month => console.log(month));

النتيجة كما يلي:

January
February
March
April
May
June
July
August
September
October
November
December

التمرين 21: ارجع إلى التمرين 19؛ ما القيمة المُرجعة من days.forEach()

var days =  ["Sunday","Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];

var forEachReturn = days.forEach((day, dayIndex) => console.log(dayIndex, day));

console.log(forEachReturn);

النتيجة كما يلي:

0 "Sunday"
1 "Monday"
2 "Tuesday"
3 "Wednesday"
4 "Thursday"
5 "Friday"
6 "Saturday"
undefined

التمرين 22: ارجع إلى التمرين 20؛ ما القيمة المُرجعة من months.forEach()

var months = ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September','October', 'November', 'December'];

var forEachReturn = months.forEach(month => console.log(month));

console.log(forEachReturn);

النتيجة كما يلي:

January
February
March
April
May
June
July
August
September
October
November
December
undefined

array.forEach()

القيمة المُرجعة من array.forEach() هي undefined

طرق متعددة لعرض العناصر!

توجد طرق متعددة لعرض عناصر المصفوفة؛ اختر ما يناسب المهمة وما تفهمه جيدًا.

بالنسبة لي، تبدو حلقة for...of الأسهل والأنسب هنا.