2.6 KiB
		
	
	
	
	
	
	
	
			
		
		
	
	
			2.6 KiB
		
	
	
	
	
	
	
	
title
| title | 
|---|
| Iterate Through an Array with a For Loop | 
Iterate Through an Array with a For Loop
Problem explanation:
Declare and initialize a variable total to 0. Use a for loop to add the value of each element of the myArr array to total.
Hint 1
Remember the structure of a for loop:
for ([initialization]; [condition]; [final-expression]) statement
- The [initialization]part is executed only once (the first time).
- The [condition]is checked on every iteration.
- The [final-expression]is executed along thestatementif[condition]resolves totrue.
try to solve the problem now
Spoiler alert!
Solution ahead!
Code solution:
for (var i = 0; i < myArr.length; i++) {
  total += myArr[i];
}
· Run code at repl.it.
Code explanation
- Inititialization: igets a value of0and its used as a counter.
- Condition: the subsequent code is executed as long as iis lower than the length ofmyArr(which is 5; five numbers but arrays are zero based).
- Final-expression: iis incremented by1.
- Statement: The function adds myArr[i]'s value tototaluntil the condition isn't met like so:
total + myArr[0] -> 0 + 2 = 2 
total + myArr[1] -> 2 + 3 = 5
total + myArr[2] -> 5 + 4 = 9
total + myArr[3] -> 9 + 5 = 14 
total + myArr[4] -> 14 + 6 = 20
Alternative code solution:
for (var y = myArr.length - 1; y >= 0; y--) {
  total += myArr[y];
}
· Run code at repl.it.
Code explanation
This works similarly to the last solution but it's faster1 although it might not meet your requirements if order is important.
- Initialization: ygets themyArr.length's value once so the function doesn't need to check it atconditionevery time the loop is executed.
- Condition: the loop is executed as long as yis greater than0.
- Final-expression: yis decremented by1.
- Statement: The function adds myArr[y]'s value tototaluntil the condition isn't met like so:
total + myArr[4] -> 0 + 6 = 6
total + myArr[3] -> 6 + 5 = 11
total + myArr[2] -> 11 + 4 = 15
total + myArr[1] -> 15 + 3 = 18
total + myArr[0] -> 18 + 2 = 20
Sources
1. "Are loops really faster in reverse?", stackoverflow.com