# Return Largest Numbers in Arrays - Loop question

Tell us what’s happening:

I don’t understand why `var largestNumber = arr[n][0];` keeps the last value assigned to it and doesn’t get reassigned to the first element of [n]. For example, in [32, 35, 37, 39], largestNumber gets first reassigned to 35 which is [n][1], but since it’s inside a loop that reassigns it to [n][0] I expected to always have the value 32.

``````
function largestOfFour(arr) {
var results = [];

for (var n = 0; n < arr.length; n++) {
var largestNumber = arr[n][0];
console.log(`LN[n][0]: \${largestNumber}`);
for (var sb = 1; sb < arr[n].length; sb++) {
console.log(arr[n][sb])
if (arr[n][sb] > largestNumber) {
largestNumber = arr[n][sb];
console.log(`LN: \${largestNumber}`);
}
}

results[n] = largestNumber;
console.log(results);
}

console.log(`results: \${results}`);

return results;
}

largestOfFour([[4, 5, 1, 3], [13, 27, 18, 26], [32, 35, 37, 39], [1000, 1001, 857, 1]]);
``````

User Agent is: `Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36`.
after this if statement is executed, the `sb` variable is increased by one and the body of the function is executed again, the body of this loop doesn’t include the initalization of the `largestNumber` variable. Once you get `sb < arr[n].length` evaluating as false, then the `n` variable is increased by one and the body of that loop is executed again, the body of this loop includes the initialization of `largestNumber` (note that the two loops are nested in each other),