-
求数组内所有成员的和
-
求数组内最大的数字
var arr = [9, 5, 6, 11, 8, 4, 3] -
求数组内所有成员的和
1.1 先想办法拿到所有的成员 1.2 计算所有的和
思考:
如何拿到所有的成员?
用 循环 模拟数组的所有下标, 从而拿到所有的成员
var sum = 0
for (var i = 0; i < arr.length; i++) {
console.log(i) // 输出的是我们模拟的数组下标
console.log(arr[i]) // 输出的是 数组的所有成员
sum = sum + arr[i]
sum += arr[i]
}
console.log(sum) // 46
2. 求数组内最大的数字
2.1 先想办法拿到数组所有的成员
2.2 然后去成员中 找出最大的值
var arr = [9, 5, 6, 11, 8, 4, 3]
var max = arr[0] // 假设 数组下标为 0 的值, 是最大的, 然后存储在 变量 max 中
for (var i = 1; i < arr.length; i++) {
if (max < arr[i]) { // 如果我假设的最大值, 小于 数组中的某一项, 那么会执行这个分支语句的代码
max = arr[i] // 将数组中的较大的值, 重新赋值给 变量 max
}
}
console.log(max) // 11
第一次执行 for 循环
i === 0 max === 9
循环执行条件 i < arr.length i < 7 符合条件, 开始执行循环
循环内部的代码: if (max < arr[i])
if ( 9 < 9 ) 所以分支语句不会执行
i++
第二次执行 for 循环
i === 1 max === 9
循环执行条件 i < arr.length i < 7 符合条件, 开始执行循环
循环内部的代码: if (max < arr[i])
if (9 < 5) 所以分支语句不会执行
i++
第三次执行 for 循环
i === 2 max === 9
循环执行条件 i < arr.length i < 7 符合条件, 开始执行循环
循环内部的代码: if (max < arr[i])
if (9 < 6) 所以分支语句不会执行
i++
第四次执行 for 循环
i === 3 max === 9
循环执行条件 i < arr.length i < 7 符合条件, 开始执行循环
循环内部的代码: if (max < arr[i])
if (9 < 11) 此时条件成立, 执行分支语句的代码, 也就是 max = arr[i]
i++
第五次执行 for 循环
i === 4 max === 11
.......