【问题标题】:How to use the reduce operation in javascript? [closed]如何在javascript中使用reduce操作? [关闭]
【发布时间】:2021-10-14 21:35:12
【问题描述】:

我目前正在尝试简化以下用 Javascript 编写的代码

let x = 5;
let y = 10;
let z = 19;
let answer;
arrays = ["x", "y", "z"]; 

if("x" in arrays){
      answer = x;           
}

if("x" in arrays && "y" in arrays){
    answer = x + y
}

对于 x、y 和 z 的所有可能组合,代码将继续进行。我想知道的是如何简化上面的代码块并达到相同的结果。 谢谢。

【问题讨论】:

  • 这里似乎没有问题。代码审查可能是一个更好的地方
  • 如果您可以分享此代码的目标,而不仅仅是您的尝试,那将会有所帮助。 xyz 是否必须是单独的变量? arrays 是否需要成为代码的一部分?

标签: javascript for-loop if-statement


【解决方案1】:

使用您的名称/值对创建一个对象,而不是单个变量。然后迭代数组中的名称,使用它们访问对象中的值并将它们添加在一起是微不足道的。事实上,这最自然地表达为reduce 操作:

let vals = {
    x: 5,
    y: 10,
    z: 19
};

let answer = ["x", "y", "z"].reduce((a, k) => a + vals[k], 0);

console.log(answer);

【讨论】:

    猜你喜欢
    • 2021-12-02
    • 2017-09-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多