javascript - 有没有更有效的方法在 JavaScript 中使用 For 循环显示两个数组的总和?
问题描述
我希望最终结果显示“276 + 351 = 627”。使用 for 循环时有更有效的方法吗?这是我在网上找到的一个练习题,所以2个数组之后的东西就是我想出的。
let arr_1 = [3, 5, 22, 5, 7, 2, 45, 75, 89, 21, 2];
let arr_2 = [9, 2, 42, 55, 71, 22, 4, 5, 90, 25, 26];
let sum1 = 0;
let sum2 = 0;
for (let i = 0; i < arr_1.length; i++) {
sum1 += arr_1[i];
}
for (let j = 0; j < arr_2.length; j++) {
sum2 += arr_2[j];
}
let total = sum1 + sum2;
console.log(`${sum1} + ${sum2} = ${total}`);
解决方案
该reduce
函数允许您以非常简短的方式编写它:
const arr_1 = [3, 5, 22, 5, 7, 2, 45, 75, 89, 21, 2],
arr_2 = [9, 2, 42, 55, 71, 22, 4, 5, 90, 25, 26],
add = arr => arr.reduce((sum, n) => sum + n),
sum1 = add(arr_1),
sum2 = add(arr_2),
total = sum1 + sum2;
console.log(`${sum1} + ${sum2} = ${total}`);
推荐阅读
- reactjs - 在反应中为表单创建组件
- java - 在java中抛出异常重构
- java - 在 Java 中通过对象引用传递后的意外值
- java - 为什么我的玩家从平铺地图上掉下来?
- python - 如何在pygame上问20道选择题?
- android - 如何将 Android Studio 应用程序 .apk 从 API 级别 18 迁移到 API 级别 28?
- java - DRL 规则确保每位员工在一个月内不超过五次夜班
- android - 即使所有包名称相同,Flutter build apk 在启动时也会崩溃
- python - 存储函数的过去结果
- linux-kernel - 在 NixOS 中,如果新配置需要重建内核,旧配置是否仍然有效?